• 4782阅读
  • 2回复

请教:Unix下编译不成功 [复制链接]

上一主题 下一主题
离线yuening
 
只看楼主 倒序阅读 楼主  发表于: 2009-09-27
— 本帖被 XChinux 从 Qt for Windows 移动到本区(2010-02-07) —
我在Solaris下编译Qt3的程序均不成功,程序都是书上的例子应该不会出错,例如我编译一下代码:
#include <qapplication.h>
#include <qpushbutton.h>


int main( int argc, char **argv )
{
QApplication a( argc, argv );

QPushButton hello( "Hello world!", 0 );
hello.resize( 100, 30 );

a.setMainWidget( &hello );
hello.show();
return a.exec();
}
放在一个main.cpp的文件里,然后又写了test.pro文件
SOURCES = main.cpp
CONFIG += qt warn_on release
然后qmake -o Makefile test.pro 没有出错
qmake

但是make的时候出错了, 
 sun1:scbj:> qmake test.pro
sun1:scbj:> qmake
sun1:scbj:> make
CC -xarch=v9 -o test main.o    -R/opt/qt/lib -L/opt/qt/lib -L/usr/openwin/lib -lqt -lXext -lX11 -lresolv -lsocket -lnsl
ld: :  -lqt:
ld: : test
*** Error code 1
make: Fatal error: Command failed for target `test'
请问怎么回事呀
离线浪漫天使
只看该作者 1楼 发表于: 2009-09-27
人家说了 致命的:库 -lqt 没有找到
应该是你qt的环境变量没有设置好

最好到qt的例子目录里面 找个例子 qmake后 make看看有没有类似的错误
离线yuening
只看该作者 2楼 发表于: 2009-09-27
谢谢,路径有问题,改正后还有错误:
sun1:scbj:> qmake qzcdtwf.pro
sun1:scbj:> qmake
sun1:scbj:> make
CC -c -xarch=v9 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ -g -mt  -DSYB_LP64 -DQT_THREAD_SUPPORT -DQT_SHARED -I/opt/qt/mkspecs/solaris-cc-64 -I. -I/users/scbj/apcs3000/graph/include/qt -I/users/scbj/apcs3000/include -I/opt/sybase/OCS-12_5/include -I/users/scbj/apcs3000/scada/include -I../../../include -I/usr/openwin/include -I/usr/openwin/include -I.ui/ -I.moc/ -o .obj/main.o main.cpp
"/users/scbj/apcs3000/include/qs_type.h", line 9: Warning (Anachronism): Attempt to redefine TRUE without using #undef.
"/users/scbj/apcs3000/include/qs_type.h", line 10: Warning (Anachronism): Attempt to redefine FALSE without using #undef.
2 Warning(s) detected.
CC -c -xarch=v9 -D_XOPEN_SOURCE=500 -D__EXTENSIONS__ -g -mt  -DSYB_LP64 -DQT_THREAD_SUPPORT -DQT_SHARED -I/opt/qt/mkspecs/solaris-cc-64 -I. -I/users/scbj/apcs3000/graph/include/qt -I/users/scbj/apcs3000/include -I/opt/sybase/OCS-12_5/include -I/users/scbj/apcs3000/scada/include -I../../../include -I/usr/openwin/include -I/usr/openwin/include -I.ui/ -I.moc/ -o .obj/def.o def.cpp
"/users/scbj/apcs3000/include/qs_type.h", line 9: Warning (Anachronism): Attempt to redefine TRUE without using #undef.
"/users/scbj/apcs3000/include/qs_type.h", line 10: Warning (Anachronism): Attempt to redefine FALSE without using #undef.
"def.cpp", line 2579: Warning: d hides QObject::d.
"def.cpp", line 3679: Warning: nRemotePort hides CTcpLink::nRemotePort.
4 Warning(s) detected.
test -d /users/scbj/bin/ || mkdir -p /users/scbj/bin/
CC -xarch=v9 -mt -o /users/scbj/bin/qzcdtwf .obj/main.o  .obj/def.o    -R/opt/qt/lib -L/opt/qt/lib -L/usr/openwin/lib -L/usr/openwin/lib -L/users/scbj/bin -L/opt/sybase/OCS-12_5/lib:/opt/sybase/OCS-12_5/lib3p::/users/scbj/bin:/opt/qt/lib -lsys -ldb -lrdb -lcomfunc -lscdcall -llxcom -lrcgdb -lqt-mt -lGLU -lGL -lXmu -lXext -lX11 -lresolv -lsocket -lnsl -lSM -lICE -ldl -lpthread
                  
                        
long startdb(long,long)                 .obj/def.o
ld: : . /users/scbj/bin/qzcdtwf
*** Error code 1
make: Fatal error: Command failed for target `/users/scbj/bin/qzcdtwf'
快速回复
限100 字节
 
上一个 下一个