[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