我只是下載poppler到Linux系統,我想將它合併到我的應用程序來解析pdf文件。
(我的目標是PDF文件轉換爲純文本。)
我怎樣才能做到這一點?如何從源代碼構建libpoppler?
回答
Their website解釋得很清楚:
poppler的可從飯桶。克隆庫使用以下命令:
git clone git://git.freedesktop.org/git/poppler/poppler
一旦你下載的源代碼,請閱讀INSTALL
文件,它說:
cd
中包含的包的源目錄代碼並輸入./configure
爲您的系統配置軟件包。輸入`使」來編譯軟件包。
輸入`make install」來安裝程序和任何數據文件和 文檔。
他們的'INSTALL'文件是默認的自動生成指令,它實際上並不適用於poppler。他們的git樹不包括autoconf輸出(包括'configure'),只有autoconf/automake的輸入,還有cmake。我仍然試圖弄清楚哪個命令可以運行。通常的'./configure && make -j4 && sudo make install'可能適用於它們的tarball版本,但不適用於git。 – 2015-06-16 23:44:35
poppler的的git的樹包括一個無用的INSTALL
文檔,只是告訴你運行./configure
,但他們並不在Git中包括的automake/autoconf的自動生成的文件(包括配置)。 (也許他們包括他們在壓縮包源的版本。)
我剛建的混帳源(在Ubuntu 15.04)poppler的,像這樣:
git clone --depth 50 --no-single-branch git://git.freedesktop.org/git/poppler/poppler
cmake -G 'Unix Makefiles' # other -G options are to generate project files for various IDEs
# look at the output. If it didn't find some libraries,
# install them with your package manager and re-run cmake
make -j4
# optionally:
sudo make install
看來他們保持了autoconf/automake的構建設置,所以你可以使用該或cmake創建一個Makefile
。
如果你只是想看看最新的git poppler是否比distro包更好,你不需要sudo make install
,你可以運行utils/pdftotext
或源碼目錄中的任何權限。它顯然告知鏈接嵌入構建路徑轉換爲二進制,作爲一個庫搜索路徑,因此運行/usr/local/src/poppler/utils/pdftotext
作品,發現/usr/local/src/poppler/libpoppler.so.52
。
如果最新的poppler的工作確實較發行版包裝poppler的更好,你應該把它與sudo make install
安裝到/usr/local/bin
。當您升級到發行版的下一個版本時,請檢查您的/ usr/local。新的發行版本通常比從源代碼創建時更新,所以您應該從/usr/local/{bin,share,lib,man,include}
中刪除您的版本。 (如果支持,則在源目錄中爲make uninstall
)。
謝謝。我意識到這是舊的,但接受的答案是不是真的有用,因爲INSTALL信息是不正確的,cmake確實需要你寫。仍然在依賴工作,但這讓我走了;我是cmake新手,所以我需要一個推動。 – Linwood 2017-01-21 18:08:02
- 1. 如何從midas源代碼構建midas.obj
- 2. 如何從源代碼構建Windows D3D9?
- 3. 如何從源代碼構建libpthread.so?
- 4. 如何從源代碼構建Mojarra
- 5. 如何從源代碼構建KDE Dolphin?
- 6. 如何從源代碼構建?
- 7. 如何從源代碼構建vim 7.3.285
- 8. 如何從源代碼構建d3.js?
- 9. 如何從源代碼構建CodeCompileUnit?
- 10. 如何從源代碼構建three.js
- 11. 從源代碼構建Primefaces
- 12. 從源代碼構建Autofac
- 13. 從android源代碼構建
- 14. 從源代碼構建tmux
- 15. 從源代碼構建gperf
- 16. 從源代碼構建dictool_aosp.jar
- 17. 從源代碼構建proguard
- 18. 從源代碼構建WysiHat?
- 19. 從源代碼構建KVM
- 20. 如何從源代碼構建VS代碼後進行調試?
- 21. 如何構建tizen源代碼?
- 22. 如何部分構建Android源代碼?
- 23. 如何構建C++源代碼的「庫」?
- 24. 如何從jar文件中執行Netbeans(從源代碼構建)
- 25. 從源代碼構建hibernate-orm掛起
- 26. 從源代碼構建asp.net mvc
- 27. 從源代碼構建達爾文16.6?
- 28. 從源代碼構建Android系統
- 29. 從源代碼構建Android Eclipse ADT
- 30. 從源代碼構建R包krb5
那你試試?你下載了什麼樣的「poppler」?您是否閱讀過發佈和安裝通知? – 2012-01-17 06:02:28
其實我需要的是「pdftotext」 – zxi 2012-01-17 06:07:16
'容易緩存搜索pdftotext'建議對我的Debian系統上安裝了'poppler的-utils'包。但是,你不*將它整合到你的應用程序中。恕我直言,*在你的軟件中加入一個庫意味着調用這個庫,並與它聯繫起來。 – 2012-01-17 06:13:35