懒成狗的猫 发表于 2018-10-23 19:09:27

求助:新建的eclipse开发环境,编译的时候报错重复定义unio...

编译和make工具环境变量也已经添加,但是任然会报错
而且报重复的地方是C:\Program Files (x86)\GNU Tools ARM Embedded\7 2017-q4-major\arm-none-eabi\include里面的定义和RT-thread里面的libc文件的部分结构体报冲突
刚换的新电脑,对着老电脑配置了一遍,除了部分软件版本不一样,配置应该都是一样的。谷歌百度查了,很少有相关说明。
求大神分析一波,万分感谢!

zhucezhuanyong 发表于 2018-10-23 19:52:28

你用的哪个芯片?我当初达环境也用了好久

懒成狗的猫 发表于 2018-10-23 19:54:09

zhucezhuanyong 发表于 2018-10-23 19:52
你用的哪个芯片?我当初达环境也用了好久

stm32f103RB

懒成狗的猫 发表于 2018-10-23 20:01:27

懒成狗的猫 发表于 2018-10-23 19:54
stm32f103RB

就是rt-thread里面的libc头文件里有定义的结构体和   编译器里面的signal.h里面的结构体有重复,关键libc文件夹里的头文件又调用了编译器里的头文件,不好屏蔽{:sweat:} ,不知道怎么搞了!

qiqirachel 发表于 2018-10-23 20:15:24

eclipse编译STM32看我发的帖子很容易啊,完全不需要配置啊

懒成狗的猫 发表于 2018-10-23 20:32:57

本帖最后由 懒成狗的猫 于 2018-10-23 20:35 编辑

找到原因了,新下载的交叉编译器里面C:\Program Files (x86)\GNU Tools ARM Embedded\7 2017-q4-major\arm-none-eabi\include\sys头文件signal.h的一个宏定义判断条件不一样,导致和rt-thread里面的结构体冲突了,改下判断条件就好了。

懒成狗的猫 发表于 2018-10-23 20:40:06

qiqirachel 发表于 2018-10-23 20:15
eclipse编译STM32看我发的帖子很容易啊,完全不需要配置啊

软件新旧版本啥的,电脑环境什么的都会导致编译环境没搭好,所以不好说啊!

qiqirachel 发表于 2018-10-23 20:42:27

懒成狗的猫 发表于 2018-10-23 20:40
软件新旧版本啥的,电脑环境什么的都会导致编译环境没搭好,所以不好说啊! ...

新建的工程编译也会报错吗???

懒成狗的猫 发表于 2018-10-24 07:56:18

qiqirachel 发表于 2018-10-23 20:42
新建的工程编译也会报错吗???

新电脑,刚搭的环境,编译器版本和eclipse c/c++版本啥的和老的不一样

zhucezhuanyong 发表于 2018-10-24 08:41:45

基本上是配置的问题,不需要修改库自带的头文件的

懒成狗的猫 发表于 2018-10-26 08:43:34

zhucezhuanyong 发表于 2018-10-24 08:41
基本上是配置的问题,不需要修改库自带的头文件的

关键参考老电脑上的配置一条条核对,也没发现哪里不一样{:sad:}

zhucezhuanyong 发表于 2018-10-26 09:06:08

#define RT_USING_LIBC
#define RT_USING_NEWLIB
这两句加没?

懒成狗的猫 发表于 2018-10-26 21:12:40

zhucezhuanyong 发表于 2018-10-26 09:06
#define RT_USING_LIBC
#define RT_USING_NEWLIB
这两句加没?

NEWLIB有LIBC没有,但是之前的老电脑同样的也没加LIBC定义

stallone007912 发表于 2018-10-26 22:16:15

MARK一下!

zhucezhuanyong 发表于 2018-10-27 09:17:18

懒成狗的猫 发表于 2018-10-26 21:12
NEWLIB有LIBC没有,但是之前的老电脑同样的也没加LIBC定义

两个都需要
页: [1]
查看完整版本: 求助:新建的eclipse开发环境,编译的时候报错重复定义unio...