On 23/07/2015 20:12, Sebastian Schoellhammer wrote:
Hello everyone,

I have problems building oiio on macOS. I have installed the dependencies
via fink.

This is the bit that fails (at 93% :/):

Linking CXX executable imagebuf_test
cd /seb/code/oiio/build/macosx/src/libOpenImageIO && /sw/bin/cmake -E
cmake_link_script CMakeFiles/imagebuf_test.dir/link.txt --verbose=1
/Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/c++
   -O3 -DNDEBUG -Wl,-search_paths_first -Wl,-headerpad_max_install_names
  CMakeFiles/imagebuf_test.dir/imagebuf_test.cpp.o  -o imagebuf_test
  -L/sw/opt/boost-1_55/lib  libOpenImageIO.a
/sw/opt/boost-1_55/lib/libboost_filesystem-mt-1_55.dylib
/sw/opt/boost-1_55/lib/libboost_regex-mt-1_55.dylib
/sw/opt/boost-1_55/lib/libboost_system-mt-1_55.dylib
/sw/opt/boost-1_55/lib/libboost_thread-mt-1_55.dylib /sw/lib/libHalf.dylib
/sw/lib/libIex.dylib /sw/lib/libImath.dylib /sw/lib/libIlmThread.dylib
-lopencv_core -lopencv_highgui /sw/lib/libpng.dylib /usr/lib/libz.dylib
/sw/lib/libtiff.dylib /sw/lib/libjpeg.dylib /usr/lib/libz.dylib
/sw/lib/libtiff.dylib /sw/lib/libjpeg.dylib /sw/lib/libwebp.dylib
/sw/lib/libIlmImf.dylib /sw/lib/libgif.dylib /sw/lib/libraw_r.dylib
/sw/lib/libHalf.dylib /sw/lib/libIex.dylib /sw/lib/libImath.dylib
/sw/lib/libIlmThread.dylib -Wl,-rpath,/sw/opt/boost-1_55/lib
ld: library not found for -lopencv_core
clang: error: linker command failed with exit code 1 (use -v to see
invocation)
make[3]: *** [src/libOpenImageIO/imagebuf_test] Error 1
make[2]: *** [src/libOpenImageIO/CMakeFiles/imagebuf_test.dir/all] Error 2
make[1]: *** [all] Error 2


I ran this to build:
make USE_OPENGL=0 USE_QT=0 USE_PYTHON=0 BUILDSTATIC=1 USE_FIELD3D=0
USE_FFMPEG=0 USE_NUKE=0 USE_OCIO=0  VERBOSE=1


It seems the library for opencv is missing but I do have
libopencv_core.dylib
and others in /sw/lib

Thinking it maybe doesn't have that path I tried adding below
project (OpenImageIO)

set(CMAKE_LIBRARY_PATH ${CMAKE_LIBRARY_PATH} "/sw/lib")

into CMakeLists.txt
but that did not really help.

In the link command you get -lopencv_core - other libs in /sw/lib have
a full path and /sw/lib does not appear to be added as a search path.

I can think of two options -

1. add -L/sw/lib to LDFLAGS (or CXXFLAGS) another option would be to
put it in CMAKE_EXE_LINKER_FLAGS similar to the following.

2. define OpenCV_LIBS and OpenCV_LIBS_highgui by adding

-DOpenCV_LIBS='/sw/lib/libopencv_core.dylib'
-DOpenCV_LIBS_highgui='/sw/lib/libopencv_highgui.dylib'

to your cmake command - that's the cmake command before you run make.
You can also use ccmake or cmake-gui to set these.

It would appear to be finding the header files so OpenCV_INCLUDE_DIR is
either defined right or you have another copy of opencv headers outside
of /sw If you have other errors when linking then you may also need to
point to matching opencv header files. I expect these would be in
/sw/include


--
FreeBSD - the place to B...Software Developing

Shane Ambler

_______________________________________________
Oiio-dev mailing list
[email protected]
http://lists.openimageio.org/listinfo.cgi/oiio-dev-openimageio.org

Reply via email to