RT-Thread 编译I.MX RT1052时出现无法找到sys/types.h

..\..\..\components\dfs\include\dfs_fs.h(16): error: #5: cannot open source input file "sys/types.h": No such file or directory

下载RTT官方的Gitee上面的LTS版本3.1.3.之后进行编译出现此问题。发现之后尝试编译STM32的程序并没有出现此问题,粗略看一下源码是libc部分出现的,此部分和DFS的存储有直接关系,但是在网上并没有找到解决方案,感觉可能是电脑的libc库缺少了文件,经过琢磨找到了暂时解决的途径。

1 找到types.h文件,并且复制到对应位置

E:\RT-Thread_Git_File\rt-thread\components\libc\compilers\common\none-gcc\sys文件夹下发现文件types.h 将他移植到 E:\RT-Thread_Git_File\rt-thread\components\libc\compilers\common\sys文件夹下之后进行编译

出现此问题


"no source": Error: #5: cannot open source input file "..\..\..\components\libc\compilers\armlibc\stubs.c": No such file or directory


2 寻找对应的stubs.c文件

仔细寻找之后发现并没有 无论是网上还是RTT的文件夹中。。

此时有两种办法

1.在以往的版本中找到这个文件,并且移过去

2.去掉包含关系

本来打算使用第二种,但是找了半天都没有发现。

之后发现旧版本的stube.c复制过去之后就好了。

https://gitee.com/rtthread/rt-thread/tree/stable-v2.1.x/components/libc/armlibc

此链接为旧版本的libc.

如有更优解决方案请在评论区提一下

posted @ 2021-06-23 17:03  lzc56  阅读(0)  评论(0)    收藏  举报  来源