Linux下GCC编程,虽然函数已定义,但依旧提示未定义,怎么破
好几个C文件,一起编译,函数都是定义好的,.H文件里面也有声明但是。。。
root@kali:/home/GUI# gcc main.c WINDOWS.C LCMDRV.C GUI_STOCKC.C GUI_BASIC.C FONT5_7.C FONT8_8.C FONT24_32.C LOADBIT.C MENU.C -o lcd
/tmp/ccwqRKjM.o: In function `main':
main.c:(.text+0x1e): undefined reference to `GUI_Initialize'
main.c:(.text+0x26): undefined reference to `GUI_SetColor'
main.c:(.text+0x2e): undefined reference to `GUI_WindowsDraw'
main.c:(.text+0x32): undefined reference to `GUI_Exec'
collect2: error: ld returned 1 exit status
新手,求解~ 楼主能分清编译和链接的区别吗?那个错误是链接的时候出的。应该先用gcc把.c文件编译成.o然后再链接成可执行文件。 dawanpi 发表于 2016-5-15 16:38
楼主能分清编译和链接的区别吗?那个错误是链接的时候出的。应该先用gcc把.c文件编译成.o然后再链接成可执 ...
已试,无效,提示错误还是那样 xiaoyigechaos 发表于 2016-5-15 16:40
已试,无效,提示错误还是那样
命令发上来,多个文件最好makefile 你定义了os支持,这个需要自己实现, 换clang试试 tangnyzl 发表于 2016-5-15 18:03
你定义了os支持,这个需要自己实现,
os支持是什么意思?请明示 GUI_Initialize 是在库里面实现的吗?没有制定要链接的库? 我再回复一次算了,我在ubuntu mate 16.04 64位版本中遇到同样的问题,我用clang编译器则同样的问题消失。也就是说同样的程序使用clang能够正常编译,而gcc就出现楼主位相同的错误。 没用过帮顶 头文件 没加入到编译吧 xiaoyigechaos 发表于 2016-5-15 18:16
os支持是什么意思?请明示
ucgui有个刷新的任务,如果配置时支持操作系统, 就需要开一个任务,来周期性地调用这个函数,修改
/*********************************************************************
*
* Multi tasking support
*/
#define GUI_OS (0)// Compile with multitasking support
估计就不需要了 这个肯定是没编译 monkhooder 发表于 2016-5-15 19:43
我再回复一次算了,我在ubuntu mate 16.04 64位版本中遇到同样的问题,我用clang编译器则同样的问题消失。 ...
好的,我试试看 tangnyzl 发表于 2016-5-15 20:08
ucgui有个刷新的任务,如果配置时支持操作系统, 就需要开一个任务,来周期性地调用这个函数,修改
/*** ...
是ZLG GUI 好像没有这个宏 728196 发表于 2016-5-15 20:00
头文件 没加入到编译吧
也试过了…… abutter 发表于 2016-5-15 19:23
GUI_Initialize 是在库里面实现的吗?没有制定要链接的库?
不是库,是自己写的函数 oooios 发表于 2016-5-15 19:48
没用过帮顶
谢谢 本帖最后由 tangnyzl 于 2016-5-15 20:50 编辑
我还以为是 ucgui , ZLG GUI是个玩具, 玩玩可以,用在项目上的风险有点大,n年以前玩过, n》5,发现不稳定,就放弃了,后来改用emwin +lpc,还免版权费 tangnyzl 发表于 2016-5-15 20:48
我还以为是 ucgui , ZLG GUI是个玩具, 玩玩可以,用在项目上的风险有点大,n年以前玩过, n》5,发现不 ...
Linux编程我还是新手,拿来玩玩的,但是现在好像玩不动…… xiaoyigechaos 发表于 2016-5-15 20:46
不是库,是自己写的函数
那在哪个文件里面定义的? 链接顺序错也可能找不到 abutter 发表于 2016-5-16 15:03
那在哪个文件里面定义的?
LCMDRV.C 这个文件里 xwkm 发表于 2016-5-16 15:58
链接顺序错也可能找不到
之前也尝试调整一下文件的顺序了,好像不奏效
页:
[1]