[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Openexr-devel] OpenEXR 2.2 and OSX
From: |
Larry Gritz |
Subject: |
[Openexr-devel] OpenEXR 2.2 and OSX |
Date: |
Sat, 16 Aug 2014 10:41:07 -0700 |
I found compiling on OSX Mavericks to be really hard because of my Homebrew
installation of 2.1 in /usr/local. Got lots of errors like this:
...
libtool: link: g++ -dynamiclib -o .libs/libIlmImfUtil-2_2.22.dylib
.libs/ImfImageChannel.o .libs/ImfFlatImageChannel.o .libs/ImfDeepImageChannel.o
.libs/ImfSampleCountChannel.o .libs/ImfImageLevel.o .libs/ImfFlatImageLevel.o
.libs/ImfDeepImageLevel.o .libs/ImfImage.o .libs/ImfFlatImage.o
.libs/ImfDeepImage.o .libs/ImfImageIO.o .libs/ImfFlatImageIO.o
.libs/ImfDeepImageIO.o .libs/ImfImageDataWindow.o
-L/Users/lg/packages/openexr.git/install/lib -L/usr/local/lib -L../IlmImf
/Users/lg/packages/openexr.git/install/lib/libImath.dylib
/Users/lg/packages/openexr.git/install/lib/libHalf.dylib
/Users/lg/packages/openexr.git/install/lib/libIlmThread.dylib
/Users/lg/packages/openexr.git/install/lib/libIex.dylib -lpthread -lIlmImf -O2
-install_name
/Users/lg/packages/openexr.git/install/lib/libIlmImfUtil-2_2.22.dylib
-compatibility_version 23 -current_version 23.0 -Wl,-single_module
Undefined symbols for architecture x86_64:
"Imf_2_2::OutputFile::writePixels(int)", referenced from:
Imf_2_2::saveFlatScanLineImage(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&,
Imf_2_2::Header const&, Imf_2_2::FlatImage const&, Imf_2_2::DataWindowSource)
in ImfFlatImageIO.o
"Imf_2_2::OutputFile::setFrameBuffer(Imf_2_2::FrameBuffer const&)",
referenced from:
Imf_2_2::saveFlatScanLineImage(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&,
Imf_2_2::Header const&, Imf_2_2::FlatImage const&, Imf_2_2::DataWindowSource)
in ImfFlatImageIO.o
"Imf_2_2::OutputFile::OutputFile(char const*, Imf_2_2::Header const&, int)",
referenced from:
Imf_2_2::saveFlatScanLineImage(std::__1::basic_string<char,
std::__1::char_traits<char>, std::__1::allocator<char> > const&,
Imf_2_2::Header const&, Imf_2_2::FlatImage const&, Imf_2_2::DataWindowSource)
in ImfFlatImageIO.o
... and on and on ...
I just couldn't figure out how to get it to not be confused by the existing
OpenEXR installation. I was eventually able to make it work only by temporarily
doing:
cd /usr/local/lib
mkdir save
mv *Ilm* save
then building, then moving the 2.1 libraries back to their old spot.
It seems like that shouldn't be necessary. It can't be uncommon to have an
older OpenEXR in the system area but be speculatively building 2.2 or a
development branch somewhere else. The build system should look to the local
build for libraries before any system areas without having to mess with system
files, env variables, or special configure arguments.
--
Larry Gritz
address@hidden
- [Openexr-devel] OpenEXR 2.2 and OSX,
Larry Gritz <=