[Ipopt] Compiling IPOPT for MATLAB R2015a on Yosemite

Tony Kelman kelman at berkeley.edu
Tue Sep 1 07:20:13 EDT 2015


Hm, I though accelerate put a symlink for libblas.dylib somewhere, probably 
under /usr/lib ? May need to make that --with-blas="-L/usr/lib -lblas" if 
you see the library there?


-----Original Message----- 
From: Anil Rao
Sent: Tuesday, September 01, 2015 4:16 AM
To: Tony Kelman
Cc: ipopt at list.coin-or.org
Subject: Re: [Ipopt] Compiling IPOPT for MATLAB R2015a on Yosemite


Tony,

I tried your suggestion and got the following error when I tried to compile 
the mex file:

ld: library not found for -lblas
clang: error: linker command failed with exit code 1 (use -v to see 
invocation)

    mex: link of ' "ipopt.mexmaci64"' failed.

Any suggestions?

Anil



On Tue, Sep 1, 2015 at 6:45 AM, Tony Kelman <kelman at berkeley.edu> wrote:
If you want dynamically linked then you shouldn't build 
with --disable-shared.

I suspect a short-term fix would be to configure 
with --with-blas=-lblas --with-lapack=-llapack, and a longer-term fix would 
be to patch the Matlab interface build system to account for the recent 
change in BuildTools from -framework vecLib to -framework Accelerate. Sorry 
I didn't catch this sooner. I can try to prepare a patch, but not having a 
Mac easily available I won't be able to test it directly.

-Tony


-----Original Message----- From: Anil Rao
Sent: Monday, August 31, 2015 3:05 PM
To: ipopt at list.coin-or.org
Subject: [Ipopt] Compiling IPOPT for MATLAB R2015a on Yosemite



All,

I am trying to compile the MATLAB interface for IPOPT R2015a using Mac OS-X 
Yosemite and I m having some issues.  Please note that I want to compile a 
dynamically linked mex file (not a static mex file).  I am using XCode 
version 6.4 with gfortran 4.8.  Also, I am using the coinhsl code that 
includes all of the Harwell linear solvers.  My configure script is as 
follows:

./configure --disable-shared   F77=gfortran 
FFLAGS="-fexceptions -m64 -fbackslash" 
 CFLAGS="-fno-common -no-cpp-precomp -fexceptions -arch x86_64 -m64" 
CXXFLAGS="-fno-common -no-cpp-precomp -fexceptions -arch x86_64 -m64"

I was able to run make --> make install --> make test with no problems and 
obtained the following output:

Running unitTests...

Testing AMPL Solver Executable...
   Test passed!
Testing C++ Example...
   Test passed!
Testing C Example...
   Test passed!
Testing Fortran Example...
   Test passed!

I then tried to compile the MATLAB mex file and received the following 
error:

   mex:  -framework not a valid option.

   Usage:
     MEX [option1 ... optionN] sourcefile1 [... sourcefileN]
         [objectfile1 ... objectfileN] [libraryfile1 ... libraryfileN]

   Use the -help option for more information, or consult the MATLAB External 
Interfaces Guide.

I am grateful if somebody could tell me what I am doing wrong. 
Alternatively, if somebody could tell me the steps they followed to obtain a 
working mex file, I would be super grateful.

Anil Rao



-- 

Anil V. Rao, PhD
Associate Professor
Department of Mechanical and Aerospace Engineering
University of Florida
Gainesville, FL 32611-6250
Tel:  (352) 672-1529
E-mail:  anilvrao at gmail.com





_______________________________________________
Ipopt mailing list
Ipopt at list.coin-or.org
http://list.coin-or.org/mailman/listinfo/ipopt




-- 

Anil V. Rao, PhD
Associate Professor
Department of Mechanical and Aerospace Engineering
University of Florida
Gainesville, FL 32611-6250
Tel:  (352) 672-1529
E-mail:  anilvrao at gmail.com 



More information about the Ipopt mailing list