㈠ linux下 用qt creator 编译程序 提示错误,请高手指导
缺少g++ 安装C编译器 如果你是UBUNTU 你就用 #sudo apt-get install g++
㈡ Qt中的编译错误
No rule to make target `../laying_out_widgets.cpp', needed by `debug/laying_out_widgets.o'. Stop.
这个是说你的Makefile文件里面没有提供laying_out_widgets.cpp的编译规则。
不知道你是自己写的Makefile还是自动生成的Makefile,总之就是这个Makefile有点问题。相应的增加laying_out_widgets.cpp的编译规则就可以了。
在工程里面添加laying_out_widgets.cpp文件就可以了 ,会重新自动生成新的Makefile。
㈢ Qt程序的一个编译错误
endl; 去掉,它需要 #include<iostream> using namespace std;
qDebug() 会自动换行
㈣ QT中执行make时错误
这种问题解决方法如下:
执行sudo apt-get install libXrender-dev命令,安装相应的lib文件。
所以最好在编译Qt原码前先执行以下命令:
sudo apt-get install libglib2.0-dev libSM-dev libxrender-dev libfontconfig1-dev libxext-dev
sudo apt-get install libglui-dev
安装相应的lib文件,防止编译出错。
再上网搜索一下,发现在Linux下编译应用程序常常会出现如下错误:
/usr/bin/ld:cannot find -lxxx
意思是编译过程找不到对应库文件。其中-lxxx表示链接库文件libxxx.so。
一般出现这种错误有以下几种原因:
1.系统缺乏对应的库文件
2.库文件版本不对应
3.库文件链接错误
4.库文件路径设置不正确
对于前2种情况,可以通过下载安装lib来解决:
sudo apt-get install libxxx-dev(上面编译Qt的情况大多是这样)
而对于第3种情况,通过find或者locate命令定位到链接文件,查看链接文件是否正确的指向了lib文件。如果不是,用 ln -sf */libxxx.so.x */libxxx.so 命令修改。
对于最后一种情况,可以到/etc/ld.so.conf.d目录下,修改其中任意一份conf文件(也可自建conf),将lib所在的目录写进去,然后在终端输入ldconfig更新缓存。
希望可以帮助你