[Coin-discuss] Building all the OSI interfaces
Lou Hafer
lou at cs.sfu.ca
Wed May 9 20:05:35 EDT 2007
Dean,
Unfortunately, relocating the standard projects is on the `todo' list
for the BuildTools group. Assuming you're on some version of unix, you have
several options. I'll use my own setup as an example; adjust to suit your
setup.
I do VPATH builds, so I have source for Osi in /Pfx/Coin-Osi and SuSE
binaries in /Pfx/Coin-Osi-SuSE. (/Pfx is actually /cs/mitacs4; you get the
picture.) Similarly, Cbc lives in /Pfx/Coin-Cbc, binaries in
/Pfx/Coin-Cbc-SuSE. To get OsiCbc to build properly, you'll need to do the
following:
* In Coin-Osi,
ln -s /Pfx/Coin-Cbc/Cbc Cbc
ln -s /Pfx/Coin-Cbc/Cgl Cgl
* In Coin-Osi-SuSE,
ln -s /Pfx/Coin-Cbc-SuSE/Cbc Cbc
ln -s /Pfx/Coin-Cbc-SuSE/Cgl Cgl
This will allow the Osi configuration and build to find source and binaries in
the places it expects to find them.
More generally, when Osi configuration is looking for COIN projects,
it's executing in the Osi subdirectory, and it's looking for COIN projects in
the immediate parent (`..') directory.
If you have the ability to alter configure.ac files and regenerate the
configure script, try this:
* In Osi/configure.ac, change the line
AC_COIN_HAS_PROJECT(Cbc)
to read
AC_COIN_HAS_USER_LIBRARY([Cbc],[CBC])
Then use --with-cbc-incdir, --with-cbc-lib, and --disable-cbc-libcheck in your
command line options for configure (give the appropriate values for incdir and
lib). The easy way to run the autotools is with the script
BuildTools/run_autotools. But it'll complain and abort if you don't have the
correct versions. It's certainly possible to run them by hand; we're fussy about
versions but you don't have to be. (It's a problem when committing back to the
repository; should be ok otherwise.)
I tested the first workaround, but didn't test this second one. If you try it
and it blows up, email me and I'll give it a bit more attention.
Lou
More information about the Coin-discuss
mailing list