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. php知识点集合

    ---------------------------------------------------------           PHP知识大全 ------------------------ ...

  2. flume 自己定义 hbase sink 类

    參考(向原作者致敬) http://ydt619.blog.51cto.com/316163/1230586 https://blogs.apache.org/flume/entry/streamin ...

  3. 如何用cocoapods 来管理项目中的第三方框架?

     一.安装 1.如果以前安装过,升级到10.10后工作不正常,可以先删除cocoapods $ sudo gem uninstall cocoapods ----------------------- ...

  4. 初识EF

    1. EF是Entity Framework的缩写,全称是(ADO.Net Entity Framework),是以ADO.Net为基础所发展出来的对象关系对应(O/R Mapping)解决方案,早起 ...

  5. Problem A Where is the Marble?(查找排序)

    题目链接:Problem A 题意:有n块大理石,每个大理石上写着一个非负数,首先把数从小到大排序,接下来有Q个问题,每个问题是是否有某个大理石上写着x,如果有,则输出对应的大理石编号. 思路:先排序 ...

  6. Hadoop MultipleOutputs 结果输出到多个文件夹 出现数据不全,部分文件为空

    如题:出现下图中的情况(设置reduceNum=5) 感觉很奇怪,排除了很久,终于发现是一个第二次犯的错误:丢了这句 this.mOutputs.close(); 加上这句,一切恢复正常!

  7. iphone手机上的click和touch

    在iphone手机上绑定click事件时,当你触发点击事件时,你绑定的click事件的DOM节点,会自动被一块浮层选中.所以如果使用事件委托来做事件绑定会造成很差的用户体验. 使用touchstart ...

  8. PowerPoint2003/2007幻灯片常用快捷键大全

    熟习掌握PowerPoint快捷键不仅可以对我们在制作幻灯片的时候更加熟练节省时间.而且在我们演示PPT文稿的时候,也不需要停下演讲去调试菜单工具来切换下一张,我们只需要轻轻的按一下键盘即可轻松切换P ...

  9. IPTABLES 映射问题

    今天要做一个新的映射:将内网的一个8090口映射到外网的8087口. 在 /ETC/RC.LOCAL中最后插入: iptables -t nat -A PREROUTING -d outIP -p t ...

  10. HDOJ 1226 超级密码(bfs)

    题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1226 思路分析:题目要求寻找一串长度不大于500的C进制的密码,且该密码需要为十进制数N的整数倍. & ...