新路程------imx6 编译c可执行文件

 一开始用arm-fsl-linux-gnueabi-gcc -o这样的命令编译,结果执行发现呵呵:

root@sabresd_6dq:/data # ./test1
./test1
/system/bin/sh: ./test1: No such file or directory

发邮件问飞凌官方售后,回答也基本没什么,唯一有道理点的就是由于交叉编译版本是2013年前的,所以有的so不统一,我尝试将编译器的so放到开发板上,发现还是不行,这条路就不折腾了。

网上一搜,直接在

1.在./development目录下创建一目录 如:myhello
2. 进入hello目录,在其下编写自己的.c文件,如: myhello.c
#include <stdio.h>
int main()
{
printf("hello world\n");
exit(0);
//return 0;
}
3. 在hello目录中,编写Android.mk, 内容如下:
LOCAL_PATH:= $(call my-dir)
include $(CLEAR_VARS)
LOCAL_MODULE := myhelloworld
LOCAL_SRC_FILES := myhello.c
LOCAL_MODULE_TAGS := optional
include $(BUILD_EXECUTABLE)
4. 回到Android源代码顶层目录,进行编译,make myhelloworld
5. 生成的可执行文件位于:out/target/product/lotus/system/bin/ 目录下
到了第五步发现了问题,虽然我在系统根目录下执行java -version有版本信息
但是我在源码的根目录下执行却不行,然后执行
make myhelloworld报错说java环境没装好,于是我想到了到根目录下的env.sh里去看看,发现没有加环境变量
于是把
export JAVA_HOME=/usr/local/jdk/jdk1.6.0_45
export JRE_HOME=$JAVA_HOME/jre  
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH    
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH 
这几个加进去以后就可以编译了,编译后的文件放开发板就可以执行了。



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值