[Coin-discuss] Mac OS X Runtime issue...

Philip Walton hpwalton at yahoo.com
Sat Oct 4 19:02:27 EDT 2014


Hey folks,

I am trying looking to use CoinMP as a callable library from C++ on a Mac OS X machine (ver 10.9.5) ...
More specifically, I'm trying to form a bridge from Java through JNI hitting CoinMP (which I will likely give back to CoinMP if it's desired and when I get it stable ).


I'm able to build and test the CoinMP project successfully on it's own...so it appears as if things may be ok and it's just me.... to build CoinMP I run:
./configure 
make all
make install

It seemed to run fine to completion with only warnings.

I looked at the "current issues" page here: https://projects.coin-or.org/BuildTools/wiki/current-issues#CurrentIssues
... It doesn't appear to be one of the config issues and I'm not having linker issues so I don't think the stdLib is missing/wrong.
It isn't a configure or build problem in the sense that they seem to "complete".

However.... when I build my own library and unit test driver I get a random error at exit.  About 25% of the time it runs fine.  about 75% of the time it dies with this error (or one very like it):

Clp0032I Optimal objective 1428729.286 - 4 iterations time 0.002, Presolve 0.00
unitTest(81584,0x7fff7dc05310) malloc: *** error for object 0x7fb7d0d010c8: incorrect checksum for freed object - object was probably modified after being freed.
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6

I also googled up a reference to my specific error message (in a post titled "Unit tests fail on OS X 10.9 (Mavericks) with CBC 2.8.8")

... and this looks like a plausible "same cause"... but I'm not entirely sure how to may this "fix" work for me.

"...
[Problem solved] Just a follow-up comment for folks who may be googling for the solution to this problem.

I believe the problem may have something to do with the way the latest gcc (4.4.1) handles symbols in the latest ASL. I created a virtual machine with Ubuntu 8.10 LTS, and used gcc 4.2.4 to compile the IPOPT source with the latest ASL, and it worked like a charm. I copied the compiled binary back to my Ubuntu 9.04 machine (gcc 4.4.1) and IPOPT did not segfault anymore. 


..."

Here is info on my compiler version:
g++ --version
Configured with: --prefix=/Library/Developer/CommandLineTools/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.51) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix

My driver program and library (and makefile) are fairly simple.  I got the compile/link flags out of the coin build script when it was running so I don't think I'm mis-matching compile flags...

With this evidence I believe the issue is really a platform issue, and not really a Coin-MP error per se.  

Any suggestion on where to post the information I have to try to get someone to take a look?  I can run tests/build/configure/whatever to try to make it work if someone has some advice.  I won't be able to back-version the compiler as that version is driven by our IT guys... so I can't use the fix above.


Side note:
When here...
http://www.coin-or.org/projects/BuildTools.xml

Clicking on the project page link.. it adds a %20 to the URL using chrome (https://projects.coin-or.org/BuildTools%20)..which then fails to navigate.  

Philip
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://list.coin-or.org/pipermail/coin-discuss/attachments/20141004/a8bd6e48/attachment.html>


More information about the Coin-discuss mailing list