亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

交叉編譯libpng以及zlib開源庫

2019-11-10 18:10:40
字體:
來源:轉載
供稿:網友

關于linux開源庫的編譯過程,特別是在嵌入式系統中使用; 這里寫圖片描述 上圖完美詮釋了我本次編譯的環境和運行目標; 下載zlib-1.2.8.tar.gz和libpng-1.6.17.tar.gz。

admin@Ubuntu:~/src$ tar -zxvf libpng-1.6.17.tar.gzadmin@ubuntu:~/src/libpng-1.6.17$ ./configurechecking for a BSD-compatible install... /usr/bin/install -cchecking whether build environment is sane... yeschecking for a thread-safe mkdir -p... /bin/mkdir -pchecking for gawk... no......checking for zlibVersion in -lz... nochecking for z_zlibVersion in -lz... noconfigure: error: zlib not installedadmin@ubuntu:~/src/libpng-1.6.17$

發現配置libpng-1.6.17出現了錯誤,找不到zlib。 因為libpng開源庫的編譯需要zlib庫的支持; 所以下載了zlib-1.2.8.tar.gz; 編譯zlib庫 zlib編譯的過程比較簡單,./configure不傳入參數,作者的初衷就是為了使zlib的編譯配置過程更為簡單; 這里使用gcc編譯時特別順利,但是使用嵌入式平臺的交叉編譯工具鏈(arm-none-linux-gnueabi-g++)編譯時出現了大量錯誤; 因為zlib-1.2.8.tar.gz使用了部分不完全符合通用的語法,交叉編譯工具無法識別,比如:

/* ========================================================================= */int ZEXPORT deflateInit_(strm, level, version, stream_size) z_streamp strm; int level; const char *version; int stream_size;{ return deflateInit2_(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, version, stream_size); /* To do: ignore strm->next_in if we use it as window */}/* ========================================================================= */

需要重新更改為:

/* ========================================================================= */int ZEXPORT deflateInit_(//strm, level, version, stream_size) z_streamp strm, int level, const char *version, int stream_size){ return deflateInit2_(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY, version, stream_size); /* To do: ignore strm->next_in if we use it as window */}/* ========================================================================= */

終于還是編譯過了;

admin@ubuntu:~/src/zlib-1.2.8$ export CC=arm-none-linux-gnueabi-c++ admin@ubuntu:~/src/zlib-1.2.8$ ./configureadmin@ubuntu:~/src/zlib-1.2.8$ make cleanadmin@ubuntu:~/src/zlib-1.2.8$ make

編譯完成得到libz.a庫。

下面可以編譯libpng-1.6.17而得到libpng.a和libpng.so;

admin@ubuntu:~/src/libpng-1.6.17$ export LDFLAGS="-L/home/admin/src/zlib-1.2.8"admin@ubuntu:~/src/libpng-1.6.17$ export CPPFLAGS="-I/home/admin/src/zlib-1.2.8"admin@ubuntu:~/src/libpng-1.6.17$ ./configure CC=arm-none-linux-gnueabi-g++ --PRefix=$PWD/_install --host=arm-linuxadmin@ubuntu:~/src/libpng-1.6.17$ make && make install

–prefix=配置編譯輸出的結果存放的目錄,得到的是:

admin@ubuntu:~/src/libpng-1.6.17$ cd _install/admin@ubuntu:~/src/libpng-1.6.17/_install$ lsbin include lib shareadmin@ubuntu:~/src/libpng-1.6.17/_install$ ls liblibpng16.a libpng16.la libpng16.so libpng16.so.16 libpng16.so.16.17.0 libpng.a libpng.la libpng.so pkgconfigadmin@ubuntu:~/src/libpng-1.6.17/_install$ admin@ubuntu:~/src/libpng-1.6.17/_install$ ls include/libpng16/pngconf.h png.h pnglibconf.h

這里中間有個小細節要關注一下,就是libpng庫跟zlib庫有點小小不同的地方,zlib庫編譯的時候直接make命令就可以編譯出libz.a和libz.so到當前目錄,但是如果只使用make命令編譯libpng庫,在當前目錄無法找到libpng.a和libpng.so;還是需要遵循文檔說明使用make和make install命令:

admin@ubuntu:~/src/libpng-1.6.17$ make && make install

zlib-1.2.8.tar.gz和libpng-1.6.17.tar.gz 文件下載: http://download.csdn.net/detail/dreamintheworld/9750360 或者直接官網下載: http://www.zlib.net/ http://www.libpng.org/pub/png/libpng.html


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美精品成人91久久久久久久| 久久国内精品一国内精品| 91色视频在线观看| 国产福利精品av综合导导航| 国内精品久久久久久| 国产精品视频一区国模私拍| 国产一区二区三区视频免费| 亚洲香蕉在线观看| 国产日韩欧美影视| 日韩av在线播放资源| 庆余年2免费日韩剧观看大牛| 成人国产精品久久久| 久久久国产91| 91久久精品国产91久久性色| 国产在线观看91精品一区| 亚洲一区二区三区成人在线视频精品| 成人在线小视频| 成人激情黄色网| 成人黄色生活片| 久久五月天综合| 午夜欧美不卡精品aaaaa| 九九热精品视频国产| 黄色成人在线免费| 日韩av最新在线观看| 亚洲成人999| 欧美性20hd另类| 国产激情综合五月久久| 日韩精品一区二区视频| 日韩av一卡二卡| 亚洲自拍偷拍在线| 欧美理论电影在线观看| 亚洲精品视频免费在线观看| 日韩极品精品视频免费观看| 日韩av在线网址| 97在线免费观看视频| 96pao国产成视频永久免费| 综合国产在线观看| 亚洲综合大片69999| 亚洲丝袜一区在线| 精品香蕉一区二区三区| 91欧美精品午夜性色福利在线| 中文字幕久久精品| 久久久精品久久久| 亚洲男人天堂网| 91在线视频成人| 国产精品一区二区电影| 97精品国产97久久久久久免费| 久久av中文字幕| 国产成人福利夜色影视| 日韩在线精品视频| 欧美激情在线观看视频| 欧美日韩在线看| 粉嫩av一区二区三区免费野| 亚洲性日韩精品一区二区| 亚洲国产成人精品久久久国产成人一区| 久久国产精品偷| 日韩在线视频免费观看| 国产成人鲁鲁免费视频a| 国产99久久精品一区二区永久免费| 欧美激情在线播放| 欧美高清理论片| 国产精品ⅴa在线观看h| 欧美性猛交xxxx乱大交极品| 欧洲一区二区视频| 欧美激情区在线播放| 久久久噜噜噜久久久| 久久中文精品视频| 成人中文字幕+乱码+中文字幕| 国产精品一区二区三区成人| 国产日韩欧美影视| 成人午夜小视频| 久久伊人免费视频| 精品欧美国产一区二区三区| 中文字幕精品www乱入免费视频| 国产一区二区三区在线观看视频| 91精品免费视频| 亚洲国产高潮在线观看| 在线精品91av| 国产精品久久久久久久久久免费| 色婷婷久久av| 日韩激情在线视频| 日韩大片在线观看视频| 精品久久久国产精品999| 国产日韩精品视频| 日韩av在线最新| 夜夜躁日日躁狠狠久久88av| 欧美电影免费播放| 日韩电影在线观看永久视频免费网站| 黑人巨大精品欧美一区二区| 欧美综合在线观看| 欧美国产视频日韩| 国产精品久久久久久一区二区| 国产精品久久久久7777婷婷| 欧美极品少妇全裸体| 成人国产精品av| 中文字幕日韩欧美在线视频| 欧美日韩国产一区中文午夜| 国产日韩中文在线| 亚洲激情在线观看视频免费| 欧美日韩免费在线观看| 欧洲成人性视频| 精品中文字幕久久久久久| 91精品在线一区| 在线一区二区日韩| 亚洲一区二区三| 成人福利视频网| 国产精品高潮呻吟视频| 精品国产乱码久久久久久婷婷| 精品少妇一区二区30p| 91久久精品在线| 欧美韩国理论所午夜片917电影| 日本精品一区二区三区在线| 亚洲一级免费视频| 国产精品成人av在线| 欧美性xxxxhd| 欧美刺激性大交免费视频| 91精品国产综合久久香蕉| 欧美专区在线播放| 日韩在线观看你懂的| 91免费视频网站| 亚洲第一福利网| 亚洲精品国偷自产在线99热| 中文字幕日韩免费视频| 成人综合网网址| 国产精品aaaa| 欧美日韩综合视频网址| 国产成人精品亚洲精品| 久久久久久久国产| 精品亚洲国产成av人片传媒| 欧美激情成人在线视频| 欧美疯狂xxxx大交乱88av| 欧美肥臀大乳一区二区免费视频| 91精品久久久久久久久久久久久| 97在线视频免费观看| 日本免费在线精品| 欧美巨乳美女视频| 日韩电影大全免费观看2023年上| 日韩最新在线视频| 亚洲精品电影网| 韩国精品美女www爽爽爽视频| 亚洲精品欧美极品| 在线观看日韩www视频免费| 亚洲第一偷拍网| 欧美激情在线一区| 尤物99国产成人精品视频| 国产精品成人av性教育| 美日韩精品免费视频| 成人免费淫片视频软件| 久久999免费视频| 97精品国产97久久久久久| 国产精品高潮在线| 日本乱人伦a精品| 国产一区玩具在线观看| 色999日韩欧美国产| 久久久影视精品| 久久全球大尺度高清视频| 韩国v欧美v日本v亚洲| 亚洲国产又黄又爽女人高潮的| 国产精品久久久久久av福利| 亚洲精品电影网站| 久久天天躁日日躁| 91国产一区在线| 国产精品一区二区三| 性欧美办公室18xxxxhd|