[Cbc] Building with Visual Studio 2008

Iain Dunning iaindunning at gmail.com
Thu Jul 21 03:47:55 EDT 2011


Hi Ted,

I'll give that a go, hopefully that works.

I actually tried VS2010 first - but hit a different problem altogether. I'll
give it another go...

Downloading clean from the SVN, release/2.7.0, opening the /v10/ version,
then building cbcExamplesSample2:

3>------ Build started: Project: cbcExamplesSample2, Configuration: Debug
Win32 ------
3>  CbcLinked.cpp
3>c:\coin\cbc\cbc\src\CbcLinked.hpp(29): error C2504: 'CbcOsiSolver' : base
class undefined


Which I fixed by adding CBC_BUILD to the preprocessor directives.
But then it seems to almost get to the end, before saying:

7>  Generating Code...
7>LINK : fatal error LNK1181: cannot open input file 'libCoinUtils.lib'


Which I fixed by making "MSVisualStudio\v10\Win32\Debug" an additional
library directory. It then runs fine.

Trying to build the cbc project:

4>------ Build started: Project: cbc, Configuration: Debug Win32 ------
4>  CoinSolve.cpp
4>LINK : fatal error LNK1181: cannot open input file 'libCgl.lib'


Which I again fixed by adding that directory. It then builds.

I did some more digging around in the options, and I think the issue is
this:
Some projects output to $(SolutionDir)$(Platform)\$(Configuration)\
Other projects output to $(SolutionDir)$(Configuration)\

If I standardise to the $(Platform)\ version, it all works fine (for cbc,
still need to add CBC_BUILD to get cbcExamplesSample2 working).

Are you able to use TortoiseSVN-generated patches? Or do you just want to
fix it yourself?

Cheers,
Iain


On 21 July 2011 16:41, Ted Ralphs <ted at lehigh.edu> wrote:

> Hi Iain,
>
> The 2008 project files are surely out of date---I just spent several
> days working out the bugs in the new 2010 files and those should work
> fine. If possible, I would suggest you just download MSVC++ Express
> 2010 and use that, as I'm not too keen on more wrestling with MSVC++
> anytime soon :). If you can't do that, I can tell you that most of the
> errors you are seeing will be corrected if you add
>
> XXX_BUILD
>
> to the list of preprocessor symbols defined, where "XXX" is the
> project acronym (in all caps). This is necessary under the new system
> we have adopted for configuration header files, which is used in the
> latest releases of COIN projects. Even for the projects that are not
> currently broken, you should add that symbol, as they may otherwise
> break in future releases. That should fix most things. If there are
> still errors, post another message. Also, if you want to contribute
> the repaired files, that would be great.
>
> Cheers,
>
> Ted
>
> On Wed, Jul 20, 2011 at 11:59 PM, Iain Dunning <iaindunning at gmail.com>
> wrote:
> > Hi,
> > I'm having a lot of trouble trying to build CBC with Visual Studio 2008.
> > This happens in 2.7 stable, 2.7.0 release, and trunk.
> > What I want to do is build "cbc.exe", but at the moment I'm just trying
> to
> > build the default project, cbcExamplesSample2
> >
> > The errors I hit are many and varied...
> > I suspect some are pre-processor related, others seem more problematic.
> > 1. Project libOsi - all fine
> > 2. Project libClp
> > c:\coin\cbc\clp\src\clphelperfunctions.hpp(16) : fatal error C1189:
> #error :
> >  "don't have header file for math"
> > Happens a few times.
> > 3. Project libCoinUtils
> > c:\coin\cbc\clp\src\clphelperfunctions.hpp(16) : fatal error C1189:
> #error :
> >  "don't have header file for math"
> > 4. Project libOsiClp - all fine
> > 5. Project libCbcSolver
> > ..\..\..\src\unitTestClp.cpp(584) : error C2039: 'fastNodeDepth' : is not
> a
> > member of 'CbcModel'
> >         c:\coin\cbc\cbc\src\CbcModel.hpp(99) : see declaration of
> 'CbcModel'
> > ..\..\..\src\unitTestClp.cpp(585) : error C2039: 'setFastNodeDepth' : is
> not
> > a member of 'CbcModel'
> >         c:\coin\cbc\cbc\src\CbcModel.hpp(99) : see declaration of
> 'CbcModel'
> > c:\coin\cbc\cbc\src\CbcLinked.hpp(29) : error C2504: 'CbcOsiSolver' :
> base
> > class undefined
> > Then a lot of errors follow on from this.
> > 7. Project libCgl
> > c:\coin\cbc\cbc\src\cbcheuristic.cpp(539) : error C2039:
> > 'continuousPriority' : is not a member of 'CbcModel
> > c:\coin\cbc\cbc\src\cbcheuristic.cpp(906) : error C2039:
> 'setFastNodeDepth'
> > : is not a member of 'CbcModel'
> > c:\coin\cbc\cbc\src\cbcheuristic.cpp(1163) : error C2039:
> 'setFastNodeDepth'
> > : is not a member of 'CbcModel'
> > c:\coin\cbc\cbc\src\cbcheuristic.cpp(1164) : error C2039: 'fastNodeDepth'
> :
> > is not a member of 'CbcModel'
> > There seems to be issues in the "test" projects, but I don't need those.
> > Any idea about how I fix these issues?
> > Cheers,
> > Iain
> > _______________________________________________
> > Cbc mailing list
> > Cbc at list.coin-or.org
> > http://list.coin-or.org/mailman/listinfo/cbc
> >
> >
>
>
>
> --
> Dr. Ted Ralphs
> Associate Professor, Lehigh University
> (610) 628-1280
> ted 'at' lehigh 'dot' edu
> coral.ie.lehigh.edu/~ted
>



-- 
Iain Dunning
Email:    iaindunning at gmail.com
Web:      www.iaindunning.com
LinkedIn: nz.linkedin.com/in/iaindunning
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://list.coin-or.org/pipermail/cbc/attachments/20110721/bce5359f/attachment.html 


More information about the Cbc mailing list