SylixOS嵌入式操作系统|论坛

 找回密码
 注册
搜索
查看: 4373|回复: 2

创建应用,base报错

[复制链接]

8

主题

12

帖子

86

积分

注册会员

Rank: 2

积分
86
发表于 2021-1-28 20:10:49 | 显示全部楼层 |阅读模式
本帖最后由 xiashiwendao 于 2021-1-28 20:36 编辑

Base之前已经编译OK
创建了一个app(yasm的源码),在编译的过程发现basel工程的一个异常,很奇怪,报的异常是API_TShellOptOpt重复定义,详细信息如下,还请大牛指点:

arm-sylixos-eabi-gcc -mcpu=arm920t  -mno-unaligned-access -O0 -g3 -gdwarf-2 -Wall -fmessage-length=0 -fsigned-char -fno-short-enums -fno-strict-aliasing   -fPIC -DSYLIXOS  -I"C:\Users\Lorry_DHC\workspace\RealEvo\yasm/" -I"./Mkfiles/dj" -I"C:/Users/Lorry_DHC/workspace/RealEvo/SylinxOS_Base/libsylixos/SylixOS" -I"C:/Users/Lorry_DHC/workspace/RealEvo/SylinxOS_Base/libsylixos/SylixOS/include" -I"C:/Users/Lorry_DHC/workspace/RealEvo/SylinxOS_Base/libsylixos/SylixOS/include/network"  -MMD -MP -MF ./Debug/dep/yasm/frontends/yasm/yasm-options.d -c frontends/yasm/yasm-options.c -o Debug/obj/yasm/frontends/yasm/yasm-options.o
In file included from c:\users\lorry_dhc\workspace\realevo\sylinxos_base\libsylixos\sylixos\shell\include\ttiny_shell_api.h:31:0,
                 from C:/Users/Lorry_DHC/workspace/RealEvo/SylinxOS_Base/libsylixos/SylixOS/shell/include/ttiny_shell.h:28,
                 from C:/Users/Lorry_DHC/workspace/RealEvo/SylinxOS_Base/libsylixos/SylixOS/include/SylixOS.h:59,
                 from C:/Users/Lorry_DHC/workspace/RealEvo/SylinxOS_Base/libsylixos/SylixOS/include/stdio.h:30,
                 from C:\Users\Lorry_DHC\workspace\RealEvo\yasm/util.h:55,
                 from frontends/yasm/yasm-options.c:30:
frontends/yasm/yasm-options.c: In function 'help_msg':
c:\users\lorry_dhc\workspace\realevo\sylinxos_base\libsylixos\sylixos\shell\getopt\getopt_var.h:52:30: error: conflicting types for 'API_TShellOptOpt'
#define optopt             (*API_TShellOptOpt())
                              ^
frontends/yasm/yasm-options.c:163:23: note: in expansion of macro 'optopt'
     char optbuf[100], optopt[100];
                       ^
c:\users\lorry_dhc\workspace\realevo\sylinxos_base\libsylixos\sylixos\shell\getopt\getopt_var.h:41:30: note: previous declaration of 'API_TShellOptOpt' was here
LW_API INT                  *API_TShellOptOpt(VOID);
                              ^
make: *** [Debug/obj/yasm/frontends/yasm/yasm-options.o] Error 1

其中,yasm-options.h里面定义如下:
... ...
LW_API INT                  *API_TShellOptOpt(VOID);
... ...
#define optopt             (*API_TShellOptOpt())
... ...


回复

使用道具 举报

28

主题

51

帖子

444

积分

中级会员

Rank: 3Rank: 3

积分
444
发表于 2021-2-1 11:08:43 | 显示全部楼层
您这个问题可能是应用程序的函数声明和系统的重复定义了,建议您检查下
回复 支持 反对

使用道具 举报

8

主题

12

帖子

86

积分

注册会员

Rank: 2

积分
86
 楼主| 发表于 2021-2-1 13:52:06 | 显示全部楼层
感谢,注释掉了移植应用中的同名定义,问题解决。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|手机版|Acoinfo Inc. All Rights Reserved. ( 京ICP备15059934号

GMT+8, 2024-5-25 13:31 , Processed in 0.039112 second(s), 21 queries .

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表