[Coin-ipopt] Mac OS X Compilation Issue
Andreas Waechter
andreasw at watson.ibm.com
Thu Mar 29 10:03:17 EDT 2007
Hi Jeremy,
I don't have access to a Mac to reproduce the problem you mentioned.
Could you please submit a ticket at the Ipopt trac page?
The thing is that we are using the GNU tool libtool which is a wrapper for
compiler, archiver, and linker commands. It is meant to make portability
easier, and often does a good job. However, it is also a little buggy,
and you might have just found a bug in libtool. What I have done in the
past is to apply patches to the libtool script (that is generated when
configure runs) for bugs related to Windows compiles. There is still not
a new release of libtool, but there is a intermediate release which might
have fixed a number of problems (but might have introduced new ones :).
I'm hesitant to switch over to this new version, since it will impact many
other COIN projects as well.
In any case, it would be nice if you could submit a ticket at the Ipopt
Trac pages, and I will try to look at this with a colleage.
Regards,
Andreas
On Sun, 18 Mar 2007, Jeremy Fox wrote:
>
> I am trying to compile IPOPT on a Mac OS 10.4.8 (Intel) machine. At one
> point, the compilation stops with an error message. It appears to be in the
> Ipopt/src/Interfaces directory. The following command exits with the error
>
> /usr/bin/ld: unknown flag: -compatibility_version
>
> If you look below at the very end, "compatibility_version" is being called
> with the Wl prefix, which means the flag is being sent to the linker, ld.
> However, reading the man pages, it looks like "compatibility_version" is a
> (Darwin specific) flag for gcc, not ld. Indeed, changing the last line to
>
> -compatibility_version 1 -current_version 1.0
>
> seems to make this command go through without error. However, I when type
> make again, the command below is reexecuted. I don't know enough to change
> the use of these flags in the make process. Does someone know how to do this?
>
> Thanks, Jeremy
>
>
> Extracting /Users/fox/Documents/CoinIpopt/Ipopt/src/Interfaces/../
> LinAlg/TMatrices/.libs/libtmatrices.a
> (cd .libs/libipopt.lax/libtmatrices.a && ar x /Users/fox/Documents/
> CoinIpopt/Ipopt/src/Interfaces/../LinAlg/TMatrices/.libs/libtmatrices.a)
> g++ -dynamiclib -single_module ${wl}-flat_namespace ${wl}-undefined $
> {wl}suppress -o .libs/libipopt.0.0.0.dylib .libs/IpInterfacesRegOp.o
> .libs/IpIpoptApplication.o .libs/IpSolveStatistics.o .libs/IpStdCInterface.o
> .libs/IpStdFInterface.o .libs/IpStdInterfaceTNLP.o .libs/IpTNLPAdapter.o
> .libs/libipopt.lax/libcoinhsl.a/ma27ad.o .libs/
> libipopt.lax/libcoinhsl.a/mc19ad.o .libs/libipopt.lax/libipoptalg.a/
> IpAdaptiveMuUpdate.o .libs/libipopt.lax/libipoptalg.a/IpAlgBuilder.o
> .libs/libipopt.lax/libipoptalg.a/IpAlgorithmRegOp.o
> .libs/libipopt.lax/libipoptalg.a/IpAugRestoSystemSolver.o
> .libs/libipopt.lax/libipoptalg.a/IpBacktrackingLineSearch.o
> .libs/libipopt.lax/libipoptalg.a/IpDefaultIterateInitializer.o
> .libs/libipopt.lax/libipoptalg.a/IpExactHessianUpdater.o
> .libs/libipopt.lax/libipoptalg.a/IpFilter.o .libs/libipopt.lax/libipoptalg.a/
> IpFilterLSAcceptor.o .libs/libipopt.lax/libipoptalg.a/IpGradientScaling.o
> .libs/libipopt.lax/libipoptalg.a/IpIpoptAlg.o
> .libs/libipopt.lax/libipoptalg.a/IpIpoptCalculatedQuantities.o
> .libs/libipopt.lax/libipoptalg.a/IpIpoptData.o
> .libs/libipopt.lax/libipoptalg.a/IpIteratesVector.o
> .libs/libipopt.lax/libipoptalg.a/IpLeastSquareMults.o
> .libs/libipopt.lax/libipoptalg.a/IpLimMemQuasiNewtonUpdater.o
> .libs/libipopt.lax/libipoptalg.a/IpLoqoMuOracle.o
> .libs/libipopt.lax/libipoptalg.a/IpLowRankAugSystemSolver.o
> .libs/libipopt.lax/libipoptalg.a/IpMonotoneMuUpdate.o
> .libs/libipopt.lax/libipoptalg.a/IpNLPScaling.o
> .libs/libipopt.lax/libipoptalg.a/IpOptErrorConvCheck.o
> .libs/libipopt.lax/libipoptalg.a/IpOrigIpoptNLP.o
> .libs/libipopt.lax/libipoptalg.a/IpOrigIterationOutput.o
> .libs/libipopt.lax/libipoptalg.a/IpPDFullSpaceSolver.o
> .libs/libipopt.lax/libipoptalg.a/IpPDPerturbationHandler.o
> .libs/libipopt.lax/libipoptalg.a/IpProbingMuOracle.o
> .libs/libipopt.lax/libipoptalg.a/IpQualityFunctionMuOracle.o
> .libs/libipopt.lax/libipoptalg.a/IpRestoFilterConvCheck.o
> .libs/libipopt.lax/libipoptalg.a/IpRestoIpoptNLP.o
> .libs/libipopt.lax/libipoptalg.a/IpRestoIterateInitializer.o
> .libs/libipopt.lax/libipoptalg.a/IpRestoIterationOutput.o
> .libs/libipopt.lax/libipoptalg.a/IpRestoMinC_1Nrm.o
> .libs/libipopt.lax/libipoptalg.a/IpRestoRestoPhase.o
> .libs/libipopt.lax/libipoptalg.a/IpStdAugSystemSolver.o
> .libs/libipopt.lax/libipoptalg.a/IpTimingStatistics.o
> .libs/libipopt.lax/libipoptalg.a/IpUserScaling.o
> .libs/libipopt.lax/libipoptalg.a/IpWarmStartIterateInitializer.o
> .libs/libipopt.lax/liblinsolvers.a/IpLinearSolversRegOp.o
> .libs/libipopt.lax/liblinsolvers.a/IpMa27TSolverInterface.o
> .libs/libipopt.lax/liblinsolvers.a/IpMc19TSymScalingMethod.o
> .libs/libipopt.lax/liblinsolvers.a/IpTripletToCSRConverter.o
> .libs/libipopt.lax/liblinsolvers.a/IpTSymLinearSolver.o
> .libs/libipopt.lax/libcommon.a/IpDebug.o .libs/
> libipopt.lax/libcommon.a/IpJournalist.o .libs/libipopt.lax/
> libcommon.a/IpObserver.o .libs/libipopt.lax/libcommon.a/IpOptionsList.o
> .libs/libipopt.lax/libcommon.a/IpRegOptions.o .libs/
> libipopt.lax/libcommon.a/IpTaggedObject.o .libs/libipopt.lax/
> libcommon.a/IpUtils.o .libs/libipopt.lax/liblinalg.a/IpBlas.o .libs/
> libipopt.lax/liblinalg.a/IpCompoundMatrix.o .libs/libipopt.lax/
> liblinalg.a/IpCompoundSymMatrix.o .libs/libipopt.lax/liblinalg.a/
> IpCompoundVector.o .libs/libipopt.lax/liblinalg.a/IpDenseGenMatrix.o
> .libs/libipopt.lax/liblinalg.a/IpDenseSymMatrix.o
> .libs/libipopt.lax/liblinalg.a/IpDenseVector.o
> .libs/libipopt.lax/liblinalg.a/IpDiagMatrix.o .libs/
> libipopt.lax/liblinalg.a/IpExpansionMatrix.o .libs/libipopt.lax/
> liblinalg.a/IpIdentityMatrix.o .libs/libipopt.lax/liblinalg.a/IpLapack.o
> .libs/libipopt.lax/liblinalg.a/IpLowRankUpdateSymMatrix.o
> .libs/libipopt.lax/liblinalg.a/IpMatrix.o
> .libs/libipopt.lax/liblinalg.a/IpMultiVectorMatrix.o .libs/
> libipopt.lax/liblinalg.a/IpScaledMatrix.o .libs/libipopt.lax/
> liblinalg.a/IpSumMatrix.o .libs/libipopt.lax/liblinalg.a/IpSumSymMatrix.o
> .libs/libipopt.lax/liblinalg.a/IpSymMatrix.o .libs/
> libipopt.lax/liblinalg.a/IpSymScaledMatrix.o .libs/libipopt.lax/
> liblinalg.a/IpVector.o .libs/libipopt.lax/liblinalg.a/IpZeroMatrix.o
> .libs/libipopt.lax/libtmatrices.a/IpGenTMatrix.o
> .libs/libipopt.lax/libtmatrices.a/IpSymTMatrix.o .libs/
> libipopt.lax/libtmatrices.a/IpTripletHelper.o -install_name /
> Users/fox/Downloads/CoinIpopt/lib/libipopt.0.dylib -Wl,-compatibility_version
> -Wl,1 -Wl,-current_version -Wl,1.0
> /usr/bin/ld: unknown flag: -compatibility_version
> collect2: ld returned 1 exit status
>
>
> Thanks, Jeremy
> _______________________________________________
> Coin-ipopt mailing list
> Coin-ipopt at list.coin-or.org
> http://list.coin-or.org/mailman/listinfo/coin-ipopt
>
More information about the Coin-ipopt
mailing list