More issues with compiling SALOME on Ubuntu 20.04

I am facing some issues while trying to compile the latest SALOME on Ubuntu 20.04. I am following the steps as described ob the Github repository but fail in the preparation phase.
The problem is similar to the one described in this thread, All the required packages for nlopt are installed:
libnlopt-dev libnlopt0 python3-nlopt libnlopt-cxx0 and libnlopt-cxx0

Then as proposed in the thread linked to above, I installed all the packages that were missing on my system and could be required for SALOME, according to the list UB20.txt (again from the link above). This did not change the error, it still persists.

SAT/sat -o “APPLICATION.properties.git_server=‘github’” prepare SALOME-master-native

results in :

Any thoughts?
Thanks in advance and best,
Duncan

it was missing on ftp server. Please try again, this time with:

SAT/sat -o “APPLICATION.properties.git_server='github'” prepare SALOME-master-native -p nlopt

if OK, then retry from scratch to ensure consistency:

SAT/sat -o “APPLICATION.properties.git_server='github'” prepare SALOME-master-native

Thank you so much! Preparation completed:

1 Like

Dear Nabil,
I am really interested in knowing why it does not use my native packages, like nlopt and numpy. Can you please explain?
Duncan

By default it uses the so called native prerequisite, but in case of UB20, this constraint is overwritten and nlopt 2.7.0 is used

I don’t remember why but i believe it’s a question of minmal version - needs to be ckecked though

Same statement holds in case of numpy.

HTH

I made more progress but found out that the sip build ended up in the python3.8 folder while I am running python3.9. I just copied the python3.8 folder content to the (empty) python3.9 folder.

I am still unable to compile ospray. The log file shows:


I understand the issue could be that the linker option should explicitly reference the clang library: -stdlib=libc++ instead of `-lstdc++. It is not clear to me where the original linker switch is set and where I could replace it with the alternative.

Or something… I am a bit lost :roll_eyes:

I believe you do have some environment which collides with the expected one. Can you share:

  • output of cat /etc/os-release
  • output of echo $PATH
  • output of echo $LD_LIBRARY_PATH

Hello Nabil, Your continuing help is highly appreciated!

The fact that $LD_LIBRARY_BIN is not set is probably not OK?

Best,
Duncan

Remove from PATH environment variable everything before /usr/local/bin and let us know if this fixes the reported issue.

My PATH is now:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin
Now the compilation gets stuck even in the cmake phase, while earlier I only got problems with a few modules:

I can also see that the compiler seems to have changed to g++.

It seems unable to find /usr/lib64/libpthread_nonshared.a

I am not able to find which package would contain this file. There is a libpthread.a in that particular folder though.

Can you try to :

  • recompile from scratch (wtih PATH set consistently).
  • If this does not help, get the list of installed packages with: apt list --installed > UB20.04.txt and share this file

Please have a look also at other threads about compilation with UB20.04, threads which may provide useful informations.

Hi Nabil, I tried again. With the adapted PATH I the preparation brought forward that the clang package was not installed. I installed it but compilation still is based on using g++, while originally it was based on clang. Furthermore, compilation of cmake fails because of 3 missing libraries:
/usr/bin/ld: cannot find /lib64/libc.so.6
/usr/bin/ld: cannot find /usr/lib64/libc_nonshared.a
/usr/bin/ld: cannot find /lib64/librt.so.1

The first and last one are actually in
/lib/x86_64-linux-gnu
and the second one I dont have. I searched online but cannot find anything about wich package it would belong to. I created the list of installed packages and uploaded it. Again thank you for your time and effort. Best Duncan

UB20.04.txt (339.5 KB)

I made more progress. The only packages that do not compile are ParaView and those that depend on ParaView. All the rest resolved by cleaning up the system and removing conda related stuff.

The development packages of 3.8 and 3.9 are installed but are not picked up.