PDA

View Full Version : Compiling QSA 1.2.0 fails



detheang
4th February 2006, 10:53
Hello,

first of all i'm a newbie in linux. (suse10 x86_64).
I've installed QT 4.1.0 by an rpm from
ftp://ftp.suse.com/pub/suse/x86_64/supplementary/KDE/update_for_10.0/development/
I try to compile QSA 1.2.0 in '/usr/lib/qsa-1.2.0/'
(as root: ./configure ... make)
and get this error after a few seconds:

...
make[3]: Entering directory `/usr/lib/qsa-1.2.0/examples/spreadsheet'
g++ -m64 -o spreadsheet .obj/main.o .obj/sheetinterface.o .obj/addscriptdialog.o .obj/spreadsheet.o .obj/moc_sheetinterface.o .obj/moc_addscriptdialog.o .obj/moc_spreadsheet.o .obj/qrc_spreadsheet.o -L/usr/lib64 -lqsa_debug -L../../lib -lQtGui -L/usr/lib64 -L/usr/X11R6/lib64 -L/usr/src/packages/BUILD/qt-x11-opensource-src-4.1.0/lib -lpng -lSM -lICE -lXi -lXrender -lXrandr -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lz -lm -ldl -lpthread
/usr/lib64/gcc/x86_64-suse-linux/4.0.2/../../../../x86_64-suse-linux/bin/ld: cannot find -lqsa_debug
collect2: ld returned 1 exit status
make[3]: *** [spreadsheet] Fehler 1
make[3]: Leaving directory `/usr/lib/qsa-1.2.0/examples/spreadsheet'
make[2]: *** [sub-spreadsheet-make_default] Fehler 2
make[2]: Leaving directory `/usr/lib/qsa-1.2.0/examples'
make[1]: *** [sub-examples-make_default-ordered] Fehler 2
make[1]: Leaving directory `/usr/lib/qsa-1.2.0'
make: *** [run-make] Fehler 2

For what is the parameter '-lqsa_debug'?
It isn't described anywhere!

Thanks for help!

wysota
4th February 2006, 12:38
For what is the parameter '-lqsa_debug'?
It isn't described anywhere!

It is a parameter for your compiler telling it to link with "qsa_debug" library. Apparently you don't have that library built (it should be called libqsa_debug.so).

detheang
4th February 2006, 13:37
Sorry, im new on Linux.
Should I change in
/usr/lib/qsa-x11-opensource-1.2.0/examples/spreadsheet/Makefile

the line:
LIBS = $(SUBLIBS) -L/usr/lib64 -lqsa_debug -L../../lib -lQtGui -L/usr/lib64 -L/usr/X11R6/lib64 -L/usr/src/packages/BUILD/qt-x11-opensource-src-4.1.0/lib
-lpng -lSM -lICE -lXi -lXrender -lXrandr -lXcursor -lXinerama -lfreetype -lfontconfig -lXext -lX11 -lQtCore -lz -lm -ldl -lpthread

???

What should i exactly fill in instead -lqsa_debug?
I can't find libqsa_debug.so

I also tried:
./configure
make sub-src
(ok)
make sub-examples
(same error)

jacek
4th February 2006, 14:12
I can't find libqsa_debug.so
Maybe you haven't built QSA in debug mode?

detheang
4th February 2006, 14:37
Where can I force to build an release?
I only type:
./configure
make

and both commands has no parameter to set release mode!
Should I change the makefiles?

jacek
4th February 2006, 14:42
Where can I force to build an release?
I only type:
./configure
make

and both commands has no parameter to set release mode!
What does "configure -help" prints? Did you try "configure -debug"?

detheang
4th February 2006, 14:51
configure -help prints:

...:/usr/lib/qsa-x11-opensource-1.2.0 # ./configure -help
Usage: configure [options]
Options:
-help Display this information
-thread Force a threaded configuration.
-prefix Installation prefix
-no-ide Excludes QSA Workbench from the qsa library.
-no-editor Excludes the QSA Editor from the qsa library.

In spite of this I tried -release or -debug
but it prints: unkown option.

detheang
4th February 2006, 15:36
Here is the whole log of my compilation!
82

It is strange that qt4 is installed to /usr/lib64/qt3

I'm sure that qt4 is installed, because if I try to compile:
#include <qapplication.h>
#include <qpushbutton.h>
#include <qfont.h>

int main( int argc, char **argv ) {

QApplication app( argc, argv );

QPushButton quit( "Quit!", 0 );
quit.resize( 75, 30 );
quit.setFont( QFont( "Arial", 18, QFont::Bold ) );

QObject::connect( &quit, SIGNAL(clicked()), &app, SLOT(quit()) );

app.setMainWidget( &quit );
quit.show();
return app.exec();
}

there is an error because of app.setMainWidget( &quit )

Should I deinstall the rpm of qt4 and better compile it by hand?

jacek
4th February 2006, 16:57
there is an error because of app.setMainWidget( &quit )
There is no such method in Qt4.


Should I deinstall the rpm of qt4 and better compile it by hand?
IMO this won't change anything, I've downloaded QSA and get similar problems --- it only builds the debug version and when it try to compile examples I get:
/home/users/jacek/Qt/lib/libQt3Support_debug.so.4: undefined reference to `.LC465'

I think that there's something wrong with QSA and it doesn't work with Qt 4.1.0.

detheang
4th February 2006, 18:13
I deinstalled qt4.1 and installed a fresh qt3.3(original rpm from suse).
Then I download qsa3.3 and try to compile,
but I get the same error:
...
g++ -o spreadsheet .obj/main.o .obj/sheetinterface.o .obj/spreadsheet.o .obj/addscriptdialog.o .obj/qmake_image_collection.o .obj/moc_sheetinterface.o .obj/moc_spreadsheet.o .obj/moc_addscriptdialog.o -L/usr/lib64/ -L/usr/lib/qt3/lib64/ -L/usr/X11R6/lib64/ -lqsa -L../../lib -lqt-mt -lXext -lX11 -lm -lpthread
/usr/lib64/gcc/x86_64-suse-linux/4.0.2/../../../../x86_64-suse-linux/bin/ld: cannot find -lqsa
collect2: ld returned 1 exit status
make[3]: *** [spreadsheet] Fehler 1
make[3]: Leaving directory `/usr/src/debug/qsa-x11-free-1.1.3/examples/spreadsheet'
make[2]: *** [sub-spreadsheet] Fehler 2
make[2]: Leaving directory `/usr/src/debug/qsa-x11-free-1.1.3/examples'
make[1]: *** [sub-examples] Fehler 2
make[1]: Leaving directory `/usr/src/debug/qsa-x11-free-1.1.3'
make: *** [run-make] Fehler 2

I think that qsa hates me (or it hates the suse 10 rpm ... or my x86-64)
I'm really depressed!

jacek
4th February 2006, 18:29
Maybe there is a RPM package for SuSE with QSA?

detheang
4th February 2006, 21:09
There are several rpms for suse 9.x but no for suse 10.
In spite of this, I tried to take one for suse 9.3 and it runs
without problems.

Thanks for your help.

(I hope that Qt4.1 and QSA is in OpenSuSE 10.1 already integrated)