Ubuntu16.04下編譯OpenCV2.4.13靜態庫(.a文件)
阿新 • • 發佈:2018-05-31
csdn ref TP img 參考 ews release -a build
[plain] view plain copy
Ubuntu16.04下編譯OpenCV2.4.13靜態庫(.a文件)
https://blog.csdn.net/woainishifu/article/details/79712110
我們在做項目的時候,經常用到的都是鏈接動態庫,在Linux平臺中就是.so文件,我的另外一篇文章介紹的就是如何生成動態庫,可以參看《ubuntu 16.04下安裝使用OpenCV2.4.13(動態庫.so)》。
但是有時候,我們仍然希望通過靜態調用的方式來使用OpenCV,這個時候就必須要生成可用的靜態庫文件了。其實方法也很簡單,和生成動態庫差不多,只是在編譯的時候做一些小修改即可。
整個的詳細編譯步驟可以參考我的那一篇文章,只需要將其中編譯部分的命令修改成下面這樣即可:
- cd opencv-2.4.13/
- mkdir static_release
- cd static_release/
- cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D BUILD_SHARED_LIBS=OFF -D BUILD_SHARED_LIBS=NO -D BUILD_PNG=ON -D BUILD_JASPER=ON -D BUILD_JPEG=ON -D BUILD_TIFF=ON -D BUILD_ZLIB=ON -D WITH_JPEG=ON -D WITH_PNG=ON -D WITH_JASPER=ON -D WITH_TIFF=ON ..
- sudo make install
能看到其中一個很明顯的改變就是“BUILD_SHARED_LIBS=NO”這個選項,代表了不編譯動態庫,而是編譯靜態庫。後面那些則是增加一些opencv所依賴的第三方庫,也要把他們一起生成才行。
然後在漫長的編譯結束後,就可以在文件夾/usr/local/lib/下面看到生成的一系列.a文件了。
Ubuntu16.04下編譯OpenCV2.4.13靜態庫(.a文件)