Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

building python bindings with Anaconda (and homebrew / OSX as well) #111

Closed
kegl opened this issue Feb 2, 2015 · 69 comments
Closed

building python bindings with Anaconda (and homebrew / OSX as well) #111

kegl opened this issue Feb 2, 2015 · 69 comments

Comments

@kegl
Copy link

kegl commented Feb 2, 2015

These install with brew:

autoconf
automake
eigen
libtool

boost has to be installed with

brew install boost --with-python

and gflag as to be installed manually

wget https://gflags.googlecode.com/files/gflags-2.0-no-svn-files.tar.gz
tar -xzvf gflags-2.0-no-svn-files.tar.gz
cd gflags-2.0
./configure && make && sudo make install

Then we need

export CXXFLAGS=-I/Users/kegl/anaconda/pkgs/numpy-1.9.0-py27_0/lib/python2.7/site-packages/numpy/core/include/

and

add

"$HOME/Research/CMAES/libcmaes/python/"

to PYTHONPATH

Then

anaconda python gets stuck with

mbp-kuomo:python kegl$ python ptest.py
Fatal Python error: PyThreadState_Get: no current thread
Abort trap: 6
mbp-kuomo:python kegl$ which python
/Users/kegl/anaconda/bin/python
mbp-kuomo:python kegl$ /Users/kegl/anaconda/bin/python ptest.py 
Fatal Python error: PyThreadState_Get: no current thread
Abort trap: 6
@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

Thanks. Looking into it.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

silver6:Axa kegl$ brew --config
HOMEBREW_VERSION: 0.9.5
ORIGIN: https://github.com/Homebrew/homebrew.git
HEAD: 84d37e70c2830d64d181b6267e051f16fb271d29
Last commit: 10 weeks ago
HOMEBREW_PREFIX: /usr/local
HOMEBREW_CELLAR: /usr/local/Cellar
CPU: quad-core 64-bit haswell
OS X: 10.9.4-x86_64
Xcode: 6.1
CLT: 6.1.1.0.1.1416017670
Clang: 6.0 build 600
X11: N/A
System Ruby: 2.0.0-451
Perl: /usr/bin/perl
Python: /Users/kegl/anaconda/bin/python => /Users/kegl/anaconda/bin/python2.7
Ruby: /usr/bin/ruby

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

I need what

brew --config

says in order to see what python brew is relying on, plus the output of the configure script.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

mbp-kuomo:libcmaes kegl$ ./configure 
configure: libcmaes 0.9.4
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-apple-darwin13.3.0
checking host system type... x86_64-apple-darwin13.3.0
checking for clang++... clang++
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang++ accepts -g... yes
checking for clang++ option to accept ISO C89... unsupported
checking whether clang++ understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of clang++... gcc3
checking for clang++... clang++
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking dependency style of clang++... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/local/bin/ggrep
checking for egrep... /usr/local/bin/ggrep -E
checking for fgrep... /usr/local/bin/ggrep -F
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-apple-darwin13.3.0 file names to x86_64-apple-darwin13.3.0 format... func_convert_file_noop
checking how to convert x86_64-apple-darwin13.3.0 file names to toolchain format... func_convert_file_noop
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from clang++ object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking how to run the C preprocessor... clang++ -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if clang++ supports -fno-rtti -fno-exceptions... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.3.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... clang++ -E
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.3.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether clang++ supports C++11 features by default... no
checking whether clang++ supports C++11 features with -std=gnu++11... yes
checking for eigen3... checking for /usr/include/eigen3/Eigen... no
checking for /usr/local/include/eigen3... yes
checking Eigen/Dense usability... yes
checking Eigen/Dense presence... yes
checking for Eigen/Dense... yes
checking for main in -lgflags... yes
checking for main in -lglog... no
checking gtest/gtest.h usability... no
checking gtest/gtest.h presence... no
checking for gtest/gtest.h... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating libcmaes.pc
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: creating examples/Makefile
config.status: creating python/Makefile
config.status: creating libcmaes_config.h
config.status: executing depfiles commands
config.status: executing libtool commands

@kegl
Copy link
Author

kegl commented Feb 2, 2015

the output of brew config is in the previous comment

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

OK, configure should say something about python and it does not, so let's fix this first:

./autogen.sh

then relaunch the configure script, and please post the output, it should say something about python right after the gtest.h check report.

EDIT: can you post the full ./configure line ?

@kegl
Copy link
Author

kegl commented Feb 2, 2015

Forgot to switch on python.

mbp-kuomo:libcmaes kegl$ ./configure --enable-python
configure: libcmaes 0.9.4
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-apple-darwin13.3.0
checking host system type... x86_64-apple-darwin13.3.0
checking for clang++... clang++
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang++ accepts -g... yes
checking for clang++ option to accept ISO C89... unsupported
checking whether clang++ understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of clang++... gcc3
checking for clang++... clang++
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking dependency style of clang++... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/bin/sed
checking for grep that handles long lines and -e... /usr/local/bin/ggrep
checking for egrep... /usr/local/bin/ggrep -E
checking for fgrep... /usr/local/bin/ggrep -F
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm
checking the name lister (/usr/bin/nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-apple-darwin13.3.0 file names to x86_64-apple-darwin13.3.0 format... func_convert_file_noop
checking how to convert x86_64-apple-darwin13.3.0 file names to toolchain format... func_convert_file_noop
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm output from clang++ object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking how to run the C preprocessor... clang++ -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if clang++ supports -fno-rtti -fno-exceptions... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.3.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... clang++ -E
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.3.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether clang++ supports C++11 features by default... no
checking whether clang++ supports C++11 features with -std=gnu++11... yes
checking for eigen3... checking for /usr/include/eigen3/Eigen... no
checking for /usr/local/include/eigen3... yes
checking Eigen/Dense usability... yes
checking Eigen/Dense presence... yes
checking for Eigen/Dense... yes
checking for main in -lgflags... yes
checking for main in -lglog... no
checking gtest/gtest.h usability... no
checking gtest/gtest.h presence... no
checking for gtest/gtest.h... no
checking for python... /Users/kegl/anaconda/bin/python
checking for a version of Python >= '2.1.0'... yes
checking for the distutils Python package... yes
checking for Python include path... -I/Users/kegl/anaconda/include/python2.7
checking for Python library path... -L/Users/kegl/anaconda/lib -lpython2.7
checking for Python site-packages path... /Users/kegl/anaconda/lib/python2.7/site-packages
checking python extra libraries... -ldl  -framework CoreFoundation 
checking python extra linking flags... -u _PyMac_Error
checking consistency of all components of python development environment... yes
checking whether the Boost::Python library is available... yes
checking for exit in -lboost_python... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating libcmaes.pc
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: creating examples/Makefile
config.status: creating python/Makefile
config.status: creating libcmaes_config.h
config.status: executing depfiles commands
config.status: executing libtool commands

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

Looks better, now I'd try:

make clean
make -j4

may take a while.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

OK

Maybe it's boost tht uses the wrong python?

mbp-kuomo:gflags-2.0 kegl$ brew reinstall boost --with-python
==> Reinstalling boost
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/boost-1.56.
Already downloaded: /Library/Caches/Homebrew/boost-1.56.0.mavericks.bottle.1.tar.gz
==> Pouring boost-1.56.0.mavericks.bottle.1.tar.gz
🍺 /usr/local/Cellar/boost/1.56.0: 10471 files, 438M

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

I know nothing about homebrew but if homebrew says that it is using

/Users/kegl/anaconda/bin/python

(from the brew --config) then boost-python should be using the right one as well.

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

Can you post the compile output when it comes to lcmaes.so please ? to get it, do

cd python
make clean
make

I can use this trace to better understand what is going on.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

mbp-kuomo:python kegl$ make clean
rm *.so *.o
mbp-kuomo:python kegl$ make
clang++ -g -Wall -fopenmp -I/Users/kegl/anaconda/pkgs/numpy-1.9.0-py27_0/lib/python2.7/site-packages/numpy/core/include/ -std=gnu++11 -I../ -I../src -I/usr/local/include/eigen3 -I/Users/kegl/anaconda/include/python2.7 -fPIC -c lcmaes.cc
clang: warning: argument unused during compilation: '-fopenmp'
clang++ -fPIC -shared  lcmaes.o -L../src/.libs -lboost_python -L/Users/kegl/anaconda/lib -lpython2.7 -lcmaes -o lcmaes.so

@kegl
Copy link
Author

kegl commented Feb 2, 2015

@kegl
Copy link
Author

kegl commented Feb 2, 2015

I think a proper solution would be to add cma to homebrew (eventually).

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

what does 'brew doctor' says ?

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

Also, could you locate your 'libboost_python.so' file ? In parallel could you send me your 'config.log' file by email please ? One possibility I want to check is whether the build is using the correct boost-python lib. Thanks.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

mbp-kuomo:~ kegl$ brew doctor
Please note that these warnings are just used to help the Homebrew maintainers
with debugging if you file an issue. If everything you use Homebrew for is
working fine: please don't worry and just ignore them. Thanks!

Warning: Setting DYLD_* vars can break dynamic linking.
Set variables:
    DYLD_LIBRARY_PATH: /Users/kegl/Research/CMAES/libcmaes/python/

Warning: Some directories in /usr/local/share/man aren't writable.
This can happen if you "sudo make install" software that isn't managed
by Homebrew. If a brew tries to add locale information to one of these
directories, then the install will fail during the link step.
You should probably `chown` them:

    /usr/local/share/man/de
    /usr/local/share/man/de/man1

Warning: "config" scripts exist outside your system or Homebrew directories.
`./configure` scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.

Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:

  /Users/kegl/anaconda/bin/curl-config
  /Users/kegl/anaconda/bin/freetype-config
  /Users/kegl/anaconda/bin/libdynd-config
  /Users/kegl/anaconda/bin/libpng-config
  /Users/kegl/anaconda/bin/libpng15-config
  /Users/kegl/anaconda/bin/llvm-config
  /Users/kegl/anaconda/bin/python-config
  /Users/kegl/anaconda/bin/python2-config
  /Users/kegl/anaconda/bin/python2.7-config
  /Users/kegl/anaconda/bin/xml2-config
  /Users/kegl/anaconda/bin/xslt-config
  /Users/kegl/Research/Root/root/bin/root-config

Warning: Unbrewed dylibs were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected dylibs:
    /usr/local/lib/libcmaes.0.dylib
    /usr/local/lib/libgflags.2.dylib
    /usr/local/lib/libgflags_nothreads.2.dylib

Warning: Unbrewed header files were found in /usr/local/include.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected header files:
    /usr/local/include/google/gflags.h
    /usr/local/include/google/gflags_completions.h
    /usr/local/include/libcmaes/acovarianceupdate.h
    /usr/local/include/libcmaes/bipopcmastrategy.h
    /usr/local/include/libcmaes/candidate.h
    /usr/local/include/libcmaes/cmaes.h
    /usr/local/include/libcmaes/cmaparameters.h
    /usr/local/include/libcmaes/cmasolutions.h
    /usr/local/include/libcmaes/cmastopcriteria.h
    /usr/local/include/libcmaes/cmastrategy.h
    /usr/local/include/libcmaes/contour.h
    /usr/local/include/libcmaes/covarianceupdate.h
    /usr/local/include/libcmaes/eigenmvn.h
    /usr/local/include/libcmaes/eo_matrix.h
    /usr/local/include/libcmaes/errstats.h
    /usr/local/include/libcmaes/esoptimizer.h
    /usr/local/include/libcmaes/esostrategy.h
    /usr/local/include/libcmaes/genopheno.h
    /usr/local/include/libcmaes/ipopcmastrategy.h
    /usr/local/include/libcmaes/libcmaes_config.h
    /usr/local/include/libcmaes/llogging.h
    /usr/local/include/libcmaes/noboundstrategy.h
    /usr/local/include/libcmaes/opti_err.h
    /usr/local/include/libcmaes/parameters.h
    /usr/local/include/libcmaes/pli.h
    /usr/local/include/libcmaes/pwq_bound_strategy.h
    /usr/local/include/libcmaes/scaling.h
    /usr/local/include/libcmaes/surrcmaes.h
    /usr/local/include/libcmaes/surrogatestrategy.h
    /usr/local/include/libcmaes/vdcmaupdate.h

Warning: Unbrewed .la files were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .la files:
    /usr/local/lib/libcmaes.la
    /usr/local/lib/libgflags.la
    /usr/local/lib/libgflags_nothreads.la

Warning: Unbrewed .pc files were found in /usr/local/lib/pkgconfig.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected .pc files:
    /usr/local/lib/pkgconfig/libcmaes.pc
    /usr/local/lib/pkgconfig/libgflags.pc
    /usr/local/lib/pkgconfig/libgflags_nothreads.pc

Warning: Unbrewed static libraries were found in /usr/local/lib.
If you didn't put them there on purpose they could cause problems when
building Homebrew formulae, and may need to be deleted.

Unexpected static libraries:
    /usr/local/lib/libcmaes.a
    /usr/local/lib/libgflags.a
    /usr/local/lib/libgflags_nothreads.a

Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run `brew link` on these:

    coreutils

Warning: Some directories in your path end in a slash.
Directories in your path should not end in a slash. This can break other
doctor checks. The following directories should be edited:
    /Users/kegl/Scripts/Bin//

Warning: /usr/bin occurs before /usr/local/bin
This means that system-provided programs will be used instead of those
provided by Homebrew. The following tools exist at both paths:

    bashbug

Consider setting your PATH so that /usr/local/bin
occurs before /usr/bin. Here is a one-liner:
    echo export PATH='/usr/local/bin:$PATH' >> ~/.bash_profile

Warning: Your Xcode (6.1) is outdated
Please update to Xcode 6.1.1.
Xcode can be updated from the App Store.
mbp-kuomo:~ kegl$ 

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

mbp-kuomo:~ kegl$ brew doctor

thanks, nothing bad from what I see.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

I don't have a libboost_python

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

even in /Users/kegl/anaconda/lib ?

@kegl
Copy link
Author

kegl commented Feb 2, 2015

mbp-kuomo:Applications kegl$ cd /Users/kegl/anaconda/lib
mbp-kuomo:lib kegl$ ls -la
total 336848
drwxr-xr-x 234 kegl staff 7956 Nov 14 19:45 .
drwxr-xr-x 25 kegl staff 850 Jan 30 10:33 ..
-rwxr-xr-x 2 kegl staff 20736 Aug 6 2013 BugpointPasses.dylib
-rwxr-xr-x 2 kegl staff 18960 Aug 6 2013 LLVMHello.dylib
-rw-r--r-- 2 kegl staff 154497 May 1 2014 Tk.icns
-rw-r--r-- 2 kegl staff 53684 May 1 2014 Tk.tiff
drwxr-xr-x 14 kegl staff 476 Nov 14 19:45 engines
-rwxr-xr-x 2 kegl staff 40830872 Aug 6 2013 libLLVM-3.3.dylib
-rwxr-xr-x 2 kegl staff 3268060 Aug 6 2013 libLTO.a
-rwxr-xr-x 2 kegl staff 185568 Aug 6 2013 libLTO.dylib
-rwxr-xr-x 2 kegl staff 1507676 Feb 11 2014 libQtCLucene.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 24 Nov 14 19:45 libQtCLucene.4.8.dylib -> libQtCLucene.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 24 Nov 14 19:45 libQtCLucene.4.dylib -> libQtCLucene.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 24 Nov 14 19:45 libQtCLucene.dylib -> libQtCLucene.4.8.6.dylib
-rw-r--r-- 1 kegl staff 749 Nov 14 19:45 libQtCLucene.la
-rw-r--r-- 1 kegl staff 1098 Nov 14 19:45 libQtCLucene.prl
-rwxr-xr-x 2 kegl staff 3306216 Feb 11 2014 libQtCore.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtCore.4.8.dylib -> libQtCore.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtCore.4.dylib -> libQtCore.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtCore.dylib -> libQtCore.4.8.6.dylib
-rw-r--r-- 1 kegl staff 693 Nov 14 19:45 libQtCore.la
-rw-r--r-- 1 kegl staff 1029 Nov 14 19:45 libQtCore.prl
-rwxr-xr-x 2 kegl staff 621444 Feb 11 2014 libQtDBus.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtDBus.4.8.dylib -> libQtDBus.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtDBus.4.dylib -> libQtDBus.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtDBus.dylib -> libQtDBus.4.8.6.dylib
-rw-r--r-- 1 kegl staff 736 Nov 14 19:45 libQtDBus.la
-rw-r--r-- 1 kegl staff 1080 Nov 14 19:45 libQtDBus.prl
-rwxr-xr-x 2 kegl staff 4789704 Feb 11 2014 libQtDeclarative.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtDeclarative.4.8.dylib -> libQtDeclarative.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtDeclarative.4.dylib -> libQtDeclarative.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtDeclarative.dylib -> libQtDeclarative.4.8.6.dylib
-rw-r--r-- 1 kegl staff 840 Nov 14 19:45 libQtDeclarative.la
-rw-r--r-- 1 kegl staff 1141 Nov 14 19:45 libQtDeclarative.prl
-rwxr-xr-x 2 kegl staff 5983044 Feb 11 2014 libQtDesigner.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 25 Nov 14 19:45 libQtDesigner.4.8.dylib -> libQtDesigner.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 25 Nov 14 19:45 libQtDesigner.4.dylib -> libQtDesigner.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 25 Nov 14 19:45 libQtDesigner.dylib -> libQtDesigner.4.8.6.dylib
-rw-r--r-- 2 kegl staff 1148 Feb 11 2014 libQtDesigner.prl
-rwxr-xr-x 2 kegl staff 3479592 Feb 11 2014 libQtDesignerComponents.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 35 Nov 14 19:45 libQtDesignerComponents.4.8.dylib -> libQtDesignerComponents.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 35 Nov 14 19:45 libQtDesignerComponents.4.dylib -> libQtDesignerComponents.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 35 Nov 14 19:45 libQtDesignerComponents.dylib -> libQtDesignerComponents.4.8.6.dylib
-rw-r--r-- 2 kegl staff 938 Feb 11 2014 libQtDesignerComponents.prl
-rwxr-xr-x 2 kegl staff 12387324 Feb 11 2014 libQtGui.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtGui.4.8.dylib -> libQtGui.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtGui.4.dylib -> libQtGui.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtGui.dylib -> libQtGui.4.8.6.dylib
-rw-r--r-- 1 kegl staff 721 Nov 14 19:45 libQtGui.la
-rw-r--r-- 1 kegl staff 1055 Nov 14 19:45 libQtGui.prl
-rwxr-xr-x 2 kegl staff 660092 Feb 11 2014 libQtHelp.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtHelp.4.8.dylib -> libQtHelp.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtHelp.4.dylib -> libQtHelp.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtHelp.dylib -> libQtHelp.4.8.6.dylib
-rw-r--r-- 1 kegl staff 756 Nov 14 19:45 libQtHelp.la
-rw-r--r-- 1 kegl staff 1107 Nov 14 19:45 libQtHelp.prl
-rwxr-xr-x 2 kegl staff 206684 Feb 11 2014 libQtMultimedia.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 27 Nov 14 19:45 libQtMultimedia.4.8.dylib -> libQtMultimedia.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 27 Nov 14 19:45 libQtMultimedia.4.dylib -> libQtMultimedia.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 27 Nov 14 19:45 libQtMultimedia.dylib -> libQtMultimedia.4.8.6.dylib
-rw-r--r-- 1 kegl staff 875 Nov 14 19:45 libQtMultimedia.la
-rw-r--r-- 1 kegl staff 1181 Nov 14 19:45 libQtMultimedia.prl
-rwxr-xr-x 2 kegl staff 1580548 Feb 11 2014 libQtNetwork.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 24 Nov 14 19:45 libQtNetwork.4.8.dylib -> libQtNetwork.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 24 Nov 14 19:45 libQtNetwork.4.dylib -> libQtNetwork.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 24 Nov 14 19:45 libQtNetwork.dylib -> libQtNetwork.4.8.6.dylib
-rw-r--r-- 1 kegl staff 749 Nov 14 19:45 libQtNetwork.la
-rw-r--r-- 1 kegl staff 1067 Nov 14 19:45 libQtNetwork.prl
-rwxr-xr-x 2 kegl staff 1086312 Feb 11 2014 libQtOpenGL.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtOpenGL.4.8.dylib -> libQtOpenGL.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtOpenGL.4.dylib -> libQtOpenGL.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtOpenGL.dylib -> libQtOpenGL.4.8.6.dylib
-rw-r--r-- 1 kegl staff 750 Nov 14 19:45 libQtOpenGL.la
-rw-r--r-- 1 kegl staff 1079 Nov 14 19:45 libQtOpenGL.prl
-rwxr-xr-x 2 kegl staff 2614340 Feb 11 2014 libQtScript.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtScript.4.8.dylib -> libQtScript.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtScript.4.dylib -> libQtScript.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtScript.dylib -> libQtScript.4.8.6.dylib
-rw-r--r-- 1 kegl staff 742 Nov 14 19:45 libQtScript.la
-rw-r--r-- 1 kegl staff 1092 Nov 14 19:45 libQtScript.prl
-rwxr-xr-x 2 kegl staff 1038016 Feb 11 2014 libQtScriptTools.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtScriptTools.4.8.dylib -> libQtScriptTools.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtScriptTools.4.dylib -> libQtScriptTools.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtScriptTools.dylib -> libQtScriptTools.4.8.6.dylib
-rw-r--r-- 1 kegl staff 796 Nov 14 19:45 libQtScriptTools.la
-rw-r--r-- 1 kegl staff 1098 Nov 14 19:45 libQtScriptTools.prl
-rwxr-xr-x 2 kegl staff 282616 Feb 11 2014 libQtSql.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtSql.4.8.dylib -> libQtSql.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtSql.4.dylib -> libQtSql.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtSql.dylib -> libQtSql.4.8.6.dylib
-rw-r--r-- 1 kegl staff 721 Nov 14 19:45 libQtSql.la
-rw-r--r-- 1 kegl staff 1055 Nov 14 19:45 libQtSql.prl
-rwxr-xr-x 2 kegl staff 399108 Feb 11 2014 libQtSvg.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtSvg.4.8.dylib -> libQtSvg.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtSvg.4.dylib -> libQtSvg.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtSvg.dylib -> libQtSvg.4.8.6.dylib
-rw-r--r-- 1 kegl staff 729 Nov 14 19:45 libQtSvg.la
-rw-r--r-- 1 kegl staff 1063 Nov 14 19:45 libQtSvg.prl
-rwxr-xr-x 2 kegl staff 182168 Feb 11 2014 libQtTest.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtTest.4.8.dylib -> libQtTest.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtTest.4.dylib -> libQtTest.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libQtTest.dylib -> libQtTest.4.8.6.dylib
-rw-r--r-- 1 kegl staff 796 Nov 14 19:45 libQtTest.la
-rw-r--r-- 1 kegl staff 1132 Nov 14 19:45 libQtTest.prl
-rw-r--r-- 2 kegl staff 1219064 Feb 11 2014 libQtUiTools.a
-rw-r--r-- 2 kegl staff 1106 Feb 11 2014 libQtUiTools.prl
-rw-r--r-- 2 kegl staff 9654248 Feb 11 2014 libQtUiTools_debug.a
-rw-r--r-- 2 kegl staff 1094 Feb 11 2014 libQtUiTools_debug.prl
-rwxr-xr-x 2 kegl staff 31456692 Feb 11 2014 libQtWebKit.4.9.4.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtWebKit.4.9.dylib -> libQtWebKit.4.9.4.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtWebKit.4.dylib -> libQtWebKit.4.9.4.dylib
lrwxr-xr-x 1 kegl staff 23 Nov 14 19:45 libQtWebKit.dylib -> libQtWebKit.4.9.4.dylib
-rw-r--r-- 1 kegl staff 872 Nov 14 19:45 libQtWebKit.la
-rw-r--r-- 2 kegl staff 1126 Feb 11 2014 libQtWebKit.prl
-rwxr-xr-x 2 kegl staff 359856 Feb 11 2014 libQtXml.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtXml.4.8.dylib -> libQtXml.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtXml.4.dylib -> libQtXml.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libQtXml.dylib -> libQtXml.4.8.6.dylib
-rw-r--r-- 1 kegl staff 721 Nov 14 19:45 libQtXml.la
-rw-r--r-- 1 kegl staff 1055 Nov 14 19:45 libQtXml.prl
-rwxr-xr-x 2 kegl staff 5575608 Feb 11 2014 libQtXmlPatterns.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtXmlPatterns.4.8.dylib -> libQtXmlPatterns.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtXmlPatterns.4.dylib -> libQtXmlPatterns.4.8.6.dylib
lrwxr-xr-x 1 kegl staff 28 Nov 14 19:45 libQtXmlPatterns.dylib -> libQtXmlPatterns.4.8.6.dylib
-rw-r--r-- 1 kegl staff 789 Nov 14 19:45 libQtXmlPatterns.la
-rw-r--r-- 1 kegl staff 1091 Nov 14 19:45 libQtXmlPatterns.prl
-rwxr-xr-x 2 kegl staff 1894576 Sep 15 21:24 libcrypto.1.0.0.dylib
-rw-r--r-- 2 kegl staff 3176024 Sep 15 21:24 libcrypto.a
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libcrypto.dylib -> libcrypto.1.0.0.dylib
-rwxr-xr-x 2 kegl staff 419448 Sep 11 21:22 libcurl.4.dylib
-rw-r--r-- 2 kegl staff 642840 Sep 11 21:22 libcurl.a
lrwxr-xr-x 1 kegl staff 15 Nov 14 19:45 libcurl.dylib -> libcurl.4.dylib
-rwxr-xr-x 1 kegl staff 983 Nov 14 19:45 libcurl.la
-rwxr-xr-x 2 kegl staff 5410040 Aug 29 20:39 libdynd_v0.6.5.dylib
-rwxr-xr-x 2 kegl staff 104224 Jan 23 2014 libexslt.0.dylib
-rw-r--r-- 2 kegl staff 133584 Jan 23 2014 libexslt.a
lrwxr-xr-x 1 kegl staff 16 Nov 14 19:45 libexslt.dylib -> libexslt.0.dylib
-rwxr-xr-x 1 kegl staff 1055 Nov 14 19:45 libexslt.la
-rwxr-xr-x 2 kegl staff 797768 Apr 27 2013 libfreetype.6.dylib
-rw-r--r-- 2 kegl staff 992352 Apr 27 2013 libfreetype.a
lrwxr-xr-x 1 kegl staff 19 Nov 14 19:45 libfreetype.dylib -> libfreetype.6.dylib
-rwxr-xr-x 1 kegl staff 955 Nov 14 19:45 libfreetype.la
-rwxr-xr-x 2 kegl staff 2916480 Sep 11 20:29 libhdf5.8.dylib
lrwxr-xr-x 1 kegl staff 15 Nov 14 19:45 libhdf5.dylib -> libhdf5.8.dylib
-rwxr-xr-x 1 kegl staff 934 Nov 14 19:45 libhdf5.la
-rw-r--r-- 1 kegl staff 2921 Nov 14 19:45 libhdf5.settings
-rwxr-xr-x 2 kegl staff 117576 Sep 11 20:29 libhdf5_hl.8.dylib
lrwxr-xr-x 1 kegl staff 18 Nov 14 19:45 libhdf5_hl.dylib -> libhdf5_hl.8.dylib
-rwxr-xr-x 1 kegl staff 985 Nov 14 19:45 libhdf5_hl.la
-rwxr-xr-x 2 kegl staff 41656 Jan 4 2014 libhistory.6.2.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libhistory.6.dylib -> libhistory.6.2.dylib
-rw-r--r-- 2 kegl staff 51232 Jan 4 2014 libhistory.a
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 libhistory.dylib -> libhistory.6.2.dylib
-rwxr-xr-x 2 kegl staff 345248 Apr 26 2013 libjpeg.8.dylib
-rw-r--r-- 2 kegl staff 413816 Apr 26 2013 libjpeg.a
lrwxr-xr-x 1 kegl staff 15 Nov 14 19:45 libjpeg.dylib -> libjpeg.8.dylib
-rwxr-xr-x 1 kegl staff 921 Nov 14 19:45 libjpeg.la
-rwxr-xr-x 2 kegl staff 273352 Feb 27 2014 liblcms.1.0.19.dylib
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 liblcms.1.dylib -> liblcms.1.0.19.dylib
-rw-r--r-- 2 kegl staff 396608 Feb 27 2014 liblcms.a
lrwxr-xr-x 1 kegl staff 20 Nov 14 19:45 liblcms.dylib -> liblcms.1.0.19.dylib
-rwxr-xr-x 1 kegl staff 821 Nov 14 19:45 liblcms.la
-rwxr-xr-x 2 kegl staff 409736 Feb 11 2014 libphonon.4.4.0.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libphonon.4.4.dylib -> libphonon.4.4.0.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libphonon.4.dylib -> libphonon.4.4.0.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libphonon.dylib -> libphonon.4.4.0.dylib
-rw-r--r-- 1 kegl staff 753 Nov 14 19:45 libphonon.la
-rw-r--r-- 1 kegl staff 1127 Nov 14 19:45 libphonon.prl
lrwxr-xr-x 1 kegl staff 10 Nov 14 19:45 libpng.a -> libpng15.a
lrwxr-xr-x 1 kegl staff 14 Nov 14 19:45 libpng.dylib -> libpng15.dylib
lrwxr-xr-x 1 kegl staff 11 Nov 14 19:45 libpng.la -> libpng15.la
-rwxr-xr-x 2 kegl staff 234800 Apr 28 2013 libpng15.15.dylib
-rw-r--r-- 2 kegl staff 309784 Apr 28 2013 libpng15.a
lrwxr-xr-x 1 kegl staff 17 Nov 14 19:45 libpng15.dylib -> libpng15.15.dylib
-rwxr-xr-x 1 kegl staff 934 Nov 14 19:45 libpng15.la
-rwxr-xr-x 2 kegl staff 39000 Aug 6 2013 libprofile_rt.a
-rwxr-xr-x 2 kegl staff 17248 Aug 6 2013 libprofile_rt.dylib
-rwxr-xr-x 2 kegl staff 2267256 Aug 21 22:23 libpython2.7.dylib
-rwxr-xr-x 2 kegl staff 283120 Jan 4 2014 libreadline.6.2.dylib
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libreadline.6.dylib -> libreadline.6.2.dylib
-rw-r--r-- 2 kegl staff 461208 Jan 4 2014 libreadline.a
lrwxr-xr-x 1 kegl staff 21 Nov 14 19:45 libreadline.dylib -> libreadline.6.2.dylib
-rwxr-xr-x 2 kegl staff 608812 Mar 5 2014 libsodium.4.dylib
-rw-r--r-- 2 kegl staff 826272 Mar 5 2014 libsodium.a
lrwxr-xr-x 1 kegl staff 17 Nov 14 19:45 libsodium.dylib -> libsodium.4.dylib
-rwxr-xr-x 1 kegl staff 932 Nov 14 19:45 libsodium.la
-rwxr-xr-x 2 kegl staff 1002920 Mar 17 2014 libsqlite3.0.dylib
-rw-r--r-- 2 kegl staff 1276960 Mar 17 2014 libsqlite3.a
lrwxr-xr-x 1 kegl staff 18 Nov 14 19:45 libsqlite3.dylib -> libsqlite3.0.dylib
-rwxr-xr-x 1 kegl staff 938 Nov 14 19:45 libsqlite3.la
-rwxr-xr-x 2 kegl staff 465552 Sep 15 21:24 libssl.1.0.0.dylib
-rw-r--r-- 2 kegl staff 606360 Sep 15 21:24 libssl.a
lrwxr-xr-x 1 kegl staff 18 Nov 14 19:45 libssl.dylib -> libssl.1.0.0.dylib
-rwxr-xr-x 2 kegl staff 1038468 May 1 2014 libtcl8.5.dylib
-rwxr-xr-x 2 kegl staff 2664 May 1 2014 libtclstub8.5.a
-rwxr-xr-x 2 kegl staff 535488 Sep 3 17:08 libtiff.5.dylib
-rw-r--r-- 2 kegl staff 666928 Sep 3 17:08 libtiff.a
lrwxr-xr-x 1 kegl staff 15 Nov 14 19:45 libtiff.dylib -> libtiff.5.dylib
-rwxr-xr-x 1 kegl staff 928 Nov 14 19:45 libtiff.la
-rwxr-xr-x 2 kegl staff 15248 Sep 3 17:08 libtiffxx.5.dylib
-rw-r--r-- 2 kegl staff 12424 Sep 3 17:08 libtiffxx.a
lrwxr-xr-x 1 kegl staff 17 Nov 14 19:45 libtiffxx.dylib -> libtiffxx.5.dylib
-rwxr-xr-x 1 kegl staff 976 Nov 14 19:45 libtiffxx.la
-rwxr-xr-x 2 kegl staff 1408844 May 1 2014 libtk8.5.dylib
-rwxr-xr-x 2 kegl staff 3976 May 1 2014 libtkstub8.5.a
-rwxr-xr-x 2 kegl staff 1812392 Apr 28 2013 libxml2.2.dylib
-rw-r--r-- 2 kegl staff 2482288 Apr 28 2013 libxml2.a
lrwxr-xr-x 1 kegl staff 15 Nov 14 19:45 libxml2.dylib -> libxml2.2.dylib
-rwxr-xr-x 1 kegl staff 950 Nov 14 19:45 libxml2.la
-rwxr-xr-x 2 kegl staff 304152 Jan 23 2014 libxslt.1.dylib
-rw-r--r-- 2 kegl staff 422072 Jan 23 2014 libxslt.a
lrwxr-xr-x 1 kegl staff 15 Nov 14 19:45 libxslt.dylib -> libxslt.1.dylib
-rwxr-xr-x 1 kegl staff 1013 Nov 14 19:45 libxslt.la
-rwxr-xr-x 2 kegl staff 211824 Apr 28 2013 libyaml-0.2.dylib
-rw-r--r-- 2 kegl staff 243504 Apr 28 2013 libyaml.a
lrwxr-xr-x 1 kegl staff 17 Nov 14 19:45 libyaml.dylib -> libyaml-0.2.dylib
-rwxr-xr-x 1 kegl staff 950 Nov 14 19:45 libyaml.la
-rwxr-xr-x 2 kegl staff 116264 Apr 26 2013 libz.1.2.7.dylib
lrwxr-xr-x 1 kegl staff 16 Nov 14 19:45 libz.1.dylib -> libz.1.2.7.dylib
-rw-r--r-- 2 kegl staff 134480 Apr 26 2013 libz.a
lrwxr-xr-x 1 kegl staff 16 Nov 14 19:45 libz.dylib -> libz.1.2.7.dylib
-rwxr-xr-x 2 kegl staff 702104 Mar 12 2014 libzmq.3.dylib
-rw-r--r-- 2 kegl staff 1716908 Mar 12 2014 libzmq.a
lrwxr-xr-x 1 kegl staff 14 Nov 14 19:45 libzmq.dylib -> libzmq.3.dylib
-rwxr-xr-x 1 kegl staff 1011 Nov 14 19:45 libzmq.la
drwxr-xr-x 43 kegl staff 1462 Nov 14 19:45 pkgconfig
drwxr-xr-x 649 kegl staff 22066 Nov 14 19:46 python2.7
drwxr-xr-x 4 kegl staff 136 Nov 14 19:45 tcl8
drwxr-xr-x 17 kegl staff 578 Nov 14 19:45 tcl8.5
-rw-r--r-- 1 kegl staff 7518 Nov 14 19:45 tclConfig.sh
drwxr-xr-x 36 kegl staff 1224 Nov 14 19:45 tk8.5
-rw-r--r-- 1 kegl staff 4153 Nov 14 19:45 tkConfig.sh
-rw-r--r-- 1 kegl staff 238 Nov 14 19:45 xml2Conf.sh
-rw-r--r-- 1 kegl staff 243 Nov 14 19:45 xsltConf.sh

@kegl
Copy link
Author

kegl commented Feb 2, 2015

To console you: I can't get hyperopt working either :)

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

I can't get hyperopt working either

can you paste the error if it is short enough, as it may shed light on the configuration problem. The whole thing appears to be a conflict between python-apple and python from homebrew.

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

Also, do you have

/usr/local/bin/python

?
EDIT: spell

@kegl
Copy link
Author

kegl commented Feb 2, 2015

It seems different. I can get hyperopt working but not their notebook.

@kegl
Copy link
Author

kegl commented Feb 2, 2015

/usr/local/binpython: No such file or directory

@kegl
Copy link
Author

kegl commented Feb 2, 2015

No /usr/local/bin/python either :)

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

my bad, see the fixed spelling /bin/python
OK

@kegl
Copy link
Author

kegl commented Feb 2, 2015

no /bin/python either

@beniz
Copy link
Collaborator

beniz commented Feb 2, 2015

I see that your configure line is rather minimal, could you try configuring with

./configure --enable-python LDFLAGS="-L/opt/local/lib `python-config --ldflags` `python-config --libs`" CXXFLAGS="-I/Users/kegl/anaconda/pkgs/numpy-1.9.0-py27_0/lib/python2.7/site-packages/numpy/core/include/"

and/or tell me what

python-config --libs
python-config --ldflags

says...

@beniz beniz self-assigned this Feb 3, 2015
@beniz beniz changed the title python/anaconda/brew building python bindings with Anaconda (and homebrew / OSX as well) Feb 3, 2015
@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

OK, so I've successfully compiled both stable and dev versions of libcmaes on OSX with system Python. I do now consider this is a difficulty with Anaconda, and have renamed the ticket accordingly.

I am investigating the Anaconda support now, starting with Ubuntu, and later with OSX.

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

OK, so anaconda works without problem with libcmaes and python bindings on Ubuntu.
On OSX, the problem seems very well known:
http://seite9.de/posts/anaconda.html
https://mail.python.org/pipermail/cplusplus-sig/2014-July/017131.html
http://stackoverflow.com/questions/22575527/boost-python-python-linkage-error
http://darkmatter.ps.uci.edu/wiki/AnacondaGalSim
and there doesn't seem to exist a simple solution: all are rather complicated and require sudo for manipulating system libraries (absolutely not clear how to undo), which is difficult to recommend.

--> rant begin here:
Let me add a mid-day rant about corporate products here that are the only ones to systematically propagate such problems by lack of openess and therefore of workforce. Looking around the Web, many people lost many hours if not days (see links above) because of a stupid relative path linking issue in Anaconda on OSX.
rant end <--

And still trying to come up with a full begin to end solution for OSX of course.

EDIT: cleanliness

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

Got it to work through a complicated process, will post the full doc this afternoon, and if there's a good soul who is willing to replicate, I guess life would be perfect (again) :)

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

Compile with Anaconda on Ubuntu

Assuming anaconda is installed in

/home/you/anaconda

the following steps should allow you to compile libcmaes and python bindings for anaconda and gcc (anaconda supplies a link to clang, which would otherwise be picked up by libcmaes, it is simpler with gcc).

From within libcmaes repository:

export PATH=/home/you/bin:/home/you/anaconda/bin:$PATH
export CXX=/usr/bin/g++
export CC=/usr/bin/gcc
./configure --enable-python
make
cd python
export LD_LIBRARY_PATH=../src/.libs
/home/you/anaconda/bin/python ptest.py

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

Compile with Anaconda on OSX

Assuming that anaconda is installed in

/Users/you/anaconda

the following steps should allow you to compile libcmaes with python bindings for anaconda:

  • fix anaconda lib:
install_name_tool -id /Users/you/anaconda/lib/libpython2.7.dylib /Users/you/anaconda/lib/libpython2.7.dylib
  • (re-)compile boost python
mkdir /Users/you/tmp
cd /Users/you/tmp
wget http://sourceforge.net/projects/boost/files/boost/1.57.0/boost_1_57_0.tar.bz2/download
mv download boost_1_57_0.tar.bz2
tar xvjf boost_1_57_0.tar.bz2
mkdir /Users/you/anaconda_boost_install
cd boost_1_57_0
./bootstrap.sh --prefix=/Users/you/anaconda_boost_install/ --with-python=/Users/you/anaconda/bin/python2.7
./b2 link=shared
./b2 link=shared install
  • fix libboost-python against anaconda:
install_name_tool -id /Users/you/anaconda_boost_install/lib/libboost_python.dylib /Users/you/anaconda_boost_install/lib/libboost_python.dylib
  • finally build libcmaes with python bindings for anaconda
export PATH=/Users/you/anaconda/bin:$PATH
cd /path/to/libcmaes
./configure --enable-python CXXFLAGS="-O2 -I/Users/you/anaconda/lib/python2.7/site-packages/numpy/core/include/ -I/Users/you/anaconda_boost_install/include" LDFLAGS="-L/Users/you/anaconda_boost_install/lib"
make
cd python
export DYLD_LIBRARY_PATH=../src/.libs
/Users/you/anaconda/bin/python ptest.py

TIP: if you have already compiled libcmaes, after the call to configure, do cd python, then make clean && make. This would recompile only the python bindings part, which is enough.

@nikohansen
Copy link
Collaborator

This looks promising.

When calling

./b2 link=shared

I got many of these kind of messages:

ld: symbol(s) not found for architecture x86_64
collect2: error: ld returned 1 exit status

    "g++" -dynamiclib -Wl,-single_module -install_name "libboost_signals.dylib"  -o "stage/lib/libboost_signals.dylib" "bin.v2/libs/signals/build/darwin-4.8.3/release/threading-multi/trackable.o" "bin.v2/libs/signals/build/darwin-4.8.3/release/threading-multi/connection.o" "bin.v2/libs/signals/build/darwin-4.8.3/release/threading-multi/named_slot_map.o" "bin.v2/libs/signals/build/darwin-4.8.3/release/threading-multi/signal_base.o" "bin.v2/libs/signals/build/darwin-4.8.3/release/threading-multi/slot.o"      -headerpad_max_install_names -Wl,-dead_strip -no_dead_strip_inits_and_terms 

...failed darwin.link.dll stage/lib/libboost_signals.dylib...

and finally

darwin.compile.c++ bin.v2/libs/wave/build/darwin-4.8.3/release/threading-multi/cpplexer/re2clex/cpp_re.o
...skipped <pstage/lib>libboost_wave.dylib for lack of <pbin.v2/libs/chrono/build/darwin-4.8.3/release/threading-multi>libboost_chrono.dylib...
...failed updating 20 targets...
...skipped 16 targets...
...updated 485 targets...

Is this all right?

Then, I get from

./configure --enable-python CXXFLAGS="-O2 -I/Users/you/anaconda/lib/python2.7/site-packages/numpy/core/include/ -I/Users/you/anaconda_boost_install/include" LDFLAGS="-L/Users/you/anaconda_boost_install/lib"

[...]
checking how to hardcode library paths into programs... immediate
checking whether clang++ supports C++11 features by default... no
checking whether clang++ supports C++11 features with -std=gnu++11... yes
checking for eigen3... checking for /usr/include/eigen3/Eigen... no
checking for /usr/local/include/eigen3... no
checking Eigen/Dense usability... no
checking Eigen/Dense presence... no
checking for Eigen/Dense... no
configure: error: Cannot find Eigen3

Looks familiar, I have done sudo port install Eigen3, but I can't remember out of my head how to proceed from here.

@nikohansen
Copy link
Collaborator

./configure --with-eigen3-include=/opt/local/include/eigen3 --enable-python CXXFLAGS="-O2 -I/Users/hansen/anaconda/lib/python2.7/site-packages/numpy/core/include/ -I/Users/hansen/anaconda_boost_install/include" LDFLAGS="-L/Users/hansen/anaconda_boost_install/lib"

appears to go through

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

The early errors in the building libboost look like a gcc / clang mismatch, and since you are using port, I will very probably need to investigate.

As for the latter question, you should add

--with-eigen3-include=/opt/local/include/eigen3

to your configure call. This is because port does not install eigen (and other packages I suppose) in a 'standard' repository (e.g. /usr/local) whereas homebrew appears to do that (and thus eigen3 can be found by 'standard' scripts scanning those repositories).

EDIT: hey, thanks for trying it out so quickly!

@nikohansen
Copy link
Collaborator

FTR,

make

fails with

In file included from /Users/hansen/anaconda_boost_install/include/boost/python/detail/prefix.hpp:13:
/Users/hansen/anaconda_boost_install/include/boost/python/detail/wrap_python.hpp:50:11: fatal error: 'pyconfig.h' file not found
# include <pyconfig.h>
          ^
1 error generated.
make[2]: *** [lcmaes.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

The output from your configure script would help here. It might be benign.

On February 3, 2015 5:00:08 PM GMT+01:00, nikohansen notifications@github.com wrote:

FTR,

make

fails with

In file included from
/Users/hansen/anaconda_boost_install/include/boost/python/detail/prefix.hpp:13:
/Users/hansen/anaconda_boost_install/include/boost/python/detail/wrap_python.hpp:50:11:
fatal error: 'pyconfig.h' file not found

include <pyconfig.h>

         ^

1 error generated.
make[2]: *** [lcmaes.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all] Error 2


Reply to this email directly or view it on GitHub:
#111 (comment)

Sent from my Android device with K-9 Mail. Please excuse my brevity.

@nikohansen
Copy link
Collaborator

[16:24:47] 0 libcmaes$ ./configure --with-eigen3-include=/opt/local/include/eigen3 CXXFLAGS="-I/opt/local/include -O3 -I/opt/local//Library/Frameworks/Python.framework/Versions/2.7/include -I/opt/local/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/numpy/core/include" LDADD=-lgflags LDFLAGS="-L/opt/local/lib" BOOST_LDFLAGS=-L/opt/local/lib --enable-python PYTHON=/opt/local/bin/python PYTHON_EXTRA_LDFLAGS="-u _PyMac_Error"  LDFLAGS="-L/opt/local/lib `python-config --ldflags` `python-config --libs`"
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-apple-darwin13.4.0
checking host system type... x86_64-apple-darwin13.4.0
checking for clang++... clang++
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang++ accepts -g... yes
checking for clang++ option to accept ISO C89... unsupported
checking whether clang++ understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of clang++... gcc3
checking for clang++... clang++
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking dependency style of clang++... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/local/octave/3.8.0/bin/gsed
checking for grep that handles long lines and -e... /usr/local/octave/3.8.0/bin/grep
checking for egrep... /usr/local/octave/3.8.0/bin/grep -E
checking for fgrep... /usr/local/octave/3.8.0/bin/grep -F
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/local/octave/3.8.0/bin/nm
checking the name lister (/usr/local/octave/3.8.0/bin/nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-apple-darwin13.4.0 file names to x86_64-apple-darwin13.4.0 format... func_convert_file_noop
checking how to convert x86_64-apple-darwin13.4.0 file names to toolchain format... func_convert_file_noop
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/local/octave/3.8.0/bin/nm output from clang++ object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking how to run the C preprocessor... clang++ -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if clang++ supports -fno-rtti -fno-exceptions... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.4.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... clang++ -E
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.4.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether clang++ supports C++11 features by default... no
checking whether clang++ supports C++11 features with -std=gnu++11... yes
checking for eigen3... checking for /opt/local/include/eigen3/Eigen... yes
checking Eigen/Dense usability... yes
checking Eigen/Dense presence... yes
checking for Eigen/Dense... yes
checking for main in -lgflags... yes
checking for main in -lglog... no
checking gtest/gtest.h usability... no
checking gtest/gtest.h presence... no
checking for gtest/gtest.h... no
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating libcmaes.pc
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating tests/Makefile
config.status: creating examples/Makefile
config.status: creating python/Makefile
config.status: creating libcmaes_config.h
config.status: libcmaes_config.h is unchanged
config.status: executing depfiles commands
config.status: executing libtool commands

The output of ./b2 link=shared is about 8000 lines.

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

Please do

./autogen.sh

and run the configure line again, then build. This should fix the pyconfig.h error. I've seen this before between 'git checkout' / 'git pull', there's sometimes need for a call to 'autogen.sh' to recreate the building files and machinery.

The build of boost looks suspicious but would be a different problem that I can look at from an OSX machine directly.

EDIT: clarity

@nikohansen
Copy link
Collaborator

OK, now I see

[18:20:46] 0 libcmaes$ ./configure --with-eigen3-include=/opt/local/include/eigen3 --enable-python CXXFLAGS="-O2 -I/Users/hansen/anaconda/lib/python2.7/site-packages/numpy/core/include/ -I/Users/hansen/anaconda_boost_install/include" LDFLAGS="-L/Users/hansen/anaconda_boost_install/lib"
configure: libcmaes 0.9.4
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking build system type... x86_64-apple-darwin13.4.0
checking host system type... x86_64-apple-darwin13.4.0
checking for clang++... clang++
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether clang++ accepts -g... yes
checking for clang++ option to accept ISO C89... unsupported
checking whether clang++ understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of clang++... gcc3
checking for clang++... clang++
checking whether we are using the GNU C++ compiler... yes
checking whether clang++ accepts -g... yes
checking dependency style of clang++... gcc3
checking how to print strings... printf
checking for a sed that does not truncate output... /usr/local/octave/3.8.0/bin/gsed
checking for grep that handles long lines and -e... /usr/local/octave/3.8.0/bin/grep
checking for egrep... /usr/local/octave/3.8.0/bin/grep -E
checking for fgrep... /usr/local/octave/3.8.0/bin/grep -F
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking for BSD- or MS-compatible name lister (nm)... /usr/local/octave/3.8.0/bin/nm
checking the name lister (/usr/local/octave/3.8.0/bin/nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 196608
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-apple-darwin13.4.0 file names to x86_64-apple-darwin13.4.0 format... func_convert_file_noop
checking how to convert x86_64-apple-darwin13.4.0 file names to toolchain format... func_convert_file_noop
checking for /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld option to reload object files... -r
checking for objdump... no
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... no
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/local/octave/3.8.0/bin/nm output from clang++ object... ok
checking for sysroot... no
checking for mt... no
checking if : is a manifest tool... no
checking for dsymutil... dsymutil
checking for nmedit... nmedit
checking for lipo... lipo
checking for otool... otool
checking for otool64... no
checking for -single_module linker flag... yes
checking for -exported_symbols_list linker flag... yes
checking for -force_load linker flag... yes
checking how to run the C preprocessor... clang++ -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if clang++ supports -fno-rtti -fno-exceptions... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.4.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking how to run the C++ preprocessor... clang++ -E
checking for ld used by clang++... /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld
checking if the linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) is GNU ld... no
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking for clang++ option to produce PIC... -fno-common -DPIC
checking if clang++ PIC flag -fno-common -DPIC works... yes
checking if clang++ static flag -static works... no
checking if clang++ supports -c -o file.o... yes
checking if clang++ supports -c -o file.o... (cached) yes
checking whether the clang++ linker (/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/ld) supports shared libraries... yes
checking dynamic linker characteristics... darwin13.4.0 dyld
checking how to hardcode library paths into programs... immediate
checking whether clang++ supports C++11 features by default... no
checking whether clang++ supports C++11 features with -std=gnu++11... yes
checking for eigen3... checking for /opt/local/include/eigen3/Eigen... yes
checking Eigen/Dense usability... yes
checking Eigen/Dense presence... yes
checking for Eigen/Dense... yes
checking for main in -lgflags... no
checking for main in -lglog... no
checking gtest/gtest.h usability... no
checking gtest/gtest.h presence... no
checking for gtest/gtest.h... no
checking for python... /Users/hansen/anaconda/bin/python
checking for a version of Python >= '2.1.0'... yes
checking for the distutils Python package... yes
checking for Python include path... -I/Users/hansen/anaconda/include/python2.7
checking for Python library path... -L/Users/hansen/anaconda/lib -lpython2.7
checking for Python site-packages path... /Users/hansen/anaconda/lib/python2.7/site-packages
checking python extra libraries... -ldl  -framework CoreFoundation 
checking python extra linking flags... -u _PyMac_Error
checking consistency of all components of python development environment... yes
checking whether the Boost::Python library is available... yes
checking for exit in -lboost_python... no
checking for exit in -lboost_python... (cached) no
configure: error: boost python required for building the python wrapper
[18:20:51] 0 libcmaes$ 

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

is libboost_python.dylib into /Users/hansen/anaconda_boost_install/lib ?

@nikohansen
Copy link
Collaborator

No.

[18:43:30] 0 libcmaes$ ll /Users/hansen/anaconda_boost_install/lib
total 15760
-rwxr-xr-x  1 hansen  staff   9.9K Feb  3 16:37 libboost_atomic.dylib*
-rwxr-xr-x  1 hansen  staff    12K Feb  3 16:37 libboost_context.dylib*
-rwxr-xr-x  1 hansen  staff    79K Feb  3 16:37 libboost_container.dylib*
-rw-r--r--  1 hansen  staff   7.6M Feb  3 16:37 libboost_test_exec_monitor.a
-rw-r--r--  1 hansen  staff   3.4K Feb  3 16:37 libboost_exception.a

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

OK, the boost build did fail. the ld and g++ calls in the logs you reported are highly suspicious. Basically, the boost build should not be different than for users relying on homebrew.

One culprit could that gcc was installed through port and is somehow in the way here. One way to make sure could be to remove all gcc with port and try the boost build anew. I'd understand if you don't want to do this, if only because it remains a hypothesis.

@nikohansen
Copy link
Collaborator

OK, I managed to make by removing the /opt/local parts from $PATH. Now I get

[21:37:37] 0 python$ /Users/hansen/anaconda/bin/python ptest.py
Traceback (most recent call last):
  File "ptest.py", line 1, in <module>
    import lcmaes
ImportError: dlopen(/Users/hansen/git/libcmaes/python/lcmaes.so, 2): Library not loaded: /usr/local/lib/libcmaes.0.dylib
  Referenced from: /Users/hansen/git/libcmaes/python/lcmaes.so
  Reason: image not found

which might be a trivial problem?

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

yes! try

export DYLD_LIBRARY_PATH=/path/to/libcmaes.0.dylib

which after straight compilation should be

libcmaes/src/.libs

and elsewhere if you did make install (e.g. /usr/local/lib)

@nikohansen
Copy link
Collaborator

Works like charm! :-) Can import lcmaes in IPython.

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

oh great! The boost-python situation is still blurry to me though, did you recompile it or something ?

@nikohansen
Copy link
Collaborator

ah, yes, I did ./b2 link=shared etc. again after having removed the /opt/local stuff from $PATH (instead of deinstalling ;-)

So, I guess, I prevent that port's gcc was used in the process.

EDIT: also ./bootstrap.sh... before, I think.

@beniz
Copy link
Collaborator

beniz commented Feb 3, 2015

yes, easier I reckon! I'm not sure how often you guys reinstall anaconda, but I could do a script that does the whole set of things above. Just let me know. Waiting to hear from @kegl and I'll close it here.

@beniz
Copy link
Collaborator

beniz commented Feb 11, 2015

I've added the instructions for building the Python bindings with Anaconda to https://github.com/beniz/libcmaes/wiki/Python-bindings and https://github.com/beniz/libcmaes/wiki/Building-libcmaes-on-Mac-OSX

I am closing this issue until new difficulties arise.

@beniz beniz closed this as completed Feb 11, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

3 participants