當前位置:首頁 » 編程軟體 » androidc編譯工具

androidc編譯工具

發布時間: 2023-01-05 03:36:19

㈠ 如何建立android的C/C++交叉編譯環境

因此,構建android上C/C++的交叉編譯環境也就成為了一個很大的需求。特別是對於已經取得root許可權的機器,如果能直接運行按需編譯的二進制文件,那麼將可以做很多有意義和有趣的事情。 很不幸,Google沒有直接給出如何建立這個交叉編譯環境,但是我們可以藉助Google提供的強大的NDK (Native Development Tools)來達到這一目的。NDK的本來目標是編譯得到.so動態鏈接庫文件,然後通過JNI提供給上層的java調用,從而實現C/C++程序的簡易遷移。而編譯.so和編譯成二進制可執行文件的過程是完全一樣的,這就給了我們可以發揮的空間。 有兩種方式獲取交叉編譯所需的工具鏈:git下prebuilt這個project或者直接去下載NDK,我這里arm-eabi的版本是最新的4.4.0。1 git clone git://android.git.kernel.org/platform/prebuilt.git 然後創建一個helloworld.c文件。1 2 3 4 5 6 //// root@delleon:~/android/myapp# cat helloworld.c#include int main(){printf("HelloWorld!n");return0;} 接下來創建Makefile文件。注意修改其中的NDK_DIR和SDKTOOL為自己的目錄,修改APP為自己的待編譯程序主文件名。另外注意自己的arm-eabi的版本,若有變化則也需要修改。1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 #### root@delleon:~/android/myapp# cat Makefile APP=helloworld NDK_DIR := ~/android/android-ndk-r4 NDK_HOST := linux-x86 SDKTOOL := ~/android/android-sdk-linux_86/tools TOOLCHAIN_PREFIX :=$(NDK_DIR)/build/prebuilt/$(NDK_HOST)/arm-eabi-4.4.0/bin/arm-eabi- CC :=$(TOOLCHAIN_PREFIX)gcc CPP :=$(TOOLCHAIN_PREFIX)g++ LD :=$(CC) COMMON_FLAGS :=-mandroid -ffunction-sections -fdata-sections -Os -g --sysroot=$(NDK_DIR)/build/platforms/android-5/arch-arm -fPIC -fvisibility=hidden -D__NEW__ CFLAGS :=$(COMMON_FLAGS) CFLAGS +=-D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -DANDROID -DSK_RELEASE -DNDEBUG CFLAGS +=-UDEBUG -march=armv5te -mtune=xscale -msoft-float -mthumb-interwork -fpic -ffunction-sections -funwind-tables -fstack-protector -fmessage-length=0-Bdynamic CPPFLAGS :=$(COMMON_FLAGS)-fno-rtti -fno-exceptions -fvisibility-inlines-hidden LDFLAGS +=--sysroot=$(NDK_DIR)/build/platforms/android-5/arch-arm LDFLAGS +=-Bdynamic -Wl,-dynamic-linker,/system/bin/linker -Wl,--gc-sections -Wl,-z,noreloc LDFLAGS +=-L$(NDK_DIR)/build/prebuilt/$(NDK_HOST)/arm-eabi-4.4.0/lib/gcc/arm-eabi/4.4.0 LDFLAGS +=-L$(NDK_DIR)/build/prebuilt/$(NDK_HOST)/arm-eabi-4.4.0/lib/gcc LDFLAGS +=-L$(NDK_DIR)/build/prebuilt/$(NDK_HOST)/arm-eabi-4.4.0/arm-eabi/lib LDFLAGS +=-nostdlib -lc -llog -lgcc --no-undefined -z $(NDK_DIR)/build/platforms/android-5/arch-arm/usr/lib/crtbegin_dynamic.o $(NDK_DIR)/build/platforms/android-5/arch-arm/usr/lib/crtend_android.o OBJS +=$(APP).o all:$(APP) $(APP):$(OBJS)$(LD)$(LDFLAGS)-o $@$^ %.o:%.c $(CC)-c $(CFLAGS)$

㈡ android studio開發工具編譯C、c++代碼生成so文件

目前android studio 還不支持 ndk開發,如下圖是官網的說明:

㈢ 可以在android手機上直接編譯c語言嗎,要准備那些軟體

聽說java編手機軟體要好,是這樣嗎?哪裡好?軟體和游戲分別說;先謝謝了;假定f(x)在區間(提示:3G Android本身並不難,無非是要熟悉

㈣ 手機c語言編程軟體哪個好

1:C4droid中文版

C4droid中文版可以說是款Android設備上的最強的 C/C++ IDE,支持多種圖形庫: SDL、SDL2 (需安裝sdl plugin for c4droid)、QT(需安裝CuteLoadear)等,還支持導出APK!

㈤ 用gcc/g++如何編譯android工程中的.c/.cpp程序,如何查看android工程師.c/.cpp文件需要的依賴及如何解決

目前暫不支持開發工具編譯C、c++代碼生成so文件,應該後續版本會有的。.so 為共享庫,是shared object,用於動態連接的,和dll差不多,可以這樣調用so文件:得到/usr/java/jdk1.5.0_13/jre/lib/i386,將SO文件放在該目錄下運行java程序,輸出了由C語言函數計算出的結果以引擎自帶的HelloCpp為例配置C++的的自動編譯。在eclipse中導入hellocpp工程。操作路徑:eclipse--file--import工程導入後,右擊工程--properties取消CDT builder。然後點擊New新建一個我們自己的builder,選擇program。指定ndk-build.cmd來編譯我們的項目,下面的工作路徑將作為參數傳入給ndk-build.cmd添加NDK_MODULE_PATH變數,注意要寫兩個路徑[cocos2d-x安裝目錄和其目錄下\cocos2dx\platform\third_party\android\prebuilt],用分號分開最後點OK保存。因為不是執行build_native.sh編譯本地代碼,所以別忘了手動拷貝下hellocpp工程下resource中的資源到android工程assets.可以在命令行下編譯多個C/CPP文件,通過cl -c命令來編譯類文件,編譯成obj文件後,你可以使用lib命令將其編譯為lib文件,然後使用link命令連接多個obj文件。默認生成的可執行文件的名稱是命令中第一個obj文件的名稱,具體參考代碼如下:

㈥ 如何利用android studio 編譯c code

學習 android 逆向分析過程中,需要學習 Arm 指令,不可避免要編寫一些 test code 並分析其指令,這是這篇文檔的背景。

在目前 android 提供的開發環境里,如果要編寫 c / cpp code, 一般是通過 ndk 開發套件,基本方法就是在
windows 或 linux 發行版上下載 ndk 環境,然後編寫 c / cpp code 然後編寫 Android.mk 文件,最後用
ndk-build 等工具進行編譯,編譯出來的可執行文件再通過 adb push 的方式提交到 devices 或 emulator
運行,如果要分析其指令,需要下載 android 提供的 prebuilts binutils 工具集(如android 源碼
prebuilts/gcc/linux-x86/arm/arm-linux-androideabi-4.7/arm-linux-androideabi/bin/
目錄),如果你在linux上用file命令查看一下這些工具,會發現 :

root@ubuntu:bin# file objmp
objmp: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.8, stripped

它們是x86架構的,這樣,你要分析devices或emulator里的elf文件,需要adb pull 下來,放在本地的linux環境或者windows里,用上述prebuilt工具分析。

稍微思考一下就會發現上述 ndk
的方式,對我們的需求來說有點太復雜了,我們真正希望的是像在標准linux發行版上那樣,可以用vi/vim等編輯工具寫 c/cpp
code,然後用 gcc /g++ 等編譯工具編譯,然後能直接運行或者用gdb調試,
或者用readelf/objmp等命令查看elf結果和匯編碼。問題變成了:如何在android上實現這一切?

下面的方式是經過本人收集和實際測試證明可行的,我的環境是:

目標機:小米2手機, android4.4.4, miui 6.3.5

本地機: win7

效果:在本地機adb目標機的shell, 然後用vi寫 c/cpp code, 直接在shell上用gcc編譯,用objmp分析指令

實現步驟如下:

1. 首先安裝 busybox apk . 這個app提供了後續需要的 busy vi, busy tar 等工具

2. 下載 adb putty ,http://yunpan.cn/cZ5x9UrDFUDdK (提取碼:e70e)

這個工具用來做終端,這里為什麼不用win7自帶的cmd或者其他增強版如 powerCmd 呢? 因為用 windows 的 cmd 終端,adb shell 連接上手機後,執行 busybox vi 等命令,會出現亂碼,參考http://www.hu.com/question/20624475, 用這款 adb putty 終端則可以正常使用。

3. 下載 gcc arm,http://yunpan.cn/cZ5YVZzbvJqq4 (提取碼:80b8)

安卓手機上有沒有C語言編譯器啊

有一款叫做「C4droid」的軟體可以在安卓手機上編譯C語言。

㈧ c語言編譯軟體有哪些

6款好用的C語言編譯器推薦

一些剛開始接觸C語言編譯的網友想下載一款C語言編譯器來使用,不過,網路上有不少C語言編譯器相關的軟體,讓人很難抉擇。那麼,C語言編譯器哪個好?今天的文章里,小編給大家整理了6款好用的C語言編譯器推薦給大家,需要C語言編譯器的網友,不妨了解一下!

一、Dev-C++

Visual Studio(VS) 是一套非常完備的工具和服務,可幫助您為 Microsoft 平台和其他平台創建各種各樣的應用程序。Visual Studio 還可將您所有的項目、團隊和利益干係人聯系在一起。現在您的團隊可以從任何位置以虛擬方式進行更為敏捷的合作,無論他們採用何種開發工具。

功能介紹

可以通過強大的集成開發環境構建面向 Windows、Android、iOS 以及 Web 的出色應用。使用任何 IDE 或編輯器在雲中進行版本控制、敏捷、持續交付、應用程序分析協作。

適用於所有操作系統的編輯器使用可在 Windows、OS X 或 Linux 上運行的免費代碼編輯器構建和調試現代 Web 和雲應用程序。

㈨ 有沒有安卓手機c語言編譯軟體

有的 我現在也正在用C4 droid 我是看視頻學的,我現在正在看的是夏老師的,感覺還不錯,比較適合像我這樣0基礎的。這個比較吸引我的地方就是講的一聽就能聽懂。而且很多概念都有形象的比喻,例如把變數比如成盒子。把變數賦值比喻成往盒子里放東西等等很多這樣的比喻。感覺特別容易理解。

㈩ 手機能否裝C語言編譯器

可以裝,不過需要安卓手機。

安裝步驟如下:

1、我們打開谷歌應用商店。在搜索框里輸入mobile c查找應用程序。下載並安裝好

6、可以看到這里正確的輸出了Hello World字元串。

熱點內容
java返回this 發布:2025-10-20 08:28:16 瀏覽:593
製作腳本網站 發布:2025-10-20 08:17:34 瀏覽:888
python中的init方法 發布:2025-10-20 08:17:33 瀏覽:581
圖案密碼什麼意思 發布:2025-10-20 08:16:56 瀏覽:765
怎麼清理微信視頻緩存 發布:2025-10-20 08:12:37 瀏覽:684
c語言編譯器怎麼看執行過程 發布:2025-10-20 08:00:32 瀏覽:1012
郵箱如何填寫發信伺服器 發布:2025-10-20 07:45:27 瀏覽:255
shell腳本入門案例 發布:2025-10-20 07:44:45 瀏覽:113
怎麼上傳照片瀏覽上傳 發布:2025-10-20 07:44:03 瀏覽:806
python股票數據獲取 發布:2025-10-20 07:39:44 瀏覽:712