AntaresSimulatorTeam/antares-xpansion

Find why/how to use boost and openmpi with vpkg for unix

Closed this issue · 3 comments

For Linux platforms (CentOS and Ubuntu) and specifically Ubuntu where it has been tested, there is an issue when trying to run the executable "SingleFile" coming from a workflow where boost and openmpi have been installed through vcpkg.

Here is the error:

$ ./antares-xpansion-launcher -i examples/SmallTestFiveCandidates
----------------------------------------------------------------
[Pre Antares][INFO 25-07-2024 16:58:01]  Running Antares Xpansion ... 
[Pre Antares][INFO 25-07-2024 16:58:01]  user: REDACTED
[Pre Antares][INFO 25-07-2024 16:58:01]  hostname: gm0winl477.bureau.si.interne
[Pre Antares][INFO 25-07-2024 16:58:01]  Xpansion version: 1.3.2
[Pre Antares][INFO 25-07-2024 16:58:01]  antares simulator version: 9.1
----------------------------------------------------------------
[StudyLocker][INFO 25-07-2024 16:58:01]  examples/SmallTestFiveCandidates is locked
[ConfigLoader][INFO 25-07-2024 16:58:01]  No solver defined in user/expansion/settings.ini. Cbc used
[GeneralDataProcessor][INFO 25-07-2024 16:58:01]  Pre Antares
[AntaresDriver][INFO 25-07-2024 16:58:01]  Launching antares
[AntaresDriver][INFO 25-07-2024 16:58:07]  Antares simulation duration : 0:00:05.784598
[XpansionDriver][INFO 25-07-2024 16:58:07]  Post Antares
[FullRunDriver][INFO 25-07-2024 16:58:07]  Current directory is now: /home/REDACTED/Téléchargements/v1.3.2/3/examples/SmallTestFiveCandidates/output/20240725-1658eco-Xpansion/lp
[FullRunDriver][INFO 25-07-2024 16:58:07]  Command: ['/tmp/_MEISihm3L/bin/full_run', '--benders_options', 'options.json', '-s', '/home/REDACTED/Téléchargements/v1.3.2/3/examples/SmallTestFiveCandidates/output/20240725-1658eco-Xpansion/expansion/out.json', '--solver', 'benders', '-a', '/home/REDACTED/Téléchargements/v1.3.2/3/examples/SmallTestFiveCandidates/output/20240725-1658eco.zip', '-f', 'integer', '-e', '/home/REDACTED/Téléchargements/v1.3.2/3/examples/SmallTestFiveCandidates/user/expansion/constraints/contraintes.txt']
Full Run
PATH: /home/REDACTED/.nvm/versions/node/v20.4.0/bin:/home/REDACTED/.local/bin:/home/REDACTED/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin:/home/REDACTED/clion/beta/bin/:/home/REDACTED/bin:/home/REDACTED/opt/bin:/home/REDACTED/opt/cmake-3.22.6/bin:/home/REDACTED/opt/ccache:/home/REDACTED/opt/xpressmp/bin:/home/REDACTED/CLionProjects/iwyu/build/bin:/home/REDACTED/opt:/home/REDACTED/opt/firefox:/home/REDACTED/opt/heaptrack/bin:/home/REDACTED/clion/beta/bin/:/home/REDACTED/bin:/home/REDACTED/opt/bin:/home/REDACTED/opt/cmake-3.22.6/bin:/home/REDACTED/opt/ccache:/home/REDACTED/CLionProjects/iwyu/build/bin:/home/REDACTED/opt:/home/REDACTED/opt/firefox:/home/REDACTED/opt/heaptrack/bin
LD_LIBRARY_PATH: /tmp/_MEISihm3L::/lib/x86_64-linux-gnu/:/home/REDACTED/opt/xpressmp/lib:/lib/x86_64-linux-gnu/
--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    opal_init:startup:internal-failure
But I couldn't open the help file:
    /home/runner/work/antares-xpansion/antares-xpansion/_build/vcpkg_installed/x64-linux/share/openmpi/openmpi/help-opal-runtime.txt: No such file or directory.  Sorry!
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    orte_init:startup:internal-failure
But I couldn't open the help file:
    /home/runner/work/antares-xpansion/antares-xpansion/_build/vcpkg_installed/x64-linux/share/openmpi/openmpi/help-orte-runtime: No such file or directory.  Sorry!
--------------------------------------------------------------------------
--------------------------------------------------------------------------
Sorry!  You were supposed to get help about:
    mpi_init:startup:internal-failure
But I couldn't open the help file:
    /home/runner/work/antares-xpansion/antares-xpansion/_build/vcpkg_installed/x64-linux/share/openmpi/openmpi/help-mpi-runtime.txt: No such file or directory.  Sorry!
--------------------------------------------------------------------------
*** An error occurred in MPI_Init
*** on a NULL communicator
*** MPI_ERRORS_ARE_FATAL (processes in this communicator will now abort,
***    and potentially your MPI job)
[gm0winl477.bureau.si.interne:616339] Local abort before MPI_INIT completed completed successfully, but am not able to aggregate error messages, and not able to guarantee that all other processes were killed!
Traceback (most recent call last):
  File "launch.py", line 51, in <module>
  File "antares_xpansion/driver.py", line 79, in launch
  File "antares_xpansion/full_run_driver.py", line 60, in launch
  File "antares_xpansion/full_run_driver.py", line 74, in run
antares_xpansion.full_run_driver.FullRunExecutionError: ERROR: exited /tmp/_MEISihm3L/bin/full_run with status 1
[616312] Failed to execute script 'launch' due to unhandled exception!

It doesn't occur when using "classic" assets. It also doesn't occurs when building a "SingleFile" executable locally

Some ideas :
Try execution with a valid LD_LIBRARY_PATH
Try to use boost with vcpkg but keep building openmpi
Try to clear LD_LIBRARY_PATH/PATH from vcpkg path when building pyexe
Same but look at rpath

To extract an executable generated by pyinstaller one can use https://github.com/extremecoders-re/pyinstxtractor/blob/master/pyinstxtractor.py

Je suis hautement intéressé !

The issue stem from a difference in behavior between different version of pyinstaller, namely version 4 and 6.

Difference centOS and ubuntu

Requirement.txt set pyinstaller version to 4.3 and above. On CentOS we were "stuck" with version 4. On ubuntu we could get the latest version 6.9.0. This is why we didn't encounter any issue with centOS and only with ubuntu.

Description of the issue

By extracting the content of the pyinstaller archive we could observe two things depending on the plateform, or more accurately depending on the version of pyinstaller. In short: pyinstaller 6.x also copy libraries in the root of the archive.

6.x with openMPI and boost build manually or system

ls **
base_library.zip                     libsirius_solver.so
config.yaml                          libssl.so.1.1
launch.pyc                           libstdc++.so.6
libbz2.so.1.0                        libtinfo.so.6
libcrypto.so.1.1                     libuuid.so.1
libffi.so.7                          libz.so.1
libgcc_s.so.1                        pyiboot01_bootstrap.pyc
libgfortran-040039e1.so.5.0.0        pyimod01_archive.pyc
liblzma.so.5                         pyimod02_importers.pyc
libmpi.so.40                         pyimod03_ctypes.pyc
libncursesw.so.6                     pyi_rth_inspect.pyc
libopenblas64_p-r0-15028c96.3.21.so  pyi_rth_multiprocessing.pyc
libopen-pal.so.40                    pyi_rth_pkgres.pyc
libopen-rte.so.40                    pyi_rth_pkgutil.pyc
libpython3.8.so.1.0                  PYZ-00.pyz
libquadmath-96973f99.so.0.0.0        struct.pyc
libreadline.so.8

bin:
antares_archive_updater  libboost_program_options.a  merge_mps
antares-solver           libboost_serialization.a    outer_loop
benders                  libjsoncpp.a                sensitivity
full_run                 libsirius_solver.so         xpansion-study-updater
libboost_mpi.a           lp_namer

lib-dynload:
array.cpython-38-x86_64-linux-gnu.so
_asyncio.cpython-38-x86_64-linux-gnu.so
binascii.cpython-38-x86_64-linux-gnu.so
_bisect.cpython-38-x86_64-linux-gnu.so
_blake2.cpython-38-x86_64-linux-gnu.so
_bz2.cpython-38-x86_64-linux-gnu.so
_codecs_cn.cpython-38-x86_64-linux-gnu.so
_codecs_hk.cpython-38-x86_64-linux-gnu.so
_codecs_iso2022.cpython-38-x86_64-linux-gnu.so
_codecs_jp.cpython-38-x86_64-linux-gnu.so
_codecs_kr.cpython-38-x86_64-linux-gnu.so
_codecs_tw.cpython-38-x86_64-linux-gnu.so
_contextvars.cpython-38-x86_64-linux-gnu.so
_csv.cpython-38-x86_64-linux-gnu.so
_ctypes.cpython-38-x86_64-linux-gnu.so
_curses.cpython-38-x86_64-linux-gnu.so
_datetime.cpython-38-x86_64-linux-gnu.so
_decimal.cpython-38-x86_64-linux-gnu.so
fcntl.cpython-38-x86_64-linux-gnu.so
grp.cpython-38-x86_64-linux-gnu.so
_hashlib.cpython-38-x86_64-linux-gnu.so
_heapq.cpython-38-x86_64-linux-gnu.so
_json.cpython-38-x86_64-linux-gnu.so
_lzma.cpython-38-x86_64-linux-gnu.so
math.cpython-38-x86_64-linux-gnu.so
_md5.cpython-38-x86_64-linux-gnu.so
mmap.cpython-38-x86_64-linux-gnu.so
_multibytecodec.cpython-38-x86_64-linux-gnu.so
_multiprocessing.cpython-38-x86_64-linux-gnu.so
_opcode.cpython-38-x86_64-linux-gnu.so
_pickle.cpython-38-x86_64-linux-gnu.so
_posixshmem.cpython-38-x86_64-linux-gnu.so
_posixsubprocess.cpython-38-x86_64-linux-gnu.so
pyexpat.cpython-38-x86_64-linux-gnu.so
_queue.cpython-38-x86_64-linux-gnu.so
_random.cpython-38-x86_64-linux-gnu.so
readline.cpython-38-x86_64-linux-gnu.so
resource.cpython-38-x86_64-linux-gnu.so
select.cpython-38-x86_64-linux-gnu.so
_sha1.cpython-38-x86_64-linux-gnu.so
_sha256.cpython-38-x86_64-linux-gnu.so
_sha3.cpython-38-x86_64-linux-gnu.so
_sha512.cpython-38-x86_64-linux-gnu.so
_socket.cpython-38-x86_64-linux-gnu.so
_ssl.cpython-38-x86_64-linux-gnu.so
_struct.cpython-38-x86_64-linux-gnu.so
termios.cpython-38-x86_64-linux-gnu.so
unicodedata.cpython-38-x86_64-linux-gnu.so
_uuid.cpython-38-x86_64-linux-gnu.so
zlib.cpython-38-x86_64-linux-gnu.so

numpy:
core  fft  linalg  random

numpy.libs:
libgfortran-040039e1.so.5.0.0        libquadmath-96973f99.so.0.0.0
libopenblas64_p-r0-15028c96.3.21.so

psutil:
_psutil_linux.cpython-38-x86_64-linux-gnu.so
_psutil_posix.cpython-38-x86_64-linux-gnu.so

PYZ-00.pyz_extracted:
antares_xpansion     optparse.pyc
argparse.pyc         _osx_support.pyc
ast.pyc              packaging
asyncio              pathlib.pyc
base64.pyc           pdb.pyc
bdb.pyc              pickle.pyc
bisect.pyc           pkg_resources
bz2.pyc              pkgutil.pyc
calendar.pyc         platform.pyc
cmd.pyc              plistlib.pyc
codeop.pyc           pprint.pyc
code.pyc             psutil
_compat_pickle.pyc   _py_abc.pyc
_compression.pyc     py_compile.pyc
concurrent           _pydecimal.pyc
configparser.pyc     pydoc_data
contextlib.pyc       pydoc.pyc
contextvars.pyc      _pyi_rth_utils
copy.pyc             queue.pyc
csv.pyc              quopri.pyc
ctypes               random.pyc
curses               runpy.pyc
dataclasses.pyc      secrets.pyc
datetime.pyc         selectors.pyc
decimal.pyc          shlex.pyc
difflib.pyc          shutil.pyc
dis.pyc              signal.pyc
distutils            socket.pyc
doctest.pyc          socketserver.pyc
dummy_threading.pyc  ssl.pyc
_dummy_thread.pyc    stringprep.pyc
email                string.pyc
fnmatch.pyc          _strptime.pyc
ftplib.pyc           subprocess.pyc
__future__.pyc       _sysconfigdata__linux_x86_64-linux-gnu.pyc
getopt.pyc           sysconfig.pyc
getpass.pyc          tarfile.pyc
gettext.pyc          tempfile.pyc
glob.pyc             textwrap.pyc
gzip.pyc             _threading_local.pyc
hashlib.pyc          threading.pyc
hmac.pyc             tokenize.pyc
html                 token.pyc
http                 tracemalloc.pyc
importlib            tty.pyc
imp.pyc              typing.pyc
inspect.pyc          unittest
json                 urllib
logging              uuid.pyc
lzma.pyc             uu.pyc
mimetypes.pyc        webbrowser.pyc
multiprocessing      xml
netrc.pyc            xmlrpc
nturl2path.pyc       yaml
numbers.pyc          zipfile.pyc
numpy                zipimport.pyc
opcode.pyc

yaml:
_yaml.cpython-38-x86_64-linux-gnu.so

We can see that **libmpi.so.40 ** appears at the root of the archive

6.x with openMPI and boost build manually or system

ls **
base_library.zip                     libopen-rte.so.40
config.yaml                          libpython3.8.so.1.0
launch.pyc                           libquadmath-96973f99.so.0.0.0
libboost_mpi.so.1.81.0               libreadline.so.8
libboost_program_options.so.1.81.0   libsirius_solver.so
libboost_serialization.so.1.81.0     libssl.so.1.1
libbz2.so.1.0                        libstdc++.so.6
libcrypto.so.1.1                     libtinfo.so.6
libffi.so.7                          libuuid.so.1
libgcc_s.so.1                        libz.so.1
libgfortran-040039e1.so.5.0.0        pyiboot01_bootstrap.pyc
liblzma.so.5                         pyimod01_archive.pyc
libmca_common_dstore.so.1            pyimod02_importers.pyc
libmca_common_monitoring.so.50       pyimod03_ctypes.pyc
libmca_common_ompio.so.41            pyi_rth_inspect.pyc
libmca_common_sm.so.40               pyi_rth_multiprocessing.pyc
libmpi.so.40                         pyi_rth_pkgres.pyc
libncursesw.so.6                     pyi_rth_pkgutil.pyc
libopenblas64_p-r0-15028c96.3.21.so  PYZ-00.pyz
libopen-pal.so.40                    struct.pyc

bin:
antares_archive_updater             libjsoncpp.a
antares-solver                      libsirius_solver.so
benders                             lp_namer
full_run                            merge_mps
libboost_mpi.so                     ompi_monitoring_prof.so
libboost_mpi.so.1.81.0              openmpi
libboost_program_options.so         outer_loop
libboost_program_options.so.1.81.0  pmix
libboost_serialization.so           sensitivity
libboost_serialization.so.1.81.0    xpansion-study-updater

lib-dynload:
array.cpython-38-x86_64-linux-gnu.so
_asyncio.cpython-38-x86_64-linux-gnu.so
binascii.cpython-38-x86_64-linux-gnu.so
_bisect.cpython-38-x86_64-linux-gnu.so
_blake2.cpython-38-x86_64-linux-gnu.so
_bz2.cpython-38-x86_64-linux-gnu.so
_codecs_cn.cpython-38-x86_64-linux-gnu.so
_codecs_hk.cpython-38-x86_64-linux-gnu.so
_codecs_iso2022.cpython-38-x86_64-linux-gnu.so
_codecs_jp.cpython-38-x86_64-linux-gnu.so
_codecs_kr.cpython-38-x86_64-linux-gnu.so
_codecs_tw.cpython-38-x86_64-linux-gnu.so
_contextvars.cpython-38-x86_64-linux-gnu.so
_csv.cpython-38-x86_64-linux-gnu.so
_ctypes.cpython-38-x86_64-linux-gnu.so
_curses.cpython-38-x86_64-linux-gnu.so
_datetime.cpython-38-x86_64-linux-gnu.so
_decimal.cpython-38-x86_64-linux-gnu.so
fcntl.cpython-38-x86_64-linux-gnu.so
grp.cpython-38-x86_64-linux-gnu.so
_hashlib.cpython-38-x86_64-linux-gnu.so
_heapq.cpython-38-x86_64-linux-gnu.so
_json.cpython-38-x86_64-linux-gnu.so
_lzma.cpython-38-x86_64-linux-gnu.so
math.cpython-38-x86_64-linux-gnu.so
_md5.cpython-38-x86_64-linux-gnu.so
mmap.cpython-38-x86_64-linux-gnu.so
_multibytecodec.cpython-38-x86_64-linux-gnu.so
_multiprocessing.cpython-38-x86_64-linux-gnu.so
_opcode.cpython-38-x86_64-linux-gnu.so
_pickle.cpython-38-x86_64-linux-gnu.so
_posixshmem.cpython-38-x86_64-linux-gnu.so
_posixsubprocess.cpython-38-x86_64-linux-gnu.so
pyexpat.cpython-38-x86_64-linux-gnu.so
_queue.cpython-38-x86_64-linux-gnu.so
_random.cpython-38-x86_64-linux-gnu.so
readline.cpython-38-x86_64-linux-gnu.so
resource.cpython-38-x86_64-linux-gnu.so
select.cpython-38-x86_64-linux-gnu.so
_sha1.cpython-38-x86_64-linux-gnu.so
_sha256.cpython-38-x86_64-linux-gnu.so
_sha3.cpython-38-x86_64-linux-gnu.so
_sha512.cpython-38-x86_64-linux-gnu.so
_socket.cpython-38-x86_64-linux-gnu.so
_ssl.cpython-38-x86_64-linux-gnu.so
_struct.cpython-38-x86_64-linux-gnu.so
termios.cpython-38-x86_64-linux-gnu.so
unicodedata.cpython-38-x86_64-linux-gnu.so
_uuid.cpython-38-x86_64-linux-gnu.so
zlib.cpython-38-x86_64-linux-gnu.so

numpy:
core  fft  linalg  random

numpy.libs:
libgfortran-040039e1.so.5.0.0        libquadmath-96973f99.so.0.0.0
libopenblas64_p-r0-15028c96.3.21.so

psutil:
_psutil_linux.cpython-38-x86_64-linux-gnu.so
_psutil_posix.cpython-38-x86_64-linux-gnu.so

PYZ-00.pyz_extracted:
antares_xpansion     optparse.pyc
argparse.pyc         _osx_support.pyc
ast.pyc              packaging
asyncio              pathlib.pyc
base64.pyc           pdb.pyc
bdb.pyc              pickle.pyc
bisect.pyc           pkg_resources
bz2.pyc              pkgutil.pyc
calendar.pyc         platform.pyc
cmd.pyc              plistlib.pyc
codeop.pyc           pprint.pyc
code.pyc             psutil
_compat_pickle.pyc   _py_abc.pyc
_compression.pyc     py_compile.pyc
concurrent           _pydecimal.pyc
configparser.pyc     pydoc_data
contextlib.pyc       pydoc.pyc
contextvars.pyc      _pyi_rth_utils
copy.pyc             queue.pyc
csv.pyc              quopri.pyc
ctypes               random.pyc
curses               runpy.pyc
dataclasses.pyc      secrets.pyc
datetime.pyc         selectors.pyc
decimal.pyc          shlex.pyc
difflib.pyc          shutil.pyc
dis.pyc              signal.pyc
distutils            socket.pyc
doctest.pyc          socketserver.pyc
dummy_threading.pyc  ssl.pyc
_dummy_thread.pyc    stringprep.pyc
email                string.pyc
fnmatch.pyc          _strptime.pyc
ftplib.pyc           subprocess.pyc
__future__.pyc       _sysconfigdata__linux_x86_64-linux-gnu.pyc
getopt.pyc           sysconfig.pyc
getpass.pyc          tarfile.pyc
gettext.pyc          tempfile.pyc
glob.pyc             textwrap.pyc
gzip.pyc             _threading_local.pyc
hashlib.pyc          threading.pyc
hmac.pyc             tokenize.pyc
html                 token.pyc
http                 tracemalloc.pyc
importlib            tty.pyc
imp.pyc              typing.pyc
inspect.pyc          unittest
json                 urllib
logging              uuid.pyc
lzma.pyc             uu.pyc
mimetypes.pyc        webbrowser.pyc
multiprocessing      xml
netrc.pyc            xmlrpc
nturl2path.pyc       yaml
numbers.pyc          zipfile.pyc
numpy                zipimport.pyc
opcode.pyc

yaml:
_yaml.cpython-38-x86_64-linux-gnu.so

Here we can see that boost libraries are present in bin but also at the root of archive

4.x

ls **
base_library.zip                     libssl.so.1.1
config.yaml                          libtinfo.so.6
launch.pyc                           libuuid.so.1
libbz2.so.1.0                        libz.so.1
libcrypto.so.1.1                     pyiboot01_bootstrap.pyc
libffi.so.7                          pyimod01_os_path.pyc
libgcc_s.so.1                        pyimod02_archive.pyc
libgfortran-040039e1.so.5.0.0        pyimod03_importers.pyc
liblzma.so.5                         pyi_rth_multiprocessing.pyc
libncursesw.so.6                     pyi_rth_pkgres.pyc
libopenblas64_p-r0-15028c96.3.21.so  PYZ-00.pyz
libpython3.8.so.1.0                  _struct.cpython-38-x86_64-linux-gnu.so
libquadmath-96973f99.so.0.0.0        struct.pyc
libreadline.so.8                     zlib.cpython-38-x86_64-linux-gnu.so

bin:
antares_archive_updater             libjsoncpp.a
antares-solver                      libsirius_solver.so
benders                             lp_namer
full_run                            merge_mps
libboost_mpi.so                     ompi_monitoring_prof.so
libboost_mpi.so.1.81.0              openmpi
libboost_program_options.so         outer_loop
libboost_program_options.so.1.81.0  pmix
libboost_serialization.so           sensitivity
libboost_serialization.so.1.81.0    xpansion-study-updater

lib-dynload:
array.cpython-38-x86_64-linux-gnu.so
_asyncio.cpython-38-x86_64-linux-gnu.so
binascii.cpython-38-x86_64-linux-gnu.so
_bisect.cpython-38-x86_64-linux-gnu.so
_blake2.cpython-38-x86_64-linux-gnu.so
_bz2.cpython-38-x86_64-linux-gnu.so
_codecs_cn.cpython-38-x86_64-linux-gnu.so
_codecs_hk.cpython-38-x86_64-linux-gnu.so
_codecs_iso2022.cpython-38-x86_64-linux-gnu.so
_codecs_jp.cpython-38-x86_64-linux-gnu.so
_codecs_kr.cpython-38-x86_64-linux-gnu.so
_codecs_tw.cpython-38-x86_64-linux-gnu.so
_contextvars.cpython-38-x86_64-linux-gnu.so
_csv.cpython-38-x86_64-linux-gnu.so
_ctypes.cpython-38-x86_64-linux-gnu.so
_curses.cpython-38-x86_64-linux-gnu.so
_datetime.cpython-38-x86_64-linux-gnu.so
_decimal.cpython-38-x86_64-linux-gnu.so
fcntl.cpython-38-x86_64-linux-gnu.so
grp.cpython-38-x86_64-linux-gnu.so
_hashlib.cpython-38-x86_64-linux-gnu.so
_heapq.cpython-38-x86_64-linux-gnu.so
_json.cpython-38-x86_64-linux-gnu.so
_lzma.cpython-38-x86_64-linux-gnu.so
math.cpython-38-x86_64-linux-gnu.so
_md5.cpython-38-x86_64-linux-gnu.so
mmap.cpython-38-x86_64-linux-gnu.so
_multibytecodec.cpython-38-x86_64-linux-gnu.so
_multiprocessing.cpython-38-x86_64-linux-gnu.so
_opcode.cpython-38-x86_64-linux-gnu.so
_pickle.cpython-38-x86_64-linux-gnu.so
_posixshmem.cpython-38-x86_64-linux-gnu.so
_posixsubprocess.cpython-38-x86_64-linux-gnu.so
pyexpat.cpython-38-x86_64-linux-gnu.so
_queue.cpython-38-x86_64-linux-gnu.so
_random.cpython-38-x86_64-linux-gnu.so
readline.cpython-38-x86_64-linux-gnu.so
resource.cpython-38-x86_64-linux-gnu.so
select.cpython-38-x86_64-linux-gnu.so
_sha1.cpython-38-x86_64-linux-gnu.so
_sha256.cpython-38-x86_64-linux-gnu.so
_sha3.cpython-38-x86_64-linux-gnu.so
_sha512.cpython-38-x86_64-linux-gnu.so
_socket.cpython-38-x86_64-linux-gnu.so
_ssl.cpython-38-x86_64-linux-gnu.so
_struct.cpython-38-x86_64-linux-gnu.so
termios.cpython-38-x86_64-linux-gnu.so
unicodedata.cpython-38-x86_64-linux-gnu.so
_uuid.cpython-38-x86_64-linux-gnu.so
zlib.cpython-38-x86_64-linux-gnu.so

numpy:
core  fft  linalg  random

psutil:
_psutil_linux.cpython-38-x86_64-linux-gnu.so
_psutil_posix.cpython-38-x86_64-linux-gnu.so

PYZ-00.pyz_extracted:
antares_xpansion     optparse.pyc
argparse.pyc         os.pyc
ast.pyc              _osx_support.pyc
asyncio              packaging
base64.pyc           pathlib.pyc
bdb.pyc              pdb.pyc
bisect.pyc           pickle.pyc
bz2.pyc              pkg_resources
calendar.pyc         pkgutil.pyc
cmd.pyc              platform.pyc
codeop.pyc           plistlib.pyc
code.pyc             posixpath.pyc
_compat_pickle.pyc   pprint.pyc
_compression.pyc     psutil
concurrent           _py_abc.pyc
configparser.pyc     py_compile.pyc
contextlib.pyc       _pydecimal.pyc
contextvars.pyc      pydoc_data
copy.pyc             pydoc.pyc
csv.pyc              queue.pyc
ctypes               quopri.pyc
curses               random.pyc
dataclasses.pyc      runpy.pyc
datetime.pyc         secrets.pyc
decimal.pyc          selectors.pyc
difflib.pyc          shlex.pyc
dis.pyc              shutil.pyc
distutils            signal.pyc
doctest.pyc          socket.pyc
dummy_threading.pyc  socketserver.pyc
_dummy_thread.pyc    ssl.pyc
email                stat.pyc
fnmatch.pyc          stringprep.pyc
ftplib.pyc           string.pyc
__future__.pyc       _strptime.pyc
genericpath.pyc      subprocess.pyc
getopt.pyc           _sysconfigdata__linux_x86_64-linux-gnu.pyc
getpass.pyc          sysconfig.pyc
gettext.pyc          tarfile.pyc
glob.pyc             tempfile.pyc
gzip.pyc             textwrap.pyc
hashlib.pyc          _threading_local.pyc
hmac.pyc             threading.pyc
html                 tokenize.pyc
http                 token.pyc
importlib            tracemalloc.pyc
imp.pyc              tty.pyc
inspect.pyc          typing.pyc
json                 unittest
logging              urllib
lzma.pyc             uuid.pyc
mimetypes.pyc        uu.pyc
multiprocessing      webbrowser.pyc
netrc.pyc            xml
ntpath.pyc           xmlrpc
nturl2path.pyc       yaml
numbers.pyc          zipfile.pyc
numpy                zipimport.pyc
opcode.pyc

yaml:
_yaml.cpython-38-x86_64-linux-gnu.so

Neither lib mpi nor boost apear in the root of the archive

Fix

We pin pyinstaller dependency at 4.3.
We could try to understand pyinstaller behaviour, but we would still have different version between plateforms. Give the difference in behaviour it is best to pin a common version.