代码是数据结构堆栈的实现,原本是整合在一个源码文件,可以编译运行。
现在打算把代码拆分成头文件,函数实现,main 三个部分,让代码可重用。
编译时出现下面错误,链接时出错。请问多个文件要如何用 gcc 编译呢?
➜ stack git:(master) gcc main.c stack.c
Undefined symbols for architecture x86_64:
"_init_stack", referenced from:
_main in main-3b4501.o
_decimal_to_base_n in stack-776e03.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
代码在这
1
billlee 2015-06-09 02:31:48 +08:00 1
你忘了实现 init_stack() 了.
|
2
evlos 2015-06-09 05:04:27 +08:00
写 makefile (我是 C 语言渣渣,仅供参考
|
3
zhjits 2015-06-09 07:32:12 +08:00
main.c 和 stack.c 里面都要 #include <stack.h>
|