问题关于undefined reference to

Mynameiswuyihao 2010-02-16 05:42:59
在linux下,我装了一个新的库,叫Gosu的2d游戏引擎。用CodeBlocks打开一个范例程序,报了很多的undefined reference to错误,程序include了gosu/gosu.hpp这个文件,我去/usr/include文件夹下,找到了gosu这个文件夹,文件夹下的文件也都是齐的。但是我不知道cpp文件都放在什么地方。安装的时候没报错。是什么原因呢?

以前也常有这种问题,不知道是怎么回事。

是不是编译器设置不对?GNU GCC Compiler。
...全文
277 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
steptodream 2010-02-16
  • 打赏
  • 举报
回复
引用 5 楼 mynameiswuyihao 的回复:
熊猫主席,爱死你了。这个东西弄了我一下午,气死了。说真的,好麻烦阿。我记得以前用windows的时候都是自动的呀

呵呵 解决了就好
Mynameiswuyihao 2010-02-16
  • 打赏
  • 举报
回复
熊猫主席,爱死你了。这个东西弄了我一下午,气死了。说真的,好麻烦阿。我记得以前用windows的时候都是自动的呀
谭海燕 2010-02-16
  • 打赏
  • 举报
回复


先看看LZ接下来的错误。

steptodream 2010-02-16
  • 打赏
  • 举报
回复
楼上的真快
.cpp 的C++文件最好用g++命令编译
.c 的c文件最好用gcc命令编译

很有可能是没有找到库的原因
Project -> Build Options -> linker settings 然后把你的库add进去
Mynameiswuyihao 2010-02-16
  • 打赏
  • 举报
回复
恩,谢谢。但是编译器能找到头文件呐,把头文件放到程序的./下干什么呢?
编译器找不到定义阿。我去看了看下载的源文件包的Makefile,我发现他cp了一个libgosu.a和一个libgosu.so这两个文件到/lib下,这两个就是定义文件吧?其他没什么特别的了。我去/lib下看了,这两个文件都在。到底是什么原因呢?
谭海燕 2010-02-16
  • 打赏
  • 举报
回复


Makefile中要使用


-I/your_dir/gosu

把你的gosu中的需要include的你自己的文件的路径-I下试试。



不过我曾经遇到了个更汗的问题。

那个才叫打击啊。

貌似是在某年某月,刚刚开始Qt入门的时候,写了一个helloworld。

结果,程序里面只有一条创建按钮语句。

我无论怎么编译,都是报undefined reference to这个错误。就连main函数也不例外。


还得我到处找原因,从库到include,一直到qmake...


找了一天,于是,一气之下把.c文件改成了.cpp。。

奇迹,

qmake

什么错误都没有了。

23,110

社区成员

发帖
与我相关
我的任务
社区描述
Linux/Unix社区 应用程序开发区
社区管理员
  • 应用程序开发区社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧