CodeBlocks中调用外部函数出现undefined reference to 'foo'错误求助
解决CodeBlocks中"undefined reference to 'foo'"错误
这个错误属于链接错误,不是代码语法问题——你的头文件声明、函数实现代码本身都没问题,问题出在编译时没把包含foo()实现的源文件纳入项目编译流程,导致链接器找不到函数的具体实现。
解决步骤:
- 检查源文件是否在项目中:打开CodeBlocks左侧的项目管理面板,确认
anotherSourceFile.c(注意你提供的代码里文件名是anotherSourceCode.c,如果是笔误请以实际文件名为准)是否在项目的Sources目录下。如果没在,就是核心问题。 - 添加源文件到项目:右键点击项目名称 → 选择
Add files...,在弹窗里找到对应的.c源文件,选中后点击Open,确认文件出现在Sources文件夹下。 - 重新编译运行:点击工具栏的「Build and Run」按钮(或按
F9),重新编译整个项目即可。
额外注意:
如果你的源文件名实际是anotherSourceCode.c(和你描述的anotherSourceFile.c不一致),请确保文件名完全匹配,避免因拼写错误导致编译器找不到文件。
内容的提问来源于stack exchange,提问作者Dan Filban
相关产品推荐
相关产品推荐

