linux下編譯android 版本的mupdf庫


下載兩個源碼,一個是主源碼,一個是mupdf-thirdparty.zip第三方的庫,然后在mupdf的根目錄make,生成generated目錄,然后進入android,運行ndk-build,即可編譯成功,我遇到一些問題:

當編譯全局的mupdf時,出現了

CC build/debug/x11_image.o
apps/x11_image.c:21:33: 致命錯誤: X11/extensions/XShm.h:沒有那個文件或目錄
編譯中斷。

這個問題,解決方法是安裝xorg-dev,sudo apt-get install xorg-dev。

 

當編譯android的mupdf庫時,出現

SharedLibrary : libmupdf.so
/home/zkw/developer/android-ndk-r8b/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/http://www.cnblogs.com/http://www.cnblogs.com/arm-linux-androideabi/bin/ld: ./obj/local/armeabi/libmupdfcore.a(pdf_fontfile.o)(.text.pdf_lookup_builtin_font+0x18): unresolvable R_ARM_THM_CALL relocation against symbol `strcmp'
/home/zkw/developer/android-ndk-r8b/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/bin/../lib/gcc/arm-linux-androideabi/4.6.x-google/http://www.cnblogs.com/http://www.cnblogs.com/arm-linux-androideabi/bin/ld: final link failed: Nonrepresentable section on output
collect2: ld returned 1 exit status

這是android-ndk的問題,我以前用7b的時候就沒問題,升級到8b就這樣了,網上找了半天,終於在一個IRC的log里面找到解決辦法,目測只限r8b版本的ndk,方法就是:把android-ndk-r8b/toolchains/arm-linux-androideabi-4.6/prebuilt/linux-x86/arm-linux-androideabi/bin/目錄下的ld文件改成ld.gold的符號鏈接。好蛋疼


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM