Open pnorbert opened 2 years ago
ping @jychoi-hpc since we need this for XGC at 4k runs. There is trouble loading the shared libraries into 24600 processes.
@pnorbert Interesting. I wonder if the DLL loading might be part of why I'm having trouble getting test runs at scale for SST... Let me look at the libfabric aspects.
OK, I'm going to have to punt on this. I think the answer is that both the FindLIBFABRIC.cmake and FindBlosc.cmake are insufficient to support static linking of those libraries. The same can likely be said for FindCrayDRC.cmake and DataSpaces, as they are structured like the FindLIBFABRIC.cmake. I can't speak for the other Find.cmake files in ADIOS2. @chuckatkins, just exactly how this is supposed to work, and whether or not we're at the mercy of appropriate 'tagging' in the pkg-conf file created by the libraries in question isn't clear to me, so kicking it in your direction. There are a lot of Find.cmake things out there that purport to support static linking, but they seem to be a lot more complex than these files. Hoping you've got better info than I do.
Use -static in the flags during cmake to make this work
CFLAGS="-static" CXXFLAGS="-static" FCFLAGS="-static"
This will forcibly turn off -DBUILD_SHARED_LIBS and will not allow to find any dynamic library.
Possibly solved with #3715
Two issues with
-DBUILD_SHARED_LIBS=OFF
on SummitLibfabric is found but the .so library is picked, and then later something goes wrong and libfabric is turned off.
blosc is found but the .so library is picked and used