windows 編譯 libharu 我這個是手把手教你

1來源

老闆叫我學libharu.這是一個操作pdf的開源庫,用C語言編寫,一般用於C/C++的項目中。
(題外話:我搜解決方案的時候,最煩的是那種隨便寫的博客,寫的不清不楚,往往照着操作了一遍之後,很多問題沒解決,然後又是重新下載,重新清理環境,一切都重新弄,就很煩,但是我寫的這篇博客,一定可以解決你編譯ibharu的問題。我只做了靜態鏈接庫。記住了。我試了動態鏈接庫的時候有些問題,沒解決掉,目前靜態鏈接庫已經沒問題了。)

2提前準備

2.1下載

當然是下載開源庫的源代碼,一般要下載三個庫的。分別是 libharu libpng zlib
因爲libharu依賴libpng和zlib,libpng依賴zlib.
他們的網址分別是:
libharu http://libharu.org/
libpng http://www.libpng.org/pub/png/libpng.html
zlib http://www.zlib.net/
我也是不怎麼願意看這些英文網站的,上去最多看看介紹,然後直接找Download.哈哈哈。下載的時候,有時候回下載失敗,再者就是下載的速度也不快,有時連官網都要打開好幾次才能打開。。。不得不說,是真的慢。這些庫可能也沒什麼錢去擴大寬帶啥的。
如果你不知道下載什麼,我截了幾個圖:
zlib
在這裏插入圖片描述

libpng
在這裏插入圖片描述

libharu
在這裏插入圖片描述

2.2下載完之後

下載完之後,是這樣的。打紅色箭頭的地方可以拖動,你鼠標放上去看看就好了。(主要是爲了讓文件名長的可以顯示完全。)
在這裏插入圖片描述

3開始編譯 libpng

本來我們是要先編譯zlib,然後編譯libpng的,但是下載的libpng裏面自帶由編譯zlib的代碼,那我們下的zlib有啥用,有用的!慢慢看。

3.1解壓 重命名

如圖:
在這裏插入圖片描述

我只是把zlib的名字改了。原來的名字後面還有版本號。這裏一定要改。因爲我在這裏後面的時候打算採用libpng一次性編譯兩個開源庫的方式來做,而在libpng裏面雖然有編譯zlib的代碼,但是沒有zlib的源碼,因此需要我們把zlib的源碼提供給libpng,並且,zlib的路徑要和libpng的路勁一樣。這樣就可以似的libpng裏面的編譯程序可以找得到zlib的源碼了。這個問題我可是卡了好久的!大家可能聽起來輕鬆,但是編譯的時候,能夠採用這個簡便方法也是既快有方便。(如果想知道我是怎麼發現的,其實很簡單,自己慢慢研究下載下來的文件,把裏面的readme啥的多看幾遍,就可以發現了!)
然後用vs打開:.sln文件
(路徑看下圖。)
在這裏插入圖片描述

打開的時候會需要升級,因爲這是以前的舊項目了。就給他升級就好了,會有幾個warning,但是不影響使用。你可能會問,那projects裏面的visualio裏面的項目不是更新嗎?爲什麼我不用。因爲那裏面比較複雜,我試了幾次沒成功。哈哈哈哈哈。
在這裏插入圖片描述

3.2開始編譯

改配置!!
改他兩的配置,中間那個不用管。
先改i這裏,改成LIB Release.
在這裏插入圖片描述
在這裏插入圖片描述
默認的是dll
在這裏插入圖片描述

改成lib
在這裏插入圖片描述
然後點擊libpng的重新生成。就可以了。
在這裏插入圖片描述

3.3生成之後的結果

在這裏插入圖片描述
在這裏插入圖片描述

在這裏插入圖片描述

好了,現在生成已經結束了。我們把需要用的東西打包出來,剩下的就不用了。
我們需要吧.h文件和剛纔生成的.lib文件打包出來。
因爲zib和libpng兩個開源庫裏面的.h文件存的很亂。
採用這個方法可以快速找到,h文件。
在這裏插入圖片描述
在這裏插入圖片描述

接着,建立文件夾存儲打包出來的信息,請你按照我的命名和文件夾的父子關係來做。因爲後面編譯libharu需要用到這些信息。當然等你弄懂了libharu編譯文件的內容,這些命名就是按照你的意願來改了。
在這裏插入圖片描述

4編譯libharu

4.1找到Makefile.msvc文件並修改。

在這裏插入圖片描述

4.2還有這裏需要改成我這樣子的。

在這裏插入圖片描述

4.3把libpng.lib zlib.lib兩個文件拷貝到這裏:

在這裏插入圖片描述

4.4 最後

接下來就是進入libharu的文件夾,然後用Visual Studio的命令行。執行這個命令:
nmake script/Makefile.msvc.
然後就等着編譯完就好了。編譯完之後,會在libharu的文件夾下面生成libhpdf.lib.這就是生成的靜態鏈接庫。
你可能會遇到以下的問題,
1.rc 不認識 namke不認識。
解決方案
2.更多的問題:
這個鏈接最後有一些解決方案。
3.如果你不知道vs的命令行怎麼打開這些問題的話,那就需要自己上網搜了,基本操作。
可能會對你有些幫助。

That is all !

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章