windows交叉编译环境
Ⅰ windows eclipse c++怎么交叉编译linux
Eclipse 一般用作java开发,但也可以用作C/C++开发工具。那么,在 Linux 系统下,怎样安装 eclipse 用来编译 C/C++ 程序呢?
工具/原料
Eclipse IDE for c/c++ 安装包
一、下载 Eclipse IDE for c/c++ 安装包
1
启动 Linux 系统,使用浏览器从 eclipse 官网下载 Eclipse IDE for c/c++ 安装包。地址见图。
2
下载时,请根据你的系统版本下载相应的安装包。由于我是 CentOS 6.6 32位版本,自然是下载 Linux 32 位的。
3
在这儿说明一下,使用此安装包,可以免去安装 eclipse 后还需配置 CDT 的烦恼。作为一个 c/c++ 程序开发者,深感比以前方便了不少。
END
二、安装 Eclipse IDE for c/c++
1
下载完成后,进入 Eclipse 安装包所在目录,在空白处右击鼠标,启动终端。
2
安装 Eclipse 之前,请确保安装了以下组件并更新到最新版:
1、Java 环境
2、gcc 和 g++
下面简单介绍一下检测方法:
1、查询 java 版本(通用):java -version
2、查询 gcc 版本(红帽系列):rpm -qa gcc
3
下面进入 eclipse 的安装环节,非常简单。总体来说是解压后即可用。
首先,登陆 root 帐户,键入命令 tar -zxvf 安装包名,回车,将压缩包解压到当前目录下。
4
解压完成后,键入 ls ,可以看到当前目录多了一个目录 eclipse 。
键入 cp -r eclipse /opt/ ,将 eclipse 目录下的所有文件复制到 /opt 目录下(这个目录随你喜好了,不复制也行)。
END
三、使用 eclipse
1
如果像我上面那样将 eclipse 文件夹复制到了 opt 目录,在终端键入 /opt/eclispe/eclipse,回车。eclipse 就启动了。
2
注:为了便于英语不好的同学理解,我下面全用中文,实际菜单为英文。
1)新建工程
首次启动时,会提示你程序代码保存位置,然后可能还会出现欢迎界面(关闭掉欢迎界面,IDE界面就可以看到了)。点击“文件”-“新建”-“c++工程”。
3
为工程取一个名字(例如 test),选择“空工程”,其余选项保持默认(下同),点击“下一步”。
4
在接下来的页面中,继续点击“下一步”,最后点击“完成”。
5
2)添加代码文件
点击“文件”-“新建”-“源文件”。
6
填写源文件名,切记,一定要加扩展名。
7
下面,就可以在源文件中书写代码。书写代码时,系统有时会给出一些错误提示,如果你确认你的代码没有写错,不要去理会。
8
代码写完后,点击工具栏的小三角按钮即可对代码编译运行,如果弹出提示框问你“代码已经修改,是否保存”,点击“是”。
9
运行的结果输出在下边的框里。
END
注意事项
安装 eclipse 前,要确保必须的组件已经安装。
添加程序代码文件时,一定要加上扩展名。
Ⅱ 如何在windows平台下交叉编译gcc-C/C++
我怎么记得回答过呢? cygwin + 交叉编译器(这个必须是 for cygwin 的) Colinux + 交叉编译器(这个直接可以用 Linux 下面的) 虚拟机 + 交叉编译器(同上,虚拟机里就是一个 Linux) 双引导进 Linux + 交叉编译器
Ⅲ 如何构建交叉编译环境。
你说的是我下面的回答吗?下面就一些问题作一个说明,以期抛砖引玉。
基于Linux操作系统的应用开发环境一般是由目标系统硬件(开发板)和宿主PC机所构成。目标硬件开发板用于运行操作系统和系统应用软件,而目标板所用到的操作系统的内核编译、应用程序的开发和调试则需要通过宿主PC机来完成(所以称为交叉编译)。双方之间一般通过串口,并口或以太网接口建立连接关系。
但在此我建议构建如下的交叉编译环境,适合个人或研发小组使用:单独拿出一台PC机(PII以上即可,就用以前淘汰的旧机器就可以),在该PC上安装桌面的Linux操作系统(如Red Hat Linux 8.0及以上),可以采用默认的安装选项(注意要包含ftp服务),这台PC作为Linux服务器,除管理员以外,一般不直接让其他人去操作。
将该Linux服务器接入局域网,并新建一些合法用户,以便其他的PC机(在此我们将其称为工作站)的合法用户能访问到Linux服务器。而其他的PC机(工作站)仍然使用Windows操作系统,原来干啥继续干啥。
需要的软件工具包括:
1、FTP客户端程序(如Cuteftp,可到网上下载)。
2、Telnet工具(如SecureCRT,可到网上下载)。
3、移植到某一特定ARM平台的Linux操作系统内核源码(一般由销售商整理提供)。
4、GNU编译工具,可由相关网站下载,或由销售商整理提供。
在工作站安装:
在某工作站PC上安装FTP客户端程序和Telnet工具,安装完毕后应该可以在该工作站PC和Linux服务器之间进行文件的传输,并在工作站PC可以通过Telnet登陆到Linux服务器(可能需要将Linux服务器的防火墙服务关闭才能完成)。
在Linux服务器安装:
将工作站PC上的Linux操作系统内核源码压缩包和GNU编译工具通过FTP传送到Linux服务器的某个目录(如合法的用户目录),然后在该目录下解压,并将GNU编译工具安装到默认的工作目录即可,以上工作通过在工作站PC使用Telnet工具完成,而不需要在Linux服务器上进行。
Linux操作系统内核的编译:
Linux操作系统内核的编译一般有一个比较固定的步骤,会根据MakeFile文件的不同而略有差异,可参考相关文档,编译的工作在工作站PC使用Telnet工具完成。
Ⅳ 能否在windows上搭建arm-linux交叉编译环境
这个估计没必要,安装一个虚拟机,然后安装一个桌面版的里Linux系统,再在系统中安装一个vim编辑器,再安装一个gdb调试器,最后再arm-linux-gcc就可以编译c文件了,要是你的很多源程序文件都在windows系统中,你可以设置Windows与Linux共享文件。这些东西在网上都可以找到教程,刚开始可能觉得Linux系统很不方便,但是要熟悉Linux系统就必须经常呆在Linux系统中,希望能帮到你。
Ⅳ 如何在windows下面编译u-boot
1. 执行:apt-get install mingw32安装了linux-windows交叉编译环境mingwin
2. 执行:. build/envsetup.sh
3. 执行choosecombo,选择各个参数
这两步设置了一些编译参数和环境变量,按照你正常编译Android的设置即可。
4. 执行:make USE_MINGW=y adb
5. 执行:make USE_MINGW=y fastboot
最后到out/host/windows-x86/bin目录下就能找到你刚刚编译的东西了。
Ⅵ 如何在Windows上建立arm-linux开发环境
如何在Windows上建立arm-linux开发环境 FriendlyARM 目 前,有很多地方介绍了如何在cygwin上为ARM7建立arm-elf-gcc交叉编译工具链,但是对ARM9却鲜有介绍,为了方便大家更好在 Windows上进行嵌入式linux开发,我们锋则在cygwin上移植了arm-linux-gcc for ARM920T。 要在Windows上建立arm-linux开发环境,您需要先安装cygwin(见“cygwin完全安装指南”)。
1. 解压交叉编译器 下载:FriendlyARM.tgz 下载gdbserver(for ARM920t):gdbserver.tgz 下载gdbserver所依赖的库:lib-for-gdbserver.tgz(请把库解压到目标板的/usr/lib目录下) #mkdir /opt ;创建opt目录,如果已经存在则不需要创建 #tar xvzf FriendlyARM.tgz -C /opt ;把交叉编译器安装在/opt/FriendlyARM目录,注意必须是此目录 2. 配置启动脚本/etc/profile 3. 测试 退出cygwin,重新启动一个终端,输入:arm-linux-gcc -v,如果出现以前让下信慧基局息,说明您已经正确安装,否则仔细检查/etc/profile是否配置好。
Ⅶ windows7下搭建eclipse对stm32的交叉编译环境,ECLIPSE(C/C++ JUNO)+yagarto+mingw+gunplugin gcc版本
JRE的版本问题,导致插件不能使用,导致不能连接到有效的库文件,所以,重装吧。一定要选对版本
Ⅷ 如何在windows上用ndk交叉编译其他平台程序
目标 :编译arm64的.so库
编译方法:理论上应该有两种交叉编译方法,法一,在Linux服务器上安装交叉工具链,直接用交叉工具链进行编译链接;法二,使用ndk完成交叉编译,因为
ndk已经安装好交叉编译工具链,以及相关的系统库和系统头文件了。这两种方法的区别在于,linux服务器上的编译使用的makefile和ndk使用的.mk
文件显然不同。原因是ndk作为一个集成编译环境,制定了一套特定的规则用于生成最终的编译脚本。
这里简单总结下,如何在windows用ndk进行交叉编译arm64目标平台的.so库:
step1:找到ndk开发工具包,官网之类的都可以下载,Android-ndk64-r10-windows-x86_64.rar文件
step2:解压上述ndk工具包,将包含程序源文件和头文件的文件夹testProject都放入android-ndk-r10下的samples目录下。
放在其他地方当然也可以,但是后续相对路径之类的不太好加,既然其他例子都放这,把代码放这编译是最保险的了。
step3:在testProject中增加一个jni的文件夹,必须要添加!!!!!!
step4:在jni文件夹中,添加一个Android.mk的文件,必须要添加!!!!!
step5:在jni文件夹中,添加一个Application.mk的文件与Android.mk并列,必须要添加!!!!!
step6:Android.mk和Application.mk合起来就类似于linux环境下的makefile编译文件。
如何写Android.mk,可以参考例子helllo-jni中jni文件夹下的Android.mk。
LOCAL_PATH:=$(call my-dir) #必须要写的
include $(CLEAR_VARS) #必须要写的
LOCAL_MODULE:=hello-jni #编译出来的模块名称
LOCAL_SRC_FILES:=hello-jni.c #制定编译的源文件名称
include $(BUILD_SHARED_LIBRARY)#放在最后
除了上述变量之外,还有其他的指定的变量,
LOCAL_CFLAGS,用于指定编译选项,这个和makefile中是完全一样的,可以指定编译选项-g,也可以指定编译宏及宏值
LOCAL_LDLIBS,用于指定链接的依赖库,这个可以makefile也是完全一样的,可以指定链接库用-l库名,以及指定库搜索路径用_L路径名
LOCAL_STATIC_LIBRARIES,指定链接的静态库名,makefile中没有
LOCAL_C_INCLUDES,用于指定编译头文件的路径,和makefile中不同,路径前不需要加-I,直接写路径即可,可以是相对路径或绝对路径,
多个路径之间用空格隔开。
编写上述Android.mk碰到的问题有,
(1)使用默认的系统自动加载stl库头文件总是出错,只好手动在LOCAL_STATIC_LIBRARIES指定sources/cxx-stl/stlport/stlport来完成对#include<string>这种c++形式的头文件加载
(2)使用$(SYSROOT)/usr/include来完成对系统库头文件的加载,结果找不到sem_t符号,只好指定platforms/android-L/arch-arm64/usr/include
step7:Application.mk编写
APP_STL指定使用的stl移植库,动态或者静态都行
APP_CPPFLAGS,指定app编译的编译选项
APP_ABI指定abi规范类型,例如arm64-v8a,也可以写成ALL就是把所有的类型全部编一编
APP_PLATFORM指定编译的platform名称,这里可以写成android-L或者不指定全编。
step8:编译完成后,运行。
启动cmd,使用cd /D进行到testProject的jni目录下
step9:将android-ndk-r10下的ndk-build.cmd直接拖拽到cmd中,此时直接敲回车,就可以编译了。当然也可以加一个 clean,清除编译中间文件。
step10:检查下编译结果,编译成功后在testProject中多了两个文件夹与jni并列的,libs和obj。
编译链接后的结果就在libs中!