Android mupdf在Ubuntu下的编译教程(最详细的教程)

2024-05-04 17:48

本文主要是介绍Android mupdf在Ubuntu下的编译教程(最详细的教程),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

            mupdf是一个国外的打开pdf的开源框架,就不多做介绍了,直接入正题。

            一、Ubuntu的安装(网上很多教程)

            二、Ubuntu下安装ndk环境(网上很多教程)

            三、mupdf的源码获取方式:

                    1.MuPdf官网下载,地址: https://mupdf.com/downloads/archive/,选择一个你需要的地址下载,我这里下载的是:mupdf-1.6-source.tar.gz

                    2.github源码下载,自己安装Git工具。mupdf的github地址为:https://github.com/muennich/mupdf
          

           四、源码编译:

                   1.把下载的mupdf源码放到桌面:

                    

                   2.使用make generate命令。

                      使用命令之前:

                       

                        3.编译:

                          dzh@ubuntu:~$ cd /home/dzh/Desktop/mupdf-1.6-source
                          dzh@ubuntu:~/Desktop/mupdf-1.6-source$ make generate
                           Package x11 was not found in the pkg-config search path.
                          Perhaps you should add the directory containing `x11.pc'
                          to the PKG_CONFIG_PATH environment variable
                         No package 'x11' found
                          Package xext was not found in the pkg-config search path.
                         Perhaps you should add the directory containing `xext.pc'
                         to the PKG_CONFIG_PATH environment variable
                         No package 'xext' found
                         Package x11 was not found in the pkg-config search path.
                         Perhaps you should add the directory containing `x11.pc'
                         to the PKG_CONFIG_PATH environment variable
                         No package 'x11' found
                         Package xext was not found in the pkg-config search path.
                         Perhaps you should add the directory containing `xext.pc'
                         to the PKG_CONFIG_PATH environment variable
                          No package 'xext' found
                          MKDIR build/debug
                          CC build/debug/cmapdump.o
                          LINK build/debug/cmapdump
                          MKDIR generated
                         GEN generated/gen_cmap_cns.h
                         GEN generated/gen_cmap_gb.h
                         GEN generated/gen_cmap_japan.h
                         GEN generated/gen_cmap_korea.h
                         CC build/debug/fontdump.o
                         LINK build/debug/fontdump
                        GEN generated/gen_font_base14.h
                        GEN generated/gen_font_droid.h
                        GEN generated/gen_font_cjk.h
                        GEN generated/gen_font_cjk_full.h
                        CC build/debug/cquote.o
                        LINK build/debug/cquote
                       GEN generated/gen_js_util.h
                       CC build/debug/bin2hex.o
                       LINK build/debug/bin2hex
                       GEN generated/gen_adobe_ca.h
                       dzh@ubuntu:~/Desktop/mupdf-1.6-source$ 

                       出现这样的信息,代表生成完毕,再查看文件目录发现多了东西:

                       

                       4.修改/home/dzh/Desktop/mupdf-1.6-source/platform/android里面local.properties文件。

                           添加:ndk.dir=/home/dzh/Downloads/android-ndk-r12b

                      添加之后的文件如下:

                        # Uncomment and edit the appropriate line below.
                        # Resave this file as local.properties.


                        # For MacOS/Linux you want a line such as:
                        #sdk.dir=/Library/android-sdk-mac_x86


                       # For Windows/Cygwin you want something like the following:
                      #sdk.dir=C:\\Program Files (x86)\\Android\\android-sdk
                      ndk.dir=/home/dzh/Downloads/android-ndk-r12b

                      5.检查配置,配置成功后执行:ndk-buid

                      看到如图的结果代表编译成功。

                       

                     之后检查文件夹,发现多了一个so文件:

                     

                          

                         到这里,mupdf的ubuntu下的编译就结束了,欢迎大家指教。


这篇关于Android mupdf在Ubuntu下的编译教程(最详细的教程)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/959762

相关文章

SpringBoot集成redisson实现延时队列教程

《SpringBoot集成redisson实现延时队列教程》文章介绍了使用Redisson实现延迟队列的完整步骤,包括依赖导入、Redis配置、工具类封装、业务枚举定义、执行器实现、Bean创建、消费... 目录1、先给项目导入Redisson依赖2、配置redis3、创建 RedissonConfig 配

线上Java OOM问题定位与解决方案超详细解析

《线上JavaOOM问题定位与解决方案超详细解析》OOM是JVM抛出的错误,表示内存分配失败,:本文主要介绍线上JavaOOM问题定位与解决方案的相关资料,文中通过代码介绍的非常详细,需要的朋... 目录一、OOM问题核心认知1.1 OOM定义与技术定位1.2 OOM常见类型及技术特征二、OOM问题定位工具

基于 Cursor 开发 Spring Boot 项目详细攻略

《基于Cursor开发SpringBoot项目详细攻略》Cursor是集成GPT4、Claude3.5等LLM的VSCode类AI编程工具,支持SpringBoot项目开发全流程,涵盖环境配... 目录cursor是什么?基于 Cursor 开发 Spring Boot 项目完整指南1. 环境准备2. 创建

Python与MySQL实现数据库实时同步的详细步骤

《Python与MySQL实现数据库实时同步的详细步骤》在日常开发中,数据同步是一项常见的需求,本篇文章将使用Python和MySQL来实现数据库实时同步,我们将围绕数据变更捕获、数据处理和数据写入这... 目录前言摘要概述:数据同步方案1. 基本思路2. mysql Binlog 简介实现步骤与代码示例1

Ubuntu如何升级Python版本

《Ubuntu如何升级Python版本》Ubuntu22.04Docker中,安装Python3.11后,使用update-alternatives设置为默认版本,最后用python3-V验证... 目China编程录问题描述前提环境解决方法总结问题描述Ubuntu22.04系统自带python3.10,想升级

基于C#实现PDF转图片的详细教程

《基于C#实现PDF转图片的详细教程》在数字化办公场景中,PDF文件的可视化处理需求日益增长,本文将围绕Spire.PDFfor.NET这一工具,详解如何通过C#将PDF转换为JPG、PNG等主流图片... 目录引言一、组件部署二、快速入门:PDF 转图片的核心 C# 代码三、分辨率设置 - 清晰度的决定因

Java中HashMap的用法详细介绍

《Java中HashMap的用法详细介绍》JavaHashMap是一种高效的数据结构,用于存储键值对,它是基于哈希表实现的,提供快速的插入、删除和查找操作,:本文主要介绍Java中HashMap... 目录一.HashMap1.基本概念2.底层数据结构:3.HashCode和equals方法为什么重写Has

Android协程高级用法大全

《Android协程高级用法大全》这篇文章给大家介绍Android协程高级用法大全,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友跟随小编一起学习吧... 目录1️⃣ 协程作用域(CoroutineScope)与生命周期绑定Activity/Fragment 中手

Java Scanner类解析与实战教程

《JavaScanner类解析与实战教程》JavaScanner类(java.util包)是文本输入解析工具,支持基本类型和字符串读取,基于Readable接口与正则分隔符实现,适用于控制台、文件输... 目录一、核心设计与工作原理1.底层依赖2.解析机制A.核心逻辑基于分隔符(delimiter)和模式匹

Java使用正则提取字符串中的内容的详细步骤

《Java使用正则提取字符串中的内容的详细步骤》:本文主要介绍Java中使用正则表达式提取字符串内容的方法,通过Pattern和Matcher类实现,涵盖编译正则、查找匹配、分组捕获、数字与邮箱提... 目录1. 基础流程2. 关键方法说明3. 常见场景示例场景1:提取所有数字场景2:提取邮箱地址4. 高级