在安卓項目中單獨編譯某個c源文件

      想要在x86下編寫一個c源文件測試手機某些功能,交叉編譯後放到展訊手機中運行測試。那麼問題來了,好像僅僅使用交叉編譯器arm-eabi-gcc編譯c文件總是出錯,原因是依賴某些庫,同事告訴我要在安卓源碼中編譯才行。

一。在安卓項目根目錄下新建test目錄,編寫好源文件test.c後放到test目錄下,編寫Android.mk文件如下(相當與mkfile)。

二,在安卓項目下執行#source build/envsetup.sh    讀取各個board的vendorsetup.sh

       選定開發板的配置,去選擇要編譯的對象,我是展訊平臺的,#lunch 63(項目編號,你們自己搞自己的)。

       #kheader         安裝kernel header給android編譯

      至此,已經有了編譯環境(編譯工具等已經設置好了)

     進入 test目錄,執行mm命令。就可以單獨編譯test.c文件了。可執行文件會輸出到out啥目錄的。

三。把文件傳輸到手機中

        這個是adb命令的使用,應該不用多說。

    1 #sudo adb start-server       (如果不加sudu我是不能成功啓動)

    2 #adb shell                  (啓動adb shell ,前提鏈接手機且usb調試打開)

    3 #su                            (使用root權限)

        在電腦上已經進入adb的shell界面了,打開電腦的另一個終端,把我們的可執行文件傳出到手機中。

         #adb    push     test 可執行文件路徑     /data                  (把剛纔生成的test二進制文件傳輸到手機的data目錄)





發佈了4 篇原創文章 · 獲贊 4 · 訪問量 4萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章