当前位置:首页 » 编程软件 » 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 浏览:114
怎么上传照片浏览上传 发布:2025-10-20 07:44:03 浏览:806
python股票数据获取 发布:2025-10-20 07:39:44 浏览:712