[Coin-discuss] Finding libs at run time and Cbc/Dylp

Ted Ralphs tkralphs at lehigh.edu
Mon Mar 27 15:29:08 EST 2006


Lou Hafer wrote:

> What is even more
>>strange is that if I put junk inside Coin/Makefiles/Makefile.Linux, 
>>around line 87, i.e. something like
> 
> 
>>ifeq (${LibType},SHARED)
>>zz
>>    LD  := $(CXX) -o
>>    LIBLDFLAGS := -shared
>>    LIBEXT := $(SHARED_LIBEXT)
>>    CXXFLAGS += -fPIC
>>    SHLINKPREFIX := -Wl,-rpath,
>>else
> 
> 
>>and then I try to compile BAC, I get:
> 
> 
>>(cd /home/prov/COIN/Osi/OsiClp && make install)
>>make[1]: Entering directory `/home/prov/COIN/Osi/OsiClp'
>>/home/prov/COIN/Makefiles/Makefile.Linux:83: *** missing separator.  Stop.
>>make[1]: Leaving directory `/home/prov/COIN/Osi/OsiClp'
>>make: *** [libdepend] Error 2
> 
> 
>>So, apparently, SHINKPREFIX is set properly in Makefile.Linux, but then
>>it is unset somewhere.
> 
> 
> 	Actually, I think not. I'm pretty sure all you're seeing here is
> 	make's parser complaining, before make actually tries to answer the
> 	question posed by `ifeq (${LibType},SHARED)'. You can see similar
> 	effects in shell parsers when dealing with potentially undefined
> 	variables.

That's what I thought, too. I assumed that make parsed the file first to
ensure proper syntax, then executed it. However, it actually doesn't
complain if you put "zz" in the else block. Strange.

Ted
-- 
Dr. Ted Ralphs
Assistant Professor
Industrial and Systems Engineering
Lehigh University
(610)758-4784
tkralphs at lehigh.edu
www.lehigh.edu/~tkr2



More information about the Coin-discuss mailing list