新聞中心
linux下NDK的多平臺(tái)編譯實(shí)踐

創(chuàng)新互聯(lián)建站專注為客戶提供全方位的互聯(lián)網(wǎng)綜合服務(wù),包含不限于成都網(wǎng)站制作、網(wǎng)站設(shè)計(jì)、銀州網(wǎng)絡(luò)推廣、重慶小程序開(kāi)發(fā)公司、銀州網(wǎng)絡(luò)營(yíng)銷、銀州企業(yè)策劃、銀州品牌公關(guān)、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運(yùn)營(yíng)等,從售前售中售后,我們都將竭誠(chéng)為您服務(wù),您的肯定,是我們最大的嘉獎(jiǎng);創(chuàng)新互聯(lián)建站為所有大學(xué)生創(chuàng)業(yè)者提供銀州建站搭建服務(wù),24小時(shí)服務(wù)熱線:18982081108,官方網(wǎng)址:www.cdcxhl.com
基于Linux系統(tǒng)的開(kāi)發(fā)環(huán)境中,Android Native Development Kit(NDK)是Android設(shè)備上C/C++應(yīng)用程序的構(gòu)建環(huán)境,NDK能夠讓開(kāi)發(fā)者優(yōu)化設(shè)備性能,加快安卓應(yīng)用程序運(yùn)行速度,并可以實(shí)現(xiàn)代碼重用。但是,在Linux下,使用NDK開(kāi)發(fā)多平臺(tái)應(yīng)用程序,有時(shí)會(huì)變得復(fù)雜且麻煩,特別是對(duì)于未曾接觸Android NDK的初學(xué)者來(lái)說(shuō),搭建多平臺(tái)開(kāi)發(fā)環(huán)境是一個(gè)棘手的問(wèn)題。本文將基于Linux下的NDK嘗試實(shí)現(xiàn)多平臺(tái)應(yīng)用程序的編譯,并介紹如何使用Android NDK來(lái)解決編譯時(shí)常見(jiàn)的問(wèn)題。
首先,在使用Android NDK編譯多平臺(tái)應(yīng)用程序之前,必須先下載安裝安卓NDK,以便使用NDK編譯器來(lái)編譯應(yīng)用程序。然后,需要為NDK配置準(zhǔn)備編譯的參數(shù)(比如指定架構(gòu)類型)和要編譯的源代碼,同時(shí)還要配置編譯環(huán)境,以便使NDK編譯器正確識(shí)別各種編譯器的指令。此外,在編寫(xiě)C/C++代碼之前,要熟悉如何使用NDK API,以及如何使用它創(chuàng)建可在不同架構(gòu)上運(yùn)行的Native應(yīng)用程序。
接下來(lái),在編譯多平臺(tái)應(yīng)用程序時(shí),首先在Linux終端中輸入如下代碼,以復(fù)制NDK文件夾:
$ cp -r NDK_directory NDK_directory_1
這樣做可以為多個(gè)架構(gòu)類型復(fù)制單一的NDK目錄,以便能夠?yàn)槊總€(gè)架構(gòu)類型指定不同的編譯參數(shù),避免編譯過(guò)程中出現(xiàn)混亂。然后,我們需要使用NDK編譯器來(lái)編譯指定架構(gòu)類型的代碼,例如:
$ ./ndk-build -j8 APP_ABI=x86,armeabi-v7a
其中,APP_ABI參數(shù)指定需要編譯的架構(gòu)類型(位寬),該指令會(huì)編譯兩個(gè)指定架構(gòu)類型的二進(jìn)制文件;-j8參數(shù)指定使用8個(gè)并發(fā)線程來(lái)編譯代碼,使編譯速度最大化。
最后,在編譯過(guò)程中容易出現(xiàn)的問(wèn)題,可以嘗試使用如下命令來(lái)檢查log文件,查看編譯是否成功:
$ python ndk-stack.py -sym obj [APP_ABI類型]
這樣可以查看多平臺(tái)應(yīng)用程序編譯的細(xì)節(jié),以及dot文件及symbol表中出現(xiàn)報(bào)錯(cuò)或警告信息的類型。
至此,基于Linux下的NDK對(duì)于多平臺(tái)應(yīng)用程序的編譯完成,本文基于NDK概述了多平臺(tái)編譯的主要流程,并介紹了如何避免多平臺(tái)應(yīng)用程序編譯錯(cuò)誤的方法。
香港服務(wù)器選創(chuàng)新互聯(lián),香港虛擬主機(jī)被稱為香港虛擬空間/香港網(wǎng)站空間,或者簡(jiǎn)稱香港主機(jī)/香港空間。香港虛擬主機(jī)特點(diǎn)是免備案空間開(kāi)通就用, 創(chuàng)新互聯(lián)香港主機(jī)精選cn2+bgp線路訪問(wèn)快、穩(wěn)定!
網(wǎng)頁(yè)標(biāo)題:Linux下NDK的多平臺(tái)編譯實(shí)踐(linuxndk編譯)
鏈接地址:http://www.dlmjj.cn/article/djeeegj.html


咨詢
建站咨詢
