KarypisLab / METIS

METIS - Serial Graph Partitioning and Fill-reducing Matrix Ordering
Other
665 stars 134 forks source link

Make command is choosing wrong library path while compiling then failing #60

Open okpatil4u opened 1 year ago

okpatil4u commented 1 year ago

/usr/bin/gcc -DLINUX -D_FILE_OFFSET_BITS=64 -DMACOS -DNDEBUG -DNDEBUG2 -DHAVE_EXECINFO_H -DHAVE_GETLINE -O3 -arch arm64 -isysroot /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk -dynamiclib -Wl,-headerpad_max_install_names -L/opt/homebrew/opt/openblas/lib -o libmetis.dylib -install_name /Users/o/experiments/METIS/build/libmetis/libmetis.dylib CMakeFiles/metis.dir/auxapi.c.o CMakeFiles/metis.dir/balance.c.o CMakeFiles/metis.dir/bucketsort.c.o CMakeFiles/metis.dir/checkgraph.c.o CMakeFiles/metis.dir/coarsen.c.o CMakeFiles/metis.dir/compress.c.o CMakeFiles/metis.dir/contig.c.o CMakeFiles/metis.dir/debug.c.o CMakeFiles/metis.dir/fm.c.o CMakeFiles/metis.dir/fortran.c.o CMakeFiles/metis.dir/frename.c.o CMakeFiles/metis.dir/gklib.c.o CMakeFiles/metis.dir/graph.c.o CMakeFiles/metis.dir/initpart.c.o CMakeFiles/metis.dir/kmetis.c.o CMakeFiles/metis.dir/kwayfm.c.o CMakeFiles/metis.dir/kwayrefine.c.o CMakeFiles/metis.dir/mcutil.c.o CMakeFiles/metis.dir/mesh.c.o CMakeFiles/metis.dir/meshpart.c.o CMakeFiles/metis.dir/minconn.c.o CMakeFiles/metis.dir/mincover.c.o CMakeFiles/metis.dir/mmd.c.o CMakeFiles/metis.dir/ometis.c.o CMakeFiles/metis.dir/options.c.o CMakeFiles/metis.dir/parmetis.c.o CMakeFiles/metis.dir/pmetis.c.o CMakeFiles/metis.dir/refine.c.o CMakeFiles/metis.dir/separator.c.o CMakeFiles/metis.dir/sfm.c.o CMakeFiles/metis.dir/srefine.c.o CMakeFiles/metis.dir/stat.c.o CMakeFiles/metis.dir/timing.c.o CMakeFiles/metis.dir/util.c.o CMakeFiles/metis.dir/wspace.c.o -L"/Users/o/experiments/METIS/~/local/lib" -L/Users/o/local/lib

ld: warning: directory not found for option '-L/Users/o/experiments/METIS/~/local/lib' Undefined symbols for architecture arm64: "_gk_CPUSeconds", referenced from: _libmetisCoarsenGraph in coarsen.c.o _libmetisMatch_RM in coarsen.c.o _libmetisMatch_SHEM in coarsen.c.o _CoarsenGraphNlevels in coarsen.c.o _libmetisCreateCoarseGraph in coarsen.c.o _libmetisMatch_2HopAny in coarsen.c.o _libmetisMatch_2HopAll in coarsen.c.o ...

Is this how it is supposed to happen ?

nb8g13 commented 1 year ago

I get the same error on an M2, has anyone found a solution?

sgavrilovic commented 1 year ago

Same error here. MacOS (intel). Those symbols are found in the GkLib library. Seems that it is not linking to that library correctly. The solution is to apply this patch: https://github.com/KarypisLab/METIS/commit/b11f8060df869d61b8e498195857888aaa5ee51a