How to compile mupdf-qt

Compile on Linux

Install tools and thirdparty libraries

You should install some tools and thirdparty libraries. For Ubuntu users, you can use the following command(similar for other Linux users):

sudo apt-get install build-essential pkg-config cmake qtbase5-dev qt5-default libfreetype6-dev
Clone source code
git clone https://github.com/xiangxw/mupdf-qt.git //克隆该版本到本地
cd mupdf-qt   //进入该目录
git submodule update --init --recursive  //把mupdf和一些第三方库都给克隆下来 方便编译
Compile MuPDF Source
cd mupdf //首先进入该目录
make        //进行make
Compile mupdf-qt
cd ..
mkdir build
cd build
cmake .. //该步骤在mac下面可能会出现错误记得要设置cmake的CMAKE_PREFIX_PATH环境变量
//例如export CMAKE_PREFIX_PATH=/Users/username/Qt-SDK-ALL/Qt5.5/5.5/clang_64/
make 

Compile on Window with Visual Studio

Clone source code
git clone https://github.com/xiangxw/mupdf-qt.git
cd mupdf-qt
git submodule update --init --recursive
Compile MuPDF Source

Go to platforms/win32, open mupdf.sln and build.

Qt5

Install Qt5 and add path of qmake.exe to PATH

Compile mupdf-qt

Launch CMake(gui version), set source code directory and build directory. Configure and generate mupdf-qt.sln. Open mupdf-qt.sln and build it.

Compile on Window with MSYS MinGW

Clone source code
git clone https://github.com/xiangxw/mupdf-qt.git
cd mupdf-qt
git submodule update --init --recursive
Installing MSYS/MinGW

Install MSYS and MinGW (http://www.mingw.org/wiki/Getting_Started). Using the Graphical User Interface Installer, mingw-get-setup.exe, is recommended. During installation, “checking/ticking” the following in “Basic Setup” is recommended:

  1. mingw32-base
  2. mingw32-gcc-g++
  3. msys-base
  4. mingw-developer-toolkit

Add C:\MinGW\bin; to your PATH system variables (at the beginning).

Compile MuPDF source
cd mupdf-qt
make build=debug NOX11=yes

For release, just change “debug” to "release". NOX11 is necessary since X11 headers are not available in Windows. Note that this will not build the “app” packaged with the MuPDF source.

Compile mupdf-qt

Install CMake.

Open CMakeLists.txt with Qt Creator(Qt5 built with mingw), run cmake and build mupdf-qt

在windows编译mingw版本 需要特别注意

  • 必须按照文档的步骤进行git clone and update子项目
  • 需要保证mingw版本
  • 使用msys和mingw编译 可以下载Msys和MinGW
  • 设置MinGW的环境变量
  • 使用mingw安装包下面的msys目录下面的xx.bat启动命令行
  • 先编译mupdf源码
  • 安装CMAKE工具
  • 使用qtcreator打开mupdf-qt目录下面的cmakelists文件
  • 执行cmake
  • 在qtcreator下执行build

使用Mupdf-qt出错的话 可以参考 如下

INCLUDEPATH  += /home/bertero/mupdf-qt/include/
LIBS         += -L/home/bertero/mupdf-qt/build/lib -lmupdf-qt
LIBS         += -L/home/bertero/mupdf-qt/mupdf/build/debug/ -lmupdf  -ljpeg -lfreetype -lz -ljbig2dec -lcrypto -ldl -lmujs -lopenjpeg

http://www.heilqt.com/topic/56f25db1e498871267b374d4

Mac平台编译mupdf-qt的开源项目的更多相关文章

  1. SNF快速开发平台MVC-集成了百度开源项目echars

    百度开源项目echars图表样式非常丰富,而且开源免费.非常好.所以在我们框架当中也进行了集成echars完成图表任务. 我们进行了两次封装,利于我们开发使用.我也看到过有些架构师 按echars里的 ...

  2. 【转】GitHub平台最火的iOS开源项目——2013-08-25 17

    http://www.cnblogs.com/lhming/category/391396.html 今天,我们将介绍20个在GitHub上非常受开发者欢迎的iOS开源项目,你准备好了吗? 1. AF ...

  3. 在ubuntu16.04-32bits 下编译vlc和vlc-qt开源项目

      软件版本:  Ubuntu14.04 32位        Qt5.4.0  32位 开源项目: vlc2.2.4: wget http://download.videolan.org/pub/v ...

  4. Mac中编译安装Qt 4.4

    解压下载到的.gz源码:gunzip xxx.tar.gztar xvf xxx.tar, 其实在Mac中可以直接双击解压的.然后定位到解压后的目录下:./configuremakesudo make ...

  5. Mac平台Clion配置GLFW+GLAD的项目

    前期的准备工作详见LearnOpenGL CN 看这篇教程的前提是假设你已经编译好了GLFW文件夹以及下载好了GLAD,不会的话可以看我的另一篇 文章的前部分: 配置 Clion新建一个项目,CMak ...

  6. 我发起了一个 .Net Core 平台上的 分布式缓存 开源项目 ShareMemory 用于 取代 Redis

    Redis 的 安装 是 复杂 的, 使用 是 复杂 的, Redis 的 功能 是 重型 的, Redis 本身的 技术实现 是 复杂 的 . Redis 是用 C 写的, C 语言 编写的代码需要 ...

  7. Mac平台最好用的万能开源免费播放器-IINA

    1.安装 1)官网下载地址 https://iina.io/ 2)brew 方式安装 testdeMacBook-Pro:~ test$ brew cask install iina Updating ...

  8. SNF快速开发平台MVC-富文本控件集成了百度开源项目editor

    一.效果如下: 二.在框架当中调用代码如下: 1.在js里配置如下: <script type="text/javascript"> var viewModel =fu ...

  9. 关于Linux开源项目基础组件make编译流程

     关于Linux开源项目基础组件make编译流程 非常多Linux开源项目都会用到编译出可运行文件的make.这个是有一套流程的. 首先,GNU构建系统:https://en.wikipedia. ...

随机推荐

  1. Hibernate 配置详解(12) 其实我也不想用这么土的名字

    hibernate.hbm2ddl.import_files 这个配置用于在hibernate根据映射文件执行DDL之前,如果我们自己设置了要事先运行的SQL文件,hibernate就会先执行这些SQ ...

  2. hdu-Common Subsequence

    http://acm.hdu.edu.cn/showproblem.php?pid=1159 Problem Description A subsequence of a given sequence ...

  3. cocos2d-x Touch 事件应用的一个例子

    1效果图: 这个是<Cocos2d-X by Example Beginner's Guide>上的第一个例子,我稍微重构了下代码.是一个简单的IPad上的双人游戏,把球射入对方的球门就得 ...

  4. github中的ssh配置

    1.配置git信息 设置git的user name和email: $ git config --global user.name "tigerjibo"$ git config - ...

  5. cuda核函数再调用核函数,多层并行

    #include <stdio.h> __global__ void childKernel(int i) { int tid = blockIdx.x*blockDim.x+thread ...

  6. ios即时通讯客户端开发之-mac上基于XMPP的聊天客户端开发环境搭建

    1.搭建服务器  -  安装顺序 - (mysql->openfire->spark) 数据库:mysql 服务器管理工具: openfire 测试工具: spark mysql 安装 h ...

  7. 使用python抓取知乎日报的API数据

    使用 urllib2 抓取数据时,最简单的方法是: import urllib2, json def getStartImage(): stream = urllib2.urlopen('http:/ ...

  8. C++中 指针 与 引用 的区别

    四点区别:可否为空,可否修改,使用时是否需要判断,使用场景 非空区别. 引用必须指向某个对象,而指针可以指向空. 可修改区别. 引用总是与初始化时的那个对象绑定,不可变更:指针可以重新赋值,指向另外一 ...

  9. C++对象模型5--多继承下的对象模型

    C++对象模型中加入多继承 从单继承可以知道,派生类中只是扩充了基类的虚函数表.如果是多继承的话,又是如何扩充的? 1)        每个基类都有自己的虚表. 2)        子类的成员函数被放 ...

  10. HDU1171-Big Event in HDU

    描述: Nowadays, we all know that Computer College is the biggest department in HDU. But, maybe you don ...