JuliaOpt / CoinOptServices.jl

Julia interface to COIN-OR Optimization Services https://projects.coin-or.org/OS
Other
16 stars 4 forks source link

trouble building on JuliaBox #10

Closed mlubin closed 8 years ago

mlubin commented 8 years ago

I was looking into preparing an MINLP tutorial and ran into the following error when building CoinOptServices on JuliaBox, using Julia 0.4. Probably related to JuliaBox having a system installation of Ipopt and Cbc? Ideally the binaries should be preinstalled, but one step at a time.

INFO: Changing Directory to /home/juser/.julia/v0.4/CoinOptServices/deps/src/OS-2.9.2/build
Making all in Vol
make[1]: Entering directory `/home/juser/.julia/v0.4/CoinOptServices/deps/src/OS-2.9.2/build/Vol'
Making all in src
make[2]: Entering directory `/home/juser/.julia/v0.4/CoinOptServices/deps/src/OS-2.9.2/build/Vol/src'
if /bin/bash ../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I`echo ../../../Vol/src` -I../inc  -I/home/juser/.julia/v0.4/Cbc/deps/usr/lib/../include/coin   -O3 -pipe -DNDEBUG    -DVOL_BUILD -MT VolVolume.lo -MD -MP -MF ".deps/VolVolume.Tpo" -c -o VolVolume.lo ../../../Vol/src/VolVolume.cpp; \
    then mv -f ".deps/VolVolume.Tpo" ".deps/VolVolume.Plo"; else rm -f ".deps/VolVolume.Tpo"; exit 1; fi
mkdir .libs
 g++ -DHAVE_CONFIG_H -I. -I../../../Vol/src -I../inc -I/home/juser/.julia/v0.4/Cbc/deps/usr/lib/../include/coin -O3 -pipe -DNDEBUG -DVOL_BUILD -MT VolVolume.lo -MD -MP -MF .deps/VolVolume.Tpo -c ../../../Vol/src/VolVolume.cpp  -fPIC -DPIC -o .libs/VolVolume.o
/bin/bash ../../libtool --tag=CXX --mode=link g++  -O3 -pipe -DNDEBUG    -DVOL_BUILD   -o libVol.la -rpath /home/juser/.julia/v0.4/CoinOptServices/deps/usr/lib -no-undefined -version-info 5:4:4 VolVolume.lo  
g++ -shared -nostdlib /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crti.o /usr/lib/gcc/x86_64-linux-gnu/4.8/crtbeginS.o  .libs/VolVolume.o  -L/usr/lib/gcc/x86_64-linux-gnu/4.8 -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../lib -L/lib/x86_64-linux-gnu -L/lib/../lib -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib -L/usr/lib/gcc/x86_64-linux-gnu/4.8/../../.. -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/x86_64-linux-gnu/4.8/crtendS.o /usr/lib/gcc/x86_64-linux-gnu/4.8/../../../x86_64-linux-gnu/crtn.o  -Wl,-soname -Wl,libVol.so.1 -o .libs/libVol.so.1.4.4
(cd .libs && rm -f libVol.so.1 && ln -s libVol.so.1.4.4 libVol.so.1)
(cd .libs && rm -f libVol.so && ln -s libVol.so.1.4.4 libVol.so)
creating libVol.la
(cd .libs && rm -f libVol.la && ln -s ../libVol.la libVol.la)
make[2]: Leaving directory `/home/juser/.julia/v0.4/CoinOptServices/deps/src/OS-2.9.2/build/Vol/src'
Making all in src/OsiVol
make[2]: Entering directory `/home/juser/.julia/v0.4/CoinOptServices/deps/src/OS-2.9.2/build/Vol/src/OsiVol'
if /bin/bash ../../../libtool --tag=CXX --mode=compile g++ -DHAVE_CONFIG_H -I. -I`echo ../../../../Vol/src/OsiVol` -I../../inc  -I`echo ../../../../Vol/src/OsiVol/..` -I/home/juser/.julia/v0.4/Cbc/deps/usr/lib/../include/coin -I/home/juser/.julia/v0.4/Cbc/deps/usr/lib/../include/coin   -O3 -pipe -DNDEBUG    -DVOL_BUILD -MT OsiVolSolverInterface.lo -MD -MP -MF ".deps/OsiVolSolverInterface.Tpo" -c -o OsiVolSolverInterface.lo ../../../../Vol/src/OsiVol/OsiVolSolverInterface.cpp; \
    then mv -f ".deps/OsiVolSolverInterface.Tpo" ".deps/OsiVolSolverInterface.Plo"; else rm -f ".deps/OsiVolSolverInterface.Tpo"; exit 1; fi
../../../../Vol/src/OsiVol/OsiVolSolverInterface.cpp:17:35: fatal error: CoinHelperFunctions.hpp: No such file or directory
 #include "CoinHelperFunctions.hpp"
                                   ^
compilation terminated.
mkdir .libs
 g++ -DHAVE_CONFIG_H -I. -I../../../../Vol/src/OsiVol -I../../inc -I../../../../Vol/src/OsiVol/.. -I/home/juser/.julia/v0.4/Cbc/deps/usr/lib/../include/coin -I/home/juser/.julia/v0.4/Cbc/deps/usr/lib/../include/coin -O3 -pipe -DNDEBUG -DVOL_BUILD -MT OsiVolSolverInterface.lo -MD -MP -MF .deps/OsiVolSolverInterface.Tpo -c ../../../../Vol/src/OsiVol/OsiVolSolverInterface.cpp  -fPIC -DPIC -o .libs/OsiVolSolverInterface.o
make[2]: *** [OsiVolSolverInterface.lo] Error 1
make[2]: Leaving directory `/home/juser/.julia/v0.4/CoinOptServices/deps/src/OS-2.9.2/build/Vol/src/OsiVol'
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1
===========================[ ERROR: CoinOptServices ]===========================

LoadError: failed process: Process(`make`, ProcessExited(2)) [2]
while loading /home/juser/.julia/v0.4/CoinOptServices/deps/build.jl, in expression starting on line 71
tkelman commented 8 years ago

try https://github.com/JuliaOpt/CoinOptServices.jl/commit/50f2e008c9db018d7755a9febf4c5b36e122df45? I can't remember why that isn't on a branch. May have accidentally rebased it out of #5 at some point.

mlubin commented 8 years ago

Git fail:

juser@juliabox:~/.julia/v0.4/CoinOptServices$ git checkout 50f2e008c9db018d7755a9febf4c5b36e122df45                                                                                              
fatal: reference is not a tree: 50f2e008c9db018d7755a9febf4c5b36e122df45
tkelman commented 8 years ago

curl -L https://github.com/JuliaOpt/CoinOptServices.jl/commit/50f2e008c9db018d7755a9febf4c5b36e122df45.patch | git apply ?

mlubin commented 8 years ago

Seems to build successfully

tkelman commented 8 years ago

fixed on master by 80790ddfb18d14dd9ccb037039dec328f78d53a7, will tag