Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Invaling MEX-file when running nomadOpt() in MATLAB interface for Linux #159

Open
ctribes opened this issue Feb 7, 2024 · 1 comment
Open

Comments

@ctribes
Copy link
Contributor

ctribes commented Feb 7, 2024

On linux, after successfully building the Matlab interface to Nomad (cmake commands) and setting the Matlab path to where the NOMAD libraries are located (Matlab addpath command) we can obtain the following error

image

This can happen even if the version of the gcc version matches the one recommended for the Matlab version at hand.

In the above example, I used gcc 11.4.1 (Red Hat 11.4.1-2) and Matlab 2023b.

@ctribes
Copy link
Contributor Author

ctribes commented Feb 7, 2024

The problem is that when Matlab starts it loads its own version of the libstdc++ library. This can be incompatible with the libstdc++ that the Nomad libraries require. In our case we have use the gcc of the system and the libraries is in /lib64

It is possible to preload some libraries while launching Matlab with the command:

LD_PRELOAD=/lib64/libstdc++.so.6 matlab

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant