kahypar / mt-kahypar

Mt-KaHyPar (Multi-Threaded Karlsruhe Hypergraph Partitioner) is a shared-memory multilevel graph and hypergraph partitioner equipped with parallel implementations of techniques used in the best sequential partitioning algorithms. Mt-KaHyPar can partition extremely large hypergraphs very fast and with high quality.
MIT License
122 stars 25 forks source link

glibc++.so.6 version #144

Closed zlwu92 closed 1 year ago

zlwu92 commented 1 year ago

image Hi,

When I build and compile, I run mt-kahypar executable, I got this runtime error. I have no root access, how could I change its system link to my user path which I prepare a 30 higher version library.

larsgottesbueren commented 1 year ago

Did you compile gcc yourself as well? If so, you will have to set the appropriate glibc version. Try export LD_LIBRARY_PATH=/gcc/trunk/x86_64-unknown-linux-gnu/libstdc++-v3/src/.libs/ with the appropriate path to your compiler location.

zlwu92 commented 1 year ago

I used the gcc already provided by the HPC system, which is gcc-12 I think. I do not compile and reinstall it from source by myself.

larsgottesbueren commented 1 year ago

Ok thanks. Did you use the same compiler version to compile mt-kahypar and tbb? Also, are you able to build and run mt-kahypar on a local machine, for example your laptop?

zlwu92 commented 1 year ago

Yes I can. I think it because my system (Ubuntu22.04) libraries like GLIBCXX_ has updated version for example 3.4.30. In HPC environment they use the RedHat system which maintains old libraries for a very long time. They will not update it frequently for the purpose of system stability I guess. So how should I do if I want to run it on HPC system. Like this glibcxx.so library depends on many other system libraries actually, if update this, I think I also have to update a chain of dependent libraries also.

larsgottesbueren commented 1 year ago

Well, we don't depend on specific glibc versions ourselves. These are set by the compiler you use.