1

我已经在 linux 系统(Ubuntu 13.02)上安装了 eCos OS。安装后,eCos 文件位于opt/ecos.

当我阅读 eCos 教程时,我看到hello.c存储在opt/ecos/ecos-3.0/examples/hello.c(我注意到可能所有主要的 eCos 系统文件都存储在 ecos-3.0 目录中)。

我已经按照官网上的eCos教程进行了操作,但还是无法成功编译hello.c。

更多详情。当我尝试运行时:

$ export INSTALL_DIR=BASE_DIR/ecos-work/arm_install 
$ TARGET-gcc -g -IBASE_DIR/ecos-work/install/include hello.c \
    -LBASE_DIR/ecos-work/install/lib -Ttarget.ld -nostdlib

我得到错误:TARGET-gcc : command not found

我已经尝试了其他一些教程,但我仍然遇到问题(这里太乱了,无法列出)。

hello.c我正在寻找有关在 eCos 系统中编译的分步说明。我看到 eCos 手册在这方面缺乏。

谢谢 :)

4

2 回答 2

2

您似乎错过了 eCos文档中的一个微妙约定。斜体项目由您提供!它们是变量。

文档在这里提到了这一点:

Note: Remember that when this manual shows TARGET-gcc you should use 
the full name of the cross compiler, e.g. i386-elf-gcc, arm-elf-gcc, 
or sh-elf-gcc. When compiling for the synthetic Linux target, use the
native gcc which must have the features required by eCos.

TARGET替换为适当的值,将BASE_DIR替换为 (我认为,在你的情况下) /opt/ecos。在继续之前,您应该验证包含目录:

$ ls -l /opt/ecos/ecos-work/install/include

如果那没有列出目录内容,那么您只需要locate ecos-work

文档的 Windows 和 Linux 快速启动部分的Ecosconfig让您创建BASE_DIR目录(下面是我引用的片段......斜体不会显示)。

$ mkdir BASE_DIR/ecos-work
$ cd BASE_DIR/ecos-work

所以,这可能是正确的调用。

$ export INSTALL_DIR=/opt/ecos/ecos-work/arm_install 
$ arm-elf-gcc -g -I/opt/ecos/ecos-work/install/include hello.c \
    -L/opt/ecos/ecos-work/install/lib -Ttarget.ld -nostdlib
于 2014-02-21T05:38:04.817 回答
0

你需要做

# source /opt/ecos/ecosenv.sh

然后你可以尝试通过改变 TARGET= 来编译

$ TARGET-gcc -g -IBASE_DIR/ecos-work/install/include hello.c \ -LBASE_DIR/ecos-work/install/lib -Ttarget.ld -nostdlib

于 2014-02-25T13:03:15.677 回答