首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >SPARC-RTEMS5 5-GCC忽略或找不到库

SPARC-RTEMS5 5-GCC忽略或找不到库
EN

Stack Overflow用户
提问于 2019-03-22 18:47:27
回答 1查看 495关注 0票数 0

我是RTEMS的初学者,我用linux在我的计算机中为erc32芯片(在RTEMS5中的例子)构建了一个erc32环境。该环境附带了示例应用程序。我试图使用sparc-rtems5-gcc编译"hello“(init.c)中的示例,下面是命令行:

代码语言:javascript
复制
sparc-rtems5-gcc -g -O2 /home/michel/masters_project/src/rtems/testsuites/samples/hello/init.c -o /home/michel/masters_project/compile_test/hello2.exe

但是它返回以下错误:

代码语言:javascript
复制
fatal error: rtems.h: No such file or directory
 #include <rtems.h>
          ^~~~~~~~~
compilation terminated.

因此,我试图在init.c代码中注释rtems.h,并保留代码的下一个库tmacros.h,因此我再次编译,并出现了以下错误:

代码语言:javascript
复制
fatal error: tmacros.h: No such file or directory
 #include <tmacros.h>
          ^~~~~~~~~~~
compilation terminated.

我使用了locate命令,并在envinronment树中找到了这些库。据我所知,sparc-rtems5-gcc并没有发现或忽略图书馆。我将bin文件夹添加到PATH变量中。命令行:

代码语言:javascript
复制
export PATH=$HOME/masters_project/rtems/5/bin:"$PATH"

此外,我还在旧版本的指令中创建了变量RTEMS_MAKEFILE_PATH。我发现RTEMS_MAKEFILE_PATH变量应该指向BSP文件所在的位置。但是,我不确定在当前的RTEMS版本中,是否仍然需要创建这个环境变量,因为我还没有在主文档中找到相关的说明。

命令行:

代码语言:javascript
复制
export RTEMS_MAKEFILE_PATH=/home/michel/masters_project/build/b-erc32

有人能帮忙吗?另外,如果你有一个工作环境,你能为我复制你的项目树吗?

我的uname -a命令输出:

代码语言:javascript
复制
Linux michel-COM 4.15.0-45-generic #48~16.04.1-Ubuntu SMP Tue Jan 29 18:03:48 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-11-08 12:07:10

您需要为与RTEMS关联的头文件包含添加目录包含标志,使用

  • -I {path-to-RTEMS},例如: flag_rtems = -I /opt/rtems/5/,现在在编译阶段使用$(flag_rtems)
  • 导出$(PATH)将有助于使用运行环境中的二进制文件,而不是搜索包含的头文件。

建议在/opt/目录中安装RTEMS。

(注意:目录包含标志用于对象文件编译阶段,而不是链接阶段。)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55306034

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档