[OS] Mods to fix ASL & socket library specs
Kipp Martin
Kipp.Martin at ChicagoGSB.edu
Tue Sep 18 22:06:56 EDT 2007
Hi Lou:
>
> ThirdParty/ASL now passes the compilation flags determined by
> COIN_PROG_CC as a command line parameter to the nmake call. This overrides the
> setting in makefile.vc, which is what we want. The call to compile_MS_ASL now
> works from the makefile (a bit of Googling turned up the reason this didn't
> work; see note in compile_MS_ASL). Andreas, you might want to convert the code
> for the unix case into a shell script in the same manner. Easier than wedging
> it into the makefile case.
I can't get ThirdParty/ASL to work.
When I run COMPILE_MS_ASL after doing
/home/kmartin/COIN-OS/configure --enable-debug
I get the error
$ compile_MS_ASL
Microsoft (R) Program Maintenance Utility Version 8.00.50727.42
Copyright (C) Microsoft Corporation. All rights reserved.
NMAKE : fatal error U1065: invalid option 'j'
Stop.
mv: cannot stat `amplsolv.lib': No such file or directory
mv: cannot stat `stdio1.h': No such file or directory
mv: cannot stat `arith.h': No such file or directory
mv: cannot stat `funcadd0.obj': No such file or directory
I will investigate further.
Bob and Jun -- what happens when you run?
Thanks
>
> Kipp, Jun, Bob, I've done some violence to your configuration files,
> so you'll want to test this carefully. The changes involve autodetecting the
> correct way to handle sockets. I've written a macro (now in OS/m4) to do
> this. It prefers Winsock when available; this matches the behaviour of the OS
> code. A complication here is that Cygwin can swing both ways, while OS
> currently forces Winsock under Cygwin. Once the macro sees which headers are
> available, it tries various combinations of library specifications. Basically,
> the various fake Unix environs need -lwsock32, Msys/cl wants wsock32.lib,
> Solaris wants -lsocket -lnsl, and Linux (GCC in general?) doesn't need
> anything. The library spec now goes into ADDLIBS and thus into os_addlibs.txt,
> the standard COIN places.
>
> In the process, I did radical surgery on OS/configure.ac and a bunch
> of Makefile.am's. OS/configure.ac is now much closer to the canonical COIN
> order of actions. I tried to chop WINSOCKLIBS from the Makefile.am's, but may
> have missed a few. To confuse the issue, I covered my bets by setting it in
> the AC_COIN_OS_SOCKET_LIBS macro and then set ADDLIBS in OS/configure.ac. Some
> grooming might be in order, but I figure better you than me, as you are more
> familiar with OS and can test more thoroughly.
>
> Tested in these environments, debug build only so far:
>
> * Msys / cl (i.e., Msys with --enable-doscompile=msvc)
> * Mingw (i.e., Cygwin with --enable-doscompile=mingw, the dread -mno-cygwin)
> * Cygwin
> * Solaris 10 / Studio
> * Fedora 7 / GCC
>
> Mac OSX is notably absent; I leave that to you. The only build that includes
> Ipopt is the Fedora build, and it dies with this message:
>
> Exception of type: LAPACK_NOT_INCLUDED in file
> "/devel/Coin-Trunk/Coin-OS/Ipopt/src/LinAlg/IpLapack.cpp" at line 65:
> Exception message: Ipopt has been compiled without LAPACK routine DPOTRF, but
> options are chosen that require this dependency. Abort.
>
> EXIT: Some uncaught Ipopt exception encountered.
> Finish Ipopt Optimize
>
> which is not surprising since I built Ipopt without Lapack. Might want to
> change the OS test to allow for this.
>
> Lou
>
>
> ------------------------------------------------------------------------
>
> This body part will be downloaded on demand.
--
Kipp Martin
Professor of Operations Research
and Computing Technology
Graduate School of Business
University of Chicago
5807 South Woodlawn Avenue
Chicago, IL 60637
773-702-7456
kipp.martin at chicagogsb.edu
http://gsbkip.chicagogsb.edu
http://www.coin-or.org
More information about the OS
mailing list