2014-10-01 77 views
0

我是GCC新手,将GCC编译器移植到新架构。将GCC移植到新架构

  • 步骤1:新架构
  • 步骤2实施GCC(GCC-4.6.1):新架构实现的binutils(binutils的-2.21.1)
  • 步骤3: ..

现在我在步骤1,我的问题是,
我可以在不实现binutils和其他程序的情况下构建GCC吗?输出喜欢“{target} -linux-elf-gcc” 并需要使用以下命令获取并检查程序集输出;

$ {新机} -linux-ELF-GCC -S main.c中

+2

你说什么“新机器”你的意思是什么? – 2014-10-01 02:44:39

+0

“新机器”是指新的架构。目标处理器是新设计的处理器,不支持GCC。 – deeman 2014-10-01 02:50:17

+1

@deeman将'gcc'引导到一个新架构是一个如此宽泛的问题,它无视了理由。 – 2014-10-01 02:53:09

回答

0

如果我理解你的问题正确,你想编译GCC的版本,对于给定的架构。

下载binutils软件包,对其进行配置并编译,安装并准备好构建GCC。

下载您感兴趣的GCC版本软件包,并使用参数进行配置,这些参数在目标架构和其他细节上进行了清晰的说明。 转寄此页面了解更多配置的帮助:https://gcc.gnu.org/install/configure.html

如果您在您的本地机器上建立这个GCC,最有可能的一组内核头文件为 平台将可以和你没有需要关注与标题。 但是对于交叉编译,必须为源目标树配置的一组内核头文件可用。

样品配置,对于本机编译器: 的./configure前缀= PREFIX

对于原生交叉编译器: 的./configure --target = PowerPC的Linux的前缀=/USR - -with-headers =/usr/src/linux/include --enable-languages = c --disable-threads

一旦你建立了你的GCC,以后你需要建立glibc,使用新生成的GCC工具链。

之后,您应该可以使用新创建的工具链编译任何其他包。 如果你想编译一个小型的测试程序,其中这个测试程序中的依赖关系更少你可以在GCC准备就绪时执行此操作。