opencv 2.2.0的移植方法:
按照文章:「opencv在arm上的移植 - emouse - 」給出的步驟方法進行
修改的地方:
1、原指定交叉編譯器為arm的都改為mipsel,交叉編譯器的路徑也為redhat虛擬機器中的實際路徑/usr/local/mips-linux-gcc/gcc-3.4.6-2f;
2、在/opt/opencv/opencv-mips資料夾裡(這個資料夾裡存放的是用cmake-gui對opencv-2.2.0進行設定編譯之後產生的檔案),修改cmakecache.txt檔案第80行,將cmake_exe_linker_flags:string=' '改為:cmake_exe_linker_flags:string=-lrt (不是文章裡說的173行新增:-lpthread -lrt)。
3、設定完cmake-gui之後,用make命令編譯opencv-2.2.0的時候產生了:opencv-2.2.0/modules/ml/src/gbt.cpp中'expl'未定義的錯誤,將此檔案第14行和第16行注釋掉,就不再報錯了;
4、make install之後產生的檔案在/usr/local/mips-linux-gcc資料夾裡。
//5、將/usr/local/mips-linux-gcc資料夾裡的檔案轉移到/usr/local/opencv-mips-2.20中。
6、解除安裝時用終端進入到/opt/opencv/opencv-mips目錄裡,然後輸入:make install。
opencv 1.0.0的移植方法:
1、將原始碼opencv-1.0.0.tar-for-linux.gz放在虛擬機器/opt/opencv資料夾裡;
2、從終端中輸入tar zxvf opencv-1.0.0.tar-for-linux.gz解壓到本資料夾中,生成目錄opencv-1.0.0;
4、執行完configure之後入無錯誤則繼續在終端中輸入make,進行編譯;這時會有錯誤產生:impossible constraint in 'asm',開啟../opencv-1.0.0/otherlibs/highgui資料夾裡的makefile檔案,將155行:-i/usr/include用#注釋掉,將266行:/usr/include用#注釋掉;再次make,應該無錯誤產生;
5、make install之後生成的檔案放到了第3步指定的資料夾中,在虛擬機器中已經分別在這兩個資料夾中都生產了opencv-1.0.0編譯後的檔案;
7、找到opencv-1.0.0 sample資料夾裡的drawing.c檔案,將它拷貝到/software/facedetect資料夾裡,在這裡執行:mipsel-linux-g++ drawing.c -o drawing `pkg-config --cflags --libs opencv` ,會生成drawing可執行檔案;
8、在開發板/etc/profile檔案裡export ld_library_path=/lib:/usr/lib語句後面增加「:/lib/opencv」;
9、開發板的終端控制台通過nfs服務連線到虛擬機器,將虛擬機器/opt/opencv/opencv-mips/lib檔案更名為opencv,放到nfs共享資料夾裡,在開發板的終端控制台輸入命令cp -r opencv /lib,將opencv動態鏈結庫拷貝到開發板/lib/opencv資料夾裡;
10、在開發板中執行drawing,會提示不支援gtk,因為opencv在linux裡不支援gtk方法,需要修改drawing.c,讓其不使用gtk。
在ARM Linux平台上移植SQLite
在arm linux平台上移植sqlite 首先從http sqlite.org 的quick start文件中的測試程式為例對移植到arm linux上的sqlite3進行測試。該程式清單如下 include include static int callback void notused,int...
在Symbian OS平台上移植C語言工程的方法
symbian是應用於高階手機 智慧型手機 上的一種作業系統,諾基亞 索愛的高階手機便是基於symbian作業系統的,symbian os的優勢在於其高穩定性和節能性,並且有眾多主流手機產商的支援,現在是高階手機上的主流作業系統之一。在synbian os上的應用開發主要是以c 語言為主,但是也支援...
在x86 64平台上編譯龍芯平台go執行環境
系統 deepin v20 平台 x86 64 交叉編譯器 mips loongson gcc7.3 2019.06 29 linux gnu,即gcc 7.3.1。待後續更正 wget交叉編譯化境搭建見在x86 64平台上搭建龍芯mips64交叉編譯環境 安裝git sudo apt instal...