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

HSL Is Disabled But Is Still Compiled into IPOPT Mex File — Do Not Understand What is Happening #777

Closed
anilvrao opened this issue Jul 1, 2024 · 6 comments

Comments

@anilvrao
Copy link

anilvrao commented Jul 1, 2024

This is a bit of a strange question.

I now have everything working to compile an IPOPT Mex file for Apple Silicon with Mumps and the HSL solvers. I am, however, getting some really strange behavior with regard to which linear solvers are enabled in the Mex file.

First, I have HSL disabled in the IPOPT configure command using the flag --without-hsl. Second, I do not compile the HSL code into my Mex file at all. Nevertheless, when I am done with the Ipopt compilation and building the Mex file, the HSL linear solvers are still part of the Mex file. I do not even have an HSL library in /usr/local/lib, so I have no idea why any linking with an HSL library is taking place. The only linear solver library I have in /usr/local/lib is libcoinmumps.a and libcoinmumps.la. Finally, when I use the mexIpopt interface built by Enrico Bertolazzi, I have not included linking to an HSL library. The Mex file builds perfectly fine but, as I said, includes the HSL solvers despite my not including them in the build.

I am wondering if anyone can help me understand why the HSL solvers are being compiled into my Mex file. Thanks for the help.

— Anil

@svigerske
Copy link
Member

As usual, we would need to see detailed logs of your build to see what is going on. Further, how did you verify "the HSL linear solvers are still part of the Mex file"?

Maybe you confuse Ipopt being built with HSL with Ipopt trying to load an HSL library dynamically at runtime.

@anilvrao
Copy link
Author

anilvrao commented Jul 2, 2024 via email

@anilvrao
Copy link
Author

anilvrao commented Jul 2, 2024 via email

@svigerske
Copy link
Member

You can configure Ipopt with --disable-linear-solver-loader to turn off the feature of dynamic loading of linear solvers. This will then also remove the possibility to choose an HSL solver or Pardiso as linear_solver.

@anilvrao
Copy link
Author

anilvrao commented Jul 2, 2024 via email

@svigerske
Copy link
Member

I could say again that we would need to see detailed logs of your build to see what is going on, but I doubt this has any effect. So I'm just going to close this, as there seem to be no real problem here anyway.

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

2 participants