Building SCIRun 5 beta Y on ubuntu 20.04 #2196
-
Hello, I was wondering if I could get a bit help building SCIRun version 5, beta version Y, on ubuntu 20.04 LTS. There seems to be some problem with libboost and python as the process gets to the point: make[5]: *** No rule to make target '/home/peter/fromnet/SCIRun-5.0-beta.Y/bin/Externals/Source/Boost_external/lib/libboost_python-mt.a', needed by 'lib/libCore_Utils.so'. Stop. It is perhaps worth noting that I have the files libboost_python38.a and libboost_python38.so in the directory /usr/lib/x86_64-linux-gnu. I have attached the complete output from build.sh as well as the CMakeCache.txt file. I am running python version 3.8.5. Interestingly, the system builds perfectly OK if I set BUILD_WITH_PYTHON to OFF. Any insights would be much appreciated. I can also provide you with more details of my system, but I am sure exactly what you need to know. Please don't hesitate to contact me if you require further information. Thanks very much, Peter. |
Beta Was this translation helpful? Give feedback.
Replies: 10 comments 1 reply
-
Thanks! I've started working on this, since there are similar build errors related to boost/python on the latest Mac/XCode tools (XCode 12.2 and Catalina/Big Sur). The Github build didn't catch them since they're still running Ubuntu 18.04. |
Beta Was this translation helpful? Give feedback.
-
Update: I have a 20.04 build with python seemingly working on the Travis build virtual machine (see here). It works with the clang compiler but not gcc. It worked with Python version 3.5.6 and 3.6.7 (which you select in the cmake setting In the meantime, you could try building with the clang compiler--7.0.0 is what the Travis machine used. |
Beta Was this translation helpful? Give feedback.
-
Thanks Dan, I am not exactly sure how to do what you are asking. At the moment, my machine says: [peter:bin] > c++ --version And: [peter:SCIRun-5.0-beta.Y] > sudo update-alternatives --config c++ Selection Path Priority Status
Using these options I get to exactly the same point in the build process as previously. Any suggestions would be most welcome. Thanks again, Peter. |
Beta Was this translation helpful? Give feedback.
-
Can you paste the initial cmake output when switching compilers? It might be better to use separate build folders, so the cmake cache doesn't interfere. The cmake setting to change is CMAKE_CXX_COMPILER. Clang should say
and gcc should say something like
Later today I am going to work on getting a clang build running locally, I will update this when I have it. |
Beta Was this translation helpful? Give feedback.
-
Thanks for continuing to look at this for me. I get the following for the C compiler: -- The C compiler identification is GNU 9.3.0 But I get nothing for gcc. Clearly, I have set up something incorrectly, but not sure what. Also, I am not sure how to change things as the output I get from c++ --version is given above. Thanks, Peter. |
Beta Was this translation helpful? Give feedback.
-
Update: I have a new Linux machine at home (with PopOs 20.10, a Ubuntu fork). I was able to get similar errors as you! So at least I can replicate this problem now more reliably. One thing I'm trying, but that didn't fix everything, is to force a clang build using some environment variables, like so:
I got this from this page https://stackoverflow.com/questions/7031126/switching-between-gcc-and-clang-llvm-using-cmake |
Beta Was this translation helpful? Give feedback.
-
Thanks for the update. I tried your suggestion. Unfortunately, I didn't get any further than I did before. It is still complaining about $SCIRun6_home/bin/Externals/Source/Boost_external/lib/libboost_python-mt.a being needed bu lib/libCore_Utils.so. |
Beta Was this translation helpful? Give feedback.
-
I think I have this build fixed on a branch, #2229. When that PR gets merged, I'll have you test again. |
Beta Was this translation helpful? Give feedback.
-
v5.0-beta.Z is official, and should build on Ubuntu 20.04 among other Linux versions. Please give it a try |
Beta Was this translation helpful? Give feedback.
-
Thanks Dan, |
Beta Was this translation helpful? Give feedback.
Thanks Dan,
It seems to work perfectly now. Thanks very much for your efforts.