Opened 8 years ago

Closed 8 years ago

Last modified 8 years ago

#93 closed defect (worksforme)

Error in Compilation of Bonmin make

Reported by: martmevi Owned by: stefan
Priority: major Component: build system
Version: 0.7 Keywords: make cbc
Cc:

Description

Hi,

I am triying to install Bonmin-1.5.1. via cygwin on my windows system. According to instructions I installed the 3rd party code Blas, Lapack, ASL, HSL (MA27 and MC19), Metis. I created the directory "build" and called ./configure -C from there which completed with "Configuration of Bonmin successful". However, when subsequently executing "make", it fails, with the last lines of make compilatin being:

../../../Cbc/src/CbcSolver.cpp: In function 'int CbcMain1<int, const char, CbcModel?&, int<*><CbcModel?*, int>': ../../../Cbc/src/CbcSolver.cpp:1666:error: expected primary-expresion before '>' token make[4]: * [CbcSolver?.lo] Error 1 make[4]: Leaving directory '/cygdrive/c/Bonmin3/build/Cbc/src' make[3]: * [all-recursive] Error 1 make[3]: Leaving directory '/cygdrive/c/Bonmin3/build/Cbc/src' make[2]: * [all] Error 2 make[2]: Leaving directory '/cygdrive/c/Bonmin3/build/Cbc/src' make[1]: * [all-recursive] Error 1 make[1]: Leaving directory '/cygdrive/c/Bonmin3/build/Cbc' make: * [all-recursive] Error 1

I would like to provide my configuration log files, as well, but no file named "config.log" can be found in any subdirectory of by bonmin folder. It would be great, if you could help me to overcome my compilation problem.

Thanks a lot,

Martin

Change History (5)

comment:1 Changed 8 years ago by stefan

  • Priority changed from critical to major
  • Status changed from new to assigned

It seems to be an issue with setting up the revision number of Cbc, since CbcSolver?.cpp:1666 is supposed to print that number:

#ifdef CBC_SVN_REV
            sprintf(generalPrint + strlen(generalPrint),
                    "Revision Number: %d \n", CBC_SVN_REV);
#endif

Can you check what is the define for CBC_SVN_REV in Cbc/src/config.h (in the build directory)?

It should be a single number. If it's not, the easiest may be to just edit this file (it's generated by configure) and to remove the define of CBC_SVN_REV. Bonmin should still work as usual.

Stefan

comment:2 Changed 8 years ago by martmevi

Hi Stefan,

I checked CBC_SVN_REV in config.h and commented it out as suggested by you. When I rerun "make" in my build directory I get the following error:

Making all in ThirdParty/Metis? make[1]: Entering directory 'cygdrive/c/Bonmin3/build/ThirdParty/Metis' .deps/balance.Plo:1: * multiple target patterns. Stop. make[1]: Leaving directory 'cygdrive/c/Bonmin3/build/ThirdParty/Metis' make: * [all-recursive] Error 1

This seems to be a different issue... Do you know how to solve this too?

Thanks,

Martin

comment:3 Changed 8 years ago by stefan

This is a bug in cygwin's make, see here.

What was the value of CBC_SVN_REV in your config.h?

comment:4 Changed 8 years ago by stefan

  • Resolution set to worksforme
  • Status changed from assigned to closed

comment:5 Changed 8 years ago by martmevi

CBC_SVN_REV was not assigned to any value. The line in config.h was reading: #define CBC_SVN_REV

I was able to complete "make" without error.

Thanks for your help!

Note: See TracTickets for help on using tickets.