Dear all,
I've just compiled from source the latest elegant version 2023.4.0 & SDDS.5.6, on a cluster with almalinux 9, the GCC version is 11.4.1 20231218, and the MPICH version is mpich-4.2.1
elegant runs fine. But when I run a simple Pelegant example that computes the elegant example/parallel/DA with mpiexec -np 10 Pelegant parTrack2.ele, I got the following error information:
Error:
passed size is not equal to expected size for SDDS_DATASET structure
Passed size is 2680, library size is 2672
from all the 10 cores.
Does anyone has some clues how to solve this problem? Thanks!
Best,
Zhe
Pelegant error: passed size is not equal to expected size for SDDS_DATASET structure
Re: Pelegant error: passed size is not equal to expected size for SDDS_DATASET structure
The error comes from the SDDS library. It is saying that the library was compiled with a different SDDS.h file than Pelegant was. The first thing I would do is to run "ldd Pelegant" to see if it is linking to a shared library SDDS1.so. It may be using an older version somehow. Check the timestamp on the SDDS1.so file to see it is the one you recently compiled. Personally, I compile our programs without building SDDS1 as a shared library and only a static library. You could do this by adding SHARED_LIBRARIES=NO to your extensions/configure/CONFIG file at the bottom. But if you do, then you will have to make sure that you clear out all the *.so files that you already built. They would be in extensions/lib/linux-x86_64/
You would then recompile everything.
--Bob
You would then recompile everything.
--Bob