千鋒教育-做有情懷、有良心、有品質(zhì)的職業(yè)教育機(jī)構(gòu)

手機(jī)站
千鋒教育

千鋒學(xué)習(xí)站 | 隨時(shí)隨地免費(fèi)學(xué)

千鋒教育

掃一掃進(jìn)入千鋒手機(jī)站

領(lǐng)取全套視頻
千鋒教育

關(guān)注千鋒學(xué)習(xí)站小程序
隨時(shí)隨地免費(fèi)學(xué)習(xí)課程

當(dāng)前位置:首頁(yè)  >  技術(shù)干貨  > linux命令安裝ndk?

linux命令安裝ndk?

來(lái)源:千鋒教育
發(fā)布人:xqq
時(shí)間: 2023-10-20 15:37:46 1697787466

如何在Linux中編譯NDK應(yīng)用?

1、NDK編譯步驟:a.選擇 ndk 自帶的例子 hello-jni ,我的位于E:\android-ndk-r5\samples\hello-jni( 根據(jù)具體的安裝位置而定 ) 。

2、一,1,可以試試直接用bash運(yùn)行文件。試試命令 bash android-ndk-r10c-linux-x86_64(1).bin 2, 如果還不行,建議更改一下文件的名字,可能是帶了特殊的符號(hào),如括號(hào)。

3、我們?cè)赪indows/Linux平臺(tái)使用Android NDK交叉編譯工具來(lái)編譯出Android平臺(tái)的庫(kù)也是這個(gè)道理。

Linux下NDK編譯出的SO庫(kù)能在WIndows下的android工程直接使用么?_百度...

可以,so庫(kù)其實(shí)就是動(dòng)態(tài)鏈接庫(kù)。放到安卓系統(tǒng)中,每個(gè)應(yīng)用都可以訪問(wèn) 將編譯好的libmonoso放到系統(tǒng)的/system/lib目錄下。

可以調(diào)用,但是不能直接調(diào)用,要通過(guò)代碼目的JNI去調(diào)用,在JNI中導(dǎo)入頭文件,通過(guò)NDK編譯成功后即可。

so文件不可以直接運(yùn)行的,so文件是動(dòng)態(tài)函數(shù)庫(kù)文件,函數(shù)庫(kù)文件(包括.a文件和.so文件)只能用來(lái)被調(diào)用運(yùn)行,不能直接運(yùn)行的,so文件就相當(dāng)于Windows下的dll文件,dll文件就是不能直接運(yùn)行的。

如何使用arm-linux-androideabi-addr2line

將gcc/bin下的文件改一下名,arm-linux-androideabi-g++改為g++,arm-linux-androideabi-gcc則改為gcc。完成后重啟IDE即可使用GCC。

arm-linux-gcc -rdynamic -lpthread -g main.c -o main-test 如果是靜態(tài)編譯程序,只需要backtrace信息和addr2line工具即獲取出錯(cuò)點(diǎn)。

export TARGET=arm-linux export PREFIX=$PRJROOT/tools export TARGET_PREFIX=$PREFIX/$TARGET export PATH=$PREFIX/bin:$PATH 如果你不慣用環(huán)境變量的,你可以直接用絕對(duì)或相對(duì)路徑。

進(jìn)入Linux的終端,將當(dāng)前目錄設(shè)為arm-linux-gcc的下載目錄,輸入tar -xzf arm-linux-gcc-tar.gz,將文件解壓,解壓后會(huì)有一個(gè)opt的文件夾。

/opt/FriendlyARM/toolschain/3 /usr/local/arm arm-linux-gcc交叉編譯環(huán)境的安裝 5 到這里已經(jīng)基本安裝好了,到為了避免每次使用arm-linux-gcc時(shí)都要輸入它所在的完整路徑,所以這里我們要修改一下環(huán)境變量$PATH。

聲明:本站稿件版權(quán)均屬千鋒教育所有,未經(jīng)許可不得擅自轉(zhuǎn)載。
10年以上業(yè)內(nèi)強(qiáng)師集結(jié),手把手帶你蛻變精英
請(qǐng)您保持通訊暢通,專屬學(xué)習(xí)老師24小時(shí)內(nèi)將與您1V1溝通
免費(fèi)領(lǐng)取
今日已有369人領(lǐng)取成功
劉同學(xué) 138****2860 剛剛成功領(lǐng)取
王同學(xué) 131****2015 剛剛成功領(lǐng)取
張同學(xué) 133****4652 剛剛成功領(lǐng)取
李同學(xué) 135****8607 剛剛成功領(lǐng)取
楊同學(xué) 132****5667 剛剛成功領(lǐng)取
岳同學(xué) 134****6652 剛剛成功領(lǐng)取
梁同學(xué) 157****2950 剛剛成功領(lǐng)取
劉同學(xué) 189****1015 剛剛成功領(lǐng)取
張同學(xué) 155****4678 剛剛成功領(lǐng)取
鄒同學(xué) 139****2907 剛剛成功領(lǐng)取
董同學(xué) 138****2867 剛剛成功領(lǐng)取
周同學(xué) 136****3602 剛剛成功領(lǐng)取
相關(guān)推薦HOT