KarypisLab / METIS

METIS - Serial Graph Partitioning and Fill-reducing Matrix Ordering
Other
699 stars 138 forks source link

Link shared metis lib against GKlib #52

Open catap opened 1 year ago

karypis commented 1 year ago

Will that remove the need for a 3P library to need to link with both Metis and GKlib?

catap commented 1 year ago

@karypis nope, it doesn't, see: https://github.com/KarypisLab/ParMETIS/pull/23.

I suggest to make a cmake package to make things easy.

This patch is used to allow compiling a dynamic library. Without it, it fails as:

Undefined symbols for architecture x86_64:
  "_gk_CPUSeconds", referenced from:
      _libmetis__CoarsenGraph in coarsen.c.o
      _libmetis__Match_RM in coarsen.c.o
      _libmetis__Match_SHEM in coarsen.c.o
      _CoarsenGraphNlevels in coarsen.c.o
      _libmetis__CreateCoarseGraph in coarsen.c.o
      _libmetis__Match_2HopAny in coarsen.c.o
      _libmetis__Match_2HopAll in coarsen.c.o
      ...
  "_gk_cur_jbufs", referenced from:
      _METIS_PartGraphKway in kmetis.c.o
      _METIS_MeshToDual in mesh.c.o
      _METIS_MeshToNodal in mesh.c.o
      _METIS_PartMeshNodal in meshpart.c.o
      _METIS_PartMeshDual in meshpart.c.o
      _METIS_NodeND in ometis.c.o
      _METIS_PartGraphRecursive in pmetis.c.o
      ...
...
catap commented 1 year ago

@karypis any thoughts about this one? This is the only patch that is required by MacPorts :)

I'd love to have it merged and remove all patches.

LecrisUT commented 1 year ago

79 brings in a more modern approach