[Symphony] Trouble compiling USER application

Terry maillst at aol.com
Wed Jul 6 07:54:03 EDT 2011


I installed pkg-config. Thanks for the info. But, the previous build issue that I reported still exists. That is, after 'make install', when I try to run bin/symphony it cannot find the library:

$ bin/symphony
dyld: Library not loaded: /testpkg/SYMPHONY-5.3.5/lib/libSym.3.dylib
  Referenced from: /testpkg/SYMPHONY-5.3.5/bin/symphony
  Reason: image not found
Trace/BPT trap

make is putting them here:

/testpkg/SYMPHONY-5.3.5/lib/coin/libSym.3.dylib
/testpkg/SYMPHONY-5.3.5/SYMPHONY/src/.libs/libSym.3.dylib

But not here where the program is looking:

/testpkg/SYMPHONY-5.3.5/lib/libSym.3.dylib

Copying the libraries there works.

Terry


On Jul 5, 2011, at 7:41 PM, Ted Ralphs wrote:

> This should be fixed now and I have created a release 5.3.5 with the
> fix in it. By the way, the reason this bug was not detected is because
> it only comes up when you are building on a system without pkg-config
> installed (or with pkg-config support disabled). I would recommend
> that you install pkg-config, as many things are easier to do with it
> installed (not to mention the build system is generally much more
> robust in that configuration).
> 
> Cheers,
> 
> Ted
> 
> On Sun, Jun 19, 2011 at 11:16 PM, Terry <maillst at aol.com> wrote:
>> 
>> I downloaded two older versions to see if I could get the "user" application example to work.
>> 
>> SYMPHONY-5.3.3 gave me the same errors as SYMPHONY-5.3.4, except it did not have the "missing separator" error in the applications Makefile.
>> 
>> SYMPHONY-5.2.4 compiles and runs the "user" program without any errors, showing the Welcome message and switches. There were no errors from start to finish, not even the libSymAppl.3.dylib "Library not loaded" error.
>> 
>> I didn't try other versions.
>> 
>> Terry
>> 
>> 
>> On Jun 19, 2011, at 3:33 PM, Terry wrote:
>> 
>>> I need to use the user_is_feasible() callback. To learn how to use the callbacks, I tried to compile the user example in:
>>> SYMPHONY-5.3.4/SYMPHONY/Applications/USER
>>> 
>>> First, I complied the application specific library, using the instructions in the INSTALL file:
>>> 
>>>   cd
>>>   cd COIN-SYMPHONY
>>>   ./configure --with-application
>>>   make
>>>   make install
>>> 
>>> I went in to the USER folder and attempted to build the USER application and it gave this error:
>>> 
>>> $ cd USER
>>> $ make
>>> ../Makefile.Applications:175: *** missing separator (did you mean TAB instead of 8 spaces?).  Stop.
>>> 
>>> Below is line 175. Note that there is no line continuation character after end of the LIBS line.
>>> 
>>> LIBS += -L/sup2/SYMPHONY-5.3.4/lib/coin -lSymAppl  /sup2/SYMPHONY-5.3.4/Cgl/src/libCgl.la   /sup2/SYMPHONY-5.3.4/Clp/src/OsiClp/libOsiClp.la   /sup2/SYMPHONY-5.3.4/Clp/src/libClp.la   /sup2/SYMPHONY-5.3.4/Osi/src/Osi/libOsi.la   /sup2/SYMPHONY-5.3.4/CoinUtils/src/libCoinUtils.la -lm    /sup2/SYMPHONY-5.3.4/Clp/src/OsiClp/libOsiClp.la   /sup2/SYMPHONY-5.3.4/Clp/src/libClp.la   /sup2/SYMPHONY-5.3.4/Osi/src/Osi/libOsi.la   /sup2/SYMPHONY-5.3.4/CoinUtils/src/libCoinUtils.la -lm    /sup2/SYMPHONY-5.3.4/Osi/src/Osi/libOsi.la   /sup2/SYMPHONY-5.3.4/CoinUtils/src/libCoinUtils.la -lm
>>>        -I`$(CYGPATH_W) $(COININCDIR)`
>>> 
>>> I figured that the line, "-I`$(CYGPATH_W) $(COININCDIR)`" was supposed to be in the CFLAGS variable. So, I removed that line where it was and added it to this section which was several lines above the LIBS line (I added the 3rd line below, it was not there before):
>>> 
>>> CFLAGS += -I`$(CYGPATH_W) $(SYMAPPLDIR)/include` \
>>>          -I`$(CYGPATH_W) /sup2/SYMPHONY-5.3.4/SYMPHONY/include` \
>>>          -I`$(CYGPATH_W) $(COININCDIR)`
>>> 
>>> Then it compiled.
>>> 
>>> I attempted to run the user program and it gave the same type of error I encountered days ago when I compiled the base symphony program:
>>> 
>>> $ ./user
>>> dyld: Library not loaded: /sup2/SYMPHONY-5.3.4/lib/libSymAppl.3.dylib
>>>  Referenced from: /sup2/SYMPHONY-5.3.4/SYMPHONY/Applications/USER/./user
>>>  Reason: image not found
>>> Trace/BPT trap
>>> 
>>> So, I copied the libSymAppl from the /lib/coin/ directory to that directory it was looking in:
>>> 
>>> $ cp /sup2/SYMPHONY-5.3.4/lib/coin/libSymAppl.3.dylib /sup2/SYMPHONY-5.3.4/lib/libSymAppl.3.dylib
>>> 
>>> Attempting to run the user program again, gives a new error:
>>> 
>>> $ ./user
>>> dyld: Symbol not found: __ZN12CglFlowCover12numFlowCuts_E
>>>  Referenced from: /sup2/SYMPHONY-5.3.4/lib/libSymAppl.3.dylib
>>>  Expected in: flat namespace
>>> in /sup2/SYMPHONY-5.3.4/lib/libSymAppl.3.dylib
>>> 
>>> So, now I'm stuck. Any help would be appreciated.
>>> 
>>> Thanks.
>>> Terry
>>> 
>>> _______________________________________________
>>> Symphony mailing list
>>> Symphony at list.coin-or.org
>>> http://list.coin-or.org/mailman/listinfo/symphony
>> 
>> 
>> _______________________________________________
>> Symphony mailing list
>> Symphony at list.coin-or.org
>> http://list.coin-or.org/mailman/listinfo/symphony
>> 
> 
> 
> 
> -- 
> Dr. Ted Ralphs
> Associate Professor, Lehigh University
> (610) 628-1280
> ted 'at' lehigh 'dot' edu
> coral.ie.lehigh.edu/~ted





More information about the Symphony mailing list