MPSolve icon indicating copy to clipboard operation
MPSolve copied to clipboard

Problem with installing MPsolve for Matlab

Open mahradsv opened this issue 2 years ago • 2 comments

I am using MacBook Pro and after entering "./configure" on terminal, I receive the following summary: MPSolve configuration:

    Source location:	.
Pthread CFLAGS:		-D_THREAD_SAFE 
    C compiler:		gcc
CFLAGS:			-D_REENTRANT -Wall -DMPS_USE_BUILTIN_COMPLEX  -DNICE_DEBUG -fno-math-errno -fomit-frame-pointer -D_MPS_PRIVATE
    LDFLAGS:                 -L/usr/local/opt/gmp/lib -lgmp 
Additional CFLAGS:	-I/usr/local/opt/gmp/ -g -O2
    Debug enabled:		yes
    Check enabled:		no
Octave module:		no
MATLAB (tm) module:	yes (generates examples/matlab/mpsolve-toolbox.tar.gz)
Graphical UI:		no
Python module:          yes

Type 'make' to compile MPSolve, and then make install to install the binaries, the library and the headers system-wide.

As you can see I have: MATLAB (tm) module: yes But then we I enter "make" in the terminal I receive the following error regarding gmp.h file.

Making all in matlab clang: warning: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Wdeprecated] In file included from /Users/mahradvaghefi/Desktop/mpsolve-3.2.1/examples/matlab/mps_roots_string.c:2: In file included from /Users/mahradvaghefi/Desktop/mpsolve-3.2.1/examples/matlab/mps_option_parser.h:2: In file included from ../../include/mps/mps.h:65: ../../include/mps/gmptools.h:18:10: fatal error: 'gmp.h' file not found #include <gmp.h> ^~~~~~~ 1 error generated.

mahradsv avatar Jan 12 '23 23:01 mahradsv

Make sure to specify the CFLAGS for gmp using GMP_CFLAGS, for instance

./configure GMP_CFLAGS="-I/usr/local/opt/gmp/"

Other CFLAGS are not passed to the MATLAB compiler because it tends to be picky about what it supports. If this does not work (or you did it already), there may be a problem in how the variables are passed to that script, but I cannot reproduced it locally.

robol avatar Jan 13 '23 15:01 robol

Thanks for your response. I have already tried

./configure GMP_CFLAGS="-I/usr/local/opt/gmp/"

and it did not work. Is there any instruction I can follow to see how the variables are passed to the script?

mahradsv avatar Jan 13 '23 17:01 mahradsv