交叉編譯libmysqlclient.so
下載源碼:
ftp://ftp.fu-berlin.de/unix/databases/mysql/Downloads/Connector-C/
選擇?mysql-connector-c-6.1.11-src.tar.gz
解壓縮源碼
用cmak-gui 編譯源碼,(注: apt-get install cmake-gui)
選擇通用的交叉編譯工具
下載地址:
http://releases.linaro.org/components/toolchain/binaries/5.3-2016.05/arm-linux-gnueabihf/
解壓縮后設(shè)置環(huán)境變量:
export PATH=$PATH:/opt/mysql/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc
驗(yàn)證是否生效
whereis
arm-linux-gnueabihf-gcc
arm-linux-gnueabihf-gcc:
/opt/mysql/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc
cmake-gui編譯:
編譯出 pc 版本
cmake -G
"Unix Makefiles"
-DCMAKE_INSTALL_PREFIX=/opt/mysql/mysql-connector-c-6.1.11-src/build
make
然后再編譯 arm版本洲胖,否則會(huì)報(bào)錯(cuò)誤
cmake-G"Unix Makefiles" -DCMAKE_INSTALL_PREFIX=/opt/mysql/mysql-connector-c-6.1.11-src/build? -DCMAKE_C_COMPILER=/opt/mysql/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-gcc? -DCMAKE_CXX_COMPILER=/opt/mysql/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-g++
make
make install
編譯成功
將include 和 lib 文件 復(fù)制到目標(biāo)板的 /usr/ 目錄下
cp include/*??/usr/include/? -rf
cp lib/* /usr/lib/* -rf
新開(kāi)終端:
環(huán)境變量:source
/opt/fsl-imx-x11/4.1.15-2.1.0/environment-setup-cortexa9hf-neon-poky-linux-gnueabi
將編譯成功的 include lib copy到下邊目錄中
/opt/fsl-imx-x11/4.1.15-2.1.0/sysroots/cortexa9hf-neon-poky-linux-gnueabi/usr
[if !vml]
[endif]
ldconfig 更新庫(kù)
進(jìn)入qt mysql源碼目錄
執(zhí)行 qmake
make
成功生成庫(kù)文件:
將libqsqlmysql.so 復(fù)制到 目標(biāo)板/usr/lib/qt5/plugins/sqldrivers/ 目錄下
運(yùn)行測(cè)試程序:
成功打印支持的數(shù)據(jù)庫(kù)驅(qū)動(dòng)