說(shuō)明
ME3610/3630基于Arm linux, 在上位機(jī)開發(fā)POC應(yīng)用需要配置交叉編譯環(huán)境
步驟
1 資料
基礎(chǔ)包和依賴庫(kù)環(huán)境都在百度網(wǎng)盤: ** 4G模塊>ME3610 ME3630 ** 目錄下
- ME3630 ToolChain.7z 交叉編譯工具鏈相關(guān)
- depends.tar.gz 包含: 中興最新的libpoc庫(kù), 交叉編譯好的protobuf庫(kù)以及交叉編譯好的gdb
2 配置環(huán)境
解壓ME3630 ToolChain.7z可以得到mdm9607和usr兩個(gè)目錄,其中mdm9607為交叉編譯環(huán)境提供庫(kù)和頭文件,usr目錄為編譯器相關(guān)可執(zhí)行文件目錄
2.1 將編譯器相關(guān)路徑配置到環(huán)境變量
export ME3630_PATH=/home/bb/tools/me3630/usr/bin/arm-oe-linux-gnueabi
export PATH=${ME3630_PATH}:${PATH}
驗(yàn)證arm-oe-linux-gnueabi-gcc是否可用:
bb@bb:~$ arm-oe-linux-gnueabi-gcc -v
Using built-in specs.
COLLECT_GCC=arm-oe-linux-gnueabi-gcc
COLLECT_LTO_WRAPPER=/home/bb/tools/MDM9X07/usr/bin/arm-oe-linux-gnueabi/../../libexec/arm-oe-linux-gnueabi/gcc/arm-oe-linux-gnueabi/4.9.2/lto-wrapper
Target: arm-oe-linux-gnueabi
... ... ... ... ...
gcc version 4.9.2 (GCC)
2.2 配置交叉編譯依賴庫(kù)環(huán)境
將mdm9607目錄放置自定位路徑,比如:
/home/bb/tools/me3630/mdm9607
2.3 配置protobuf门粪,libpoc
POC應(yīng)用依賴protobuf和libpoc颈将,將庫(kù)文件和頭文件分別拷貝到對(duì)應(yīng)目錄:
/home/bb/tools/me3630/mdm9607/usr/lib
/home/bb/tools/me3630/mdm9607/usr/include
2.4 配置gdb
首先將gdb下發(fā)到模塊中:
sudo adb push gdb /usr/bin/
gdb依賴的動(dòng)態(tài)庫(kù): libtinfo和libex:
libtinfo.so.5.9在mdm9607/lib目錄下
libexpat.so.1.6.0在mdm9607/usr/lib目錄下
分別拷貝到模塊:
sudo adb push libtinfo.so.5.9 /lib/
sudo adb push libexpat.so.1.6.0 /usr/lib/
然后通過(guò)adb進(jìn)入到模塊系統(tǒng)麻诀,創(chuàng)建兩個(gè)庫(kù)的軟鏈接:
sudo adb shell
ln -s /lib/libtinfo.so.5.9 /lib/libtinfo.so.5
ln -s libexpat.so.1.6.0 /lib/libexpat.so.1
重新運(yùn)行g(shù)db鳖轰,可以調(diào)試了
3 配置POC應(yīng)用開發(fā)環(huán)境
POC應(yīng)用linux/android下都是使用cmake管理工程