[Bf-committers] Library building fails on OpenImageIO with Ubuntu 12.10

Nathan Vegdahl cessen at cessen.com
Fri Nov 30 19:41:52 CET 2012


Worked a treat.  Thanks Brecht!

--Nathan

On Thu, Nov 29, 2012 at 8:20 PM, Brecht Van Lommel
<brechtvanlommel at pandora.be> wrote:
> It seems OpenImageIO was built with WebP, but Blender doesn't link to
> it. The simple trick to get it to compile could be to just add ;webp
> to the end of FFMPEG_LIBRARIES. This isn't really the proper place but
> there isn't a variable currently where it fits.
>
> Brecht.
>
> On Thu, Nov 29, 2012 at 10:46 PM, Nathan Vegdahl <cessen at cessen.com> wrote:
>> All of the libraries appear to have built fine, but now Blender fails
>> at the very end:
>>
>> ----
>> Building C object source/creator/CMakeFiles/blender.dir/buildinfo.c.o
>> Linking CXX executable ../../bin/blender
>> /opt/lib/oiio/lib/libOpenImageIO.a(webpinput.cpp.o): In function
>> `OpenImageIO::v1_1::webp_pvt::WebpInput::open(std::string const&,
>> OpenImageIO::v1_1::ImageSpec&)':
>> webpinput.cpp:(.text+0x7e5): undefined reference to `WebPGetInfo'
>> webpinput.cpp:(.text+0xfc8): undefined reference to `WebPDecodeRGBA'
>> /opt/lib/oiio/lib/libOpenImageIO.a(webpoutput.cpp.o): In function
>> `OpenImageIO::v1_1::webp_pvt::WebpOutput::close()':
>> webpoutput.cpp:(.text+0x16): undefined reference to `WebPPictureFree'
>> /opt/lib/oiio/lib/libOpenImageIO.a(webpoutput.cpp.o): In function
>> `OpenImageIO::v1_1::webp_pvt::WebpOutput::write_scanline(int, int,
>> OpenImageIO::v1_1::TypeDesc, void const*, long)':
>> webpoutput.cpp:(.text+0x1c2): undefined reference to `WebPPictureImportRGB'
>> webpoutput.cpp:(.text+0x1d1): undefined reference to `WebPEncode'
>> webpoutput.cpp:(.text+0x241): undefined reference to `WebPPictureImportRGBA'
>> /opt/lib/oiio/lib/libOpenImageIO.a(webpoutput.cpp.o): In function
>> `OpenImageIO::v1_1::webp_pvt::WebpOutput::open(std::string const&,
>> OpenImageIO::v1_1::ImageSpec const&,
>> OpenImageIO::v1_1::ImageOutput::OpenMode)':
>> webpoutput.cpp:(.text+0x3c6): undefined reference to `WebPPictureInitInternal'
>> webpoutput.cpp:(.text+0x417): undefined reference to `WebPConfigInitInternal'
>> collect2: error: ld returned 1 exit status
>> make[2]: *** [bin/blender] Error 1
>> make[1]: *** [source/creator/CMakeFiles/blender.dir/all] Error 2
>> make: *** [all] Error 2
>> ----
>>
>> Everything up until the final linking seemed to build fine.  I'm using
>> CMake, and started from scratch in a clean directory with this command
>> as instructed at the end of the install_deps.sh script:
>> cmake -D CYCLES_OSL=/opt/lib/osl -D WITH_CYCLES_OSL=ON -D
>> LLVM_VERSION=3.1 -D WITH_CODEC_FFMPEG=ON -D FFMPEG=/opt/lib/ffmpeg -D
>> FFMPEG_LIBRARIES='avformat;avcodec;avutil;avdevice;swscale;rt;theoradec;theoraenc;theora;vorbisenc;vorbisfile;vorbis;xvidcore;vpx;mp3lame;x264;openjpeg;schroedinger-1.0'
>> ../blender/
>>
>> Followed by "make -j4"
>>
>> --Nathan
>>
>> On Thu, Nov 29, 2012 at 1:02 PM, Nathan Vegdahl <cessen at cessen.com> wrote:
>>> OIIO builds fine now.  Thanks!
>>>
>>> On Thu, Nov 29, 2012 at 12:22 AM, Sergey Sharybin <sergey.vfx at gmail.com> wrote:
>>>> Hi,
>>>>
>>>> I've tweaked install_deps.sh a little so now ubuntu should be happy.
>>>>
>>>> Real fix would be to not build shared oiio library (which is not needed
>>>> anyway) but which always builds currently (that's more up to oiio guys,
>>>> i'll investigate this later and will send them a patch).
>>>>
>>>>
>>>> On Thu, Nov 29, 2012 at 12:32 PM, Nathan Vegdahl <cessen at cessen.com> wrote:
>>>>
>>>>> Oh, I should add that building Open Image IO myself manually (just
>>>>> typing "make" and hitting enter) successfully builds.  It's only when
>>>>> it's build via the script that it fails.
>>>>>
>>>>> On Wed, Nov 28, 2012 at 10:31 PM, Nathan Vegdahl <cessen at cessen.com>
>>>>> wrote:
>>>>> > Not sure if this is a bug or if I'm just doing something wrong.  I'm
>>>>> > running the new install_deps.sh script on Ubuntu 12.10 64-bit, and
>>>>> > it's failing at the very last step of buidling Open Image IO:
>>>>> >
>>>>> > ----
>>>>> > Linking CXX shared library OpenImageIO.so
>>>>> > /usr/bin/ld:
>>>>> /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../lib/libboost_filesystem-mt.a(operations.o):
>>>>> > relocation R_X86_64_32 against `.rodata.str1.1' can not be used when
>>>>> > making a shared object; recompile with -fPIC
>>>>> >
>>>>> /usr/lib/gcc/x86_64-linux-gnu/4.7/../../../../lib/libboost_filesystem-mt.a:
>>>>> > could not read symbols: Bad value
>>>>> > collect2: error: ld returned 1 exit status
>>>>> > make[2]: *** [python/OpenImageIO.so] Error 1
>>>>> > make[1]: *** [python/CMakeFiles/PyOpenImageIO.dir/all] Error 2
>>>>> > make: *** [all] Error 2
>>>>> > OpenImageIO-1.1.1 failed to compile, exiting
>>>>> > ----
>>>>> >
>>>>> > Am I doing something wrong here, or is this a bug in the script (or
>>>>> > the Ubuntu packaged boost libraries)?
>>>>> >
>>>>> > --Nathan
>>>>> _______________________________________________
>>>>> Bf-committers mailing list
>>>>> Bf-committers at blender.org
>>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>>>>>
>>>>
>>>>
>>>>
>>>> --
>>>> With best regards, Sergey Sharybin
>>>> _______________________________________________
>>>> Bf-committers mailing list
>>>> Bf-committers at blender.org
>>>> http://lists.blender.org/mailman/listinfo/bf-committers
>> _______________________________________________
>> Bf-committers mailing list
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers


More information about the Bf-committers mailing list