MantisBT - Doomseeker
View Issue Details
0002714Doomseeker[All Projects] Bugpublic2016-04-30 06:572018-09-29 14:31
Matt 
Zalewa 
normalblockalways
closedunable to reproduce 
LinuxopenSUSETumbleweed
1.0 
1.11.1 
0002714: Wadseeker won't compile during the Doomseeker compilation
I am trying to package Doomseeker for openSUSE games. Can't solve the compilation problems
See'https://build.opensuse.org/package/show/home:Mailaender:branches:games:tools/doomseeker [^]'
CMakeFiles/doomseeker.dir/versiondump.cpp.o CMakeFiles/doomseeker.dir/doomseeker_automoc.cpp.o -o ../../doomseeker -rdynamic -lQtGui -lQtCore -lQtNetwork -lQtXml ../../libwadseeker.so -ldl -lQtCore -lQtNetwork -lz -lbz2 ../wadseeker/lzma/liblzma.so
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Event_Reset'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `AutoResetEvent_CreateNotSignaled'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `CriticalSection_Init'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Semaphore_Close'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Semaphore_Wait'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Thread_Wait'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Event_Close'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Thread_Create'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Event_Set'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Event_Wait'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Semaphore_ReleaseN'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Semaphore_Create'
[ 364s] ../wadseeker/lzma/liblzma.so: undefined reference to `Thread_Close'
[ 364s] collect2: error: ld returned 1 exit status
No tags attached.
Issue History
2016-04-30 06:57MattNew Issue
2016-04-30 07:37ZalewaNote Added: 0014770
2016-04-30 07:38ZalewaNote Edited: 0014770bug_revision_view_page.php?bugnote_id=14770#r8942
2016-04-30 18:32ZalewaNote Added: 0014776
2016-05-02 20:58MattNote Added: 0014799
2016-05-02 20:59ZalewaNote Added: 0014801
2016-05-25 17:29ZalewaNote Added: 0014980
2016-05-25 18:25MattNote Added: 0014982
2016-05-25 20:39ZalewaNote Added: 0014983
2016-05-25 20:39ZalewaStatusnew => closed
2016-05-25 20:39ZalewaAssigned To => Zalewa
2016-05-25 20:39ZalewaResolutionopen => unable to reproduce
2016-05-25 20:39ZalewaFixed in Version => 1.1
2018-09-29 14:30WubTheCaptainTarget Version => 1.1
2018-09-29 14:31WubTheCaptainSeveritymajor => block

Notes
(0014770)
Zalewa   
2016-04-30 07:37   
(edited on: 2016-04-30 07:38)
Interesting. If you point me how to replicate your setup I'll try to build a VM when I have some time and check out what might be wrong. I might be able to devise a proper, permanent solution then.

For now:

Your logs say that Wadseeker is unable to link against some functions in liblzma. liblzma code is attached in Doomseeker's repo. These functions are in "src\wadseeker\lzma\C\Threads.c" file but if you look into "src\wadseeker\lzma\CMakeLists.txt" you will notice that there's an if in line 25 that enables compilation of this file only on Windows. Delete this if/endif pair and see what happens.

(0014776)
Zalewa   
2016-04-30 18:32   
I just installed newest OpenSUSE and compiled Wadseeker without any problems.
(0014799)
Matt   
2016-05-02 20:58   
Where did you grab the source code and do you have a patch prepared to make version 1.0 compile on non-Windows systems?
(0014801)
Zalewa   
2016-05-02 20:59   
I cloned the official repository and compiled the newest revision with Qt5:'https://bitbucket.org/Doomseeker/doomseeker [^]'
(0014980)
Zalewa   
2016-05-25 17:29   
Seeing that you managed to get the package accepted I suppose you don't need any more help, right?
(0014982)
Matt   
2016-05-25 18:25   
Not using the %cmake macro therefore building without $RPM_OPT_FLAGS seemed to have solved it. This probably indicates some linker problems in your make files, but I don't know enough to fix them. I also switched from source code ZIP to the bitbucket tarball.
(0014983)
Zalewa   
2016-05-25 20:39   
We don't have "make files" per say. Our make files are generated by CMake basing on the dependencies defined in CMakeLists.txt. These dependencies are resolved to concrete system paths by cmake program which then generates appropriate Makefiles.

This is cool because it also works on Windows.

Anyway, because I cannot reproduce the problem on a clean system using the newest source-code checkout and because your problem is essentially resolved I'm closing this request as "unable to reproduce". Perhaps there was an error that got fixed on the way to Doomseeker 1.1.