Topic: missing libboost-signals-mt.so in debian jessy (testing)?
chaos91 Topic Opener |
Posted at: 2013-09-09, 18:27
Hi, i'm trying to upgrade widelands via the updatescript I'm getting this error:
in my /usr/lib/ there are no libboost files with "-mt" at the end What do I have to do? Edited: 2013-09-09, 18:28
Top Quote |
QCS |
Posted at: 2013-09-10, 07:23
Debian always named their libboost files always with a -mt at the end, for whatever reason. With jessie they seem to have changed that (see http://packages.debian.org/jessie/amd64/libboost-signals1.54-dev/filelist ) Some questions: Did you update to jessie lately? Does your FindBoost.cmake (which Debian had surely changed) already try to search for non-mt files? The error is somewhere within this scope. Maybe try a new clean checkout to make sure everything is "connected" newly after a package upgrade? CMake is evil. Top Quote |
chaos91 Topic Opener |
Posted at: 2013-09-10, 15:21
i think i've installed this debian testing in Jan/2013 and haven't done a fresh install since (wheezy was released on 4. Mai 2013) (well i'm not exactly sure about this, perhaps i did a reinstall after the new kernel arrived, but there is still a libboost_signals.so.1.49.0 in /usr/lib) i believe findboost.cmake is still searching for this suffix, but well i'm a noob. At the beginning of the file, located between some explanations, i found this:
later in the text, for example:
I think thats the problem, so imho a fresh checkout shouldn't solve anything... How did it come to this situation? Or am i wrong and "set to OFF to use non-multithreaded libraries ('mt' tag)" means it will look for this suffix if set to off, and i have to do a fresh checkout? (i think i will try it this evening) greetings Edited: 2013-09-10, 15:45
Top Quote |
QCS |
Posted at: 2013-09-10, 16:10
I am just at this moment installing a new test system with Jessie to see what this all is about Please have a little patience! Thanks CMake is evil. Top Quote |
QCS |
Posted at: 2013-09-10, 17:05
Hmm...
Edited: 2013-09-10, 17:06
CMake is evil. Top Quote |
chaos91 Topic Opener |
Posted at: 2013-09-10, 17:41
same cmake version here, so I'm doing a fresh checkout atm btw. is "bzr init-repo ." really necessary? it's not mentioned at CompilingWidelands and i'm sure i didn't use it before (this time i did) Top Quote |
QCS |
Posted at: 2013-09-10, 18:18
No, bzr init-repo is not necessary. It is a habit for any developer... shared repository for different widelands branches are more convenient this way. CMake is evil. Top Quote |
hjd |
Posted at: 2013-09-10, 18:26
I don't think you need to do a new checkout, unfortunately you will need to compile WL from scratch again. I tested this on Debian Sid but I reckon the same will be true for testing. I got the same error when running update.sh, however after removing the content of the build directory and re-running compile.sh it built without any problems. I assume the issue is that it is looking for the old location of the boost libraries which of course has changed due to the update. There's been some similar errors in the past, and I guess the update script is not able to deal with path changes like this. (Also explains why it worked for QCS when attempting to reproduce it.) In general, if you run into a FTBFS (failed to build from source) issue, it can be useful to check whether it is reproducible with a clean compile. Of course, we'd still want to hear about it, in case others run into the same. Ships! Top Quote |
QCS |
Posted at: 2013-09-10, 18:42
We could also make compile.sh create a cleaning script which does basically remove the symlinks and everything in build/*. CMake is evil. Top Quote |
chaos91 Topic Opener |
Posted at: 2013-09-10, 20:32
Well, i made a fresh checkout, and it compiled without problems. thanks for your help so, if i run in this issue again, i only need to delete the build folder and run compile.sh in order to get a clean compile? Edited: 2013-09-10, 20:33
Top Quote |