結構:
下載:各庫的下載可以直接按名稱搜索,在官網下載。
幾個關鍵的解釋:
"-prefix = "後跟make install時的位置。在這種情況下,在make install時,libz將安裝在/usr/arm-linux-gnueabihf中。
"-host = "後跟ARM-linux表示使用ARM環境。
只有configure可以配置。
4)所有的makefile修改都是相似的。
Libz的交叉編譯
第壹步:#。/configure-prefix =/usr/arm-Linux-gnueabihf-shared
第二步:修改makefile,主要包括以下幾項。修改的時候,通篇參考。
CC=arm-linux-gnueabihf-gcc
AR=arm-linux-gnueabihf-ar rc
ran lib = arm-Linux-gnueabihf-ran lib
STRIP = arm-Linux-gnueabihf-STRIP
如果有ARCH,ARCH=ARM。
第三步:#sudo make
#sudo make安裝
Libjpeg的交叉編譯
第壹步:#。/configure-host = arm-Linux-prefix =/usr/arm-Linux-GNUEABIHF-enable-shared-enable-static CC = arm-Linux-GNUEABIHF-GCC。
第二步:參考1)中的方法修改makefile。
第三步:#sudo make
#sudo make安裝
Libpng的交叉編譯
第壹步:#。/configure-host = arm-Linux-prefix =/usr/arm-Linux-GNUEABIHF-enable-shared-enable-static CC = arm-Linux-GNUEABIHF-GCC。
第二步:參考1)中的方法修改makefile。
第三步:#sudo make
#sudo make安裝
Yasm的交叉編譯
第壹步:#。/configure-host = arm-Linux-prefix =/usr/arm-Linux-gnueabihf-enable-shared-enable-static。
步驟2:修改makefile
第三步:#sudo make
#sudo make安裝
Libx264的交叉編譯
第壹步:# cc = arm-Linux-GNUEABIHF-GCC。/configure-enable-shared-host = arm-Linux-disable-ASM-prefix =/usr/arm-Linux-GNUEABIHF。
第二步:修改config.mak中的參數,因為makefile調用config.mak,所以修改方法和makefile壹樣。
第三步:#sudo make
#sudo make安裝
Libxvid的交叉編譯
步驟1:首先切換目錄#cd build/generic。
第二步:#。/configure-prefix =/usr/arm-Linux-gnueabihf-host = arm-Linux-disable-assembly。
第三步:#sudo make
#sudo make安裝
ffmpeg的交叉編譯
第壹步:
。/configure-enable-cross-compile-target-OS = Linux-cc = arm-Linux-gnueabihf-gcc-arch = arm-enable-shared-disable-static-enable-GPL-enable-nonfr ee-enable-ffmpeg-disable-ff play-enable-ff server-enable-swscale-enable-pthreads-disable-disable-stripping-enable-libx 264-enable-L ibx vid-extra-cflags =-I/usr/arm-Linux-gnueabihf/include
步驟2:修改makefile文件
第三步:#sudo make
#sudo make安裝
步驟4:將ffmpeg添加到pkg-config中。
執行#sudo gedit /etc/bash.bashrc並在末尾添加。
導出LD _ LIBRARY _ PATH =/usr/arm-Linux-gnueabihf/lib/
導出PKG配置路徑=$PKG配置路徑:/usr/arm-Linux-gnueabihf/lib/pkg CONFIG
導出PKG配置庫目錄=$PKG配置庫目錄:/usr/arm-linux-gnueabihf /lib/
完成後,使用命令:# #source /etc/bash.bashrc
或者單獨使用三個出口,但是使用壽命只在壹個端子,端子關閉就失效了。
幾個關鍵解釋:- extra-flags指向xvid ID的安裝路徑,- extra-ldflags指向x264的路徑。
安裝cmake-gui
執行:# sudo apt-get install cmake-Qt-GUI
Opencv的交叉編譯
第壹步:修改opencv/platform rms/Linux/目錄下的arm-gnueabi.toolchain.cmake,全部刪除,寫入:
set( CMAKE_SYSTEM_NAME Linux)
set( CMAKE_SYSTEM_PROCESSOR arm)
set(CMAKE _ C _ COMPILER arm-Linux-gnueabihf-gcc)
set(CMAKE _ CXX _ COMPILER arm-Linux-gnueabihf-g++)
第二步:在opencv目錄下新建壹個構建目錄,進入構建目錄,執行命令:
#cmake -DCMAKE_TOOLCHAIN_FILE=../platforms/Linux/arm-gnueabi . tool chain . cmake../
這時,要保證出現:
第三步:用cmake-gui打開CMakeCache.txt,去掉所有無關項,修改CMAKE_INSTALL_PREFIX,確定make install的目錄。
第四步:#sudo make
#sudo make安裝
可能的錯誤:
Opencv編譯失敗,出現skip,說明ffmpeg編譯不好,或者編譯好了,但是pkg-config設置不好,所以必須設置好它的環境。
如果您沒有通過前幾個步驟,請查看是否有更少的訂單或者您是否修改了makefile。
在arm上使用時,壹種方法是將opencv目錄下編譯好的lib文件直接復制到開發板對應的/lib目錄下,其他的可以通過復制到自己指定的目錄下,設置環境變量來使用。