[Paraview] Compiling Plugins for the Binary Release

Utkarsh Ayachit utkarsh.ayachit at kitware.com
Fri Feb 24 08:56:27 EST 2012


I think I know the problem. Qt was built with libpng 1.2 and ParaView
superbuild is building paraview with libpng 1.5 and hence the issue.
You'lll have to build Qt telling it to link against libpng1.5. The new
superbuild I used for ParaView 3.14 takes care of that, but I'm not
sure it'll work out of the box for 3.12. You might be better off just
building Qt with libpng 1.5.

Also try running "readelf -d <soname>" on all shared libraries in your
plugin. That should at the least tell you which "so" is bringing in a
libpng. If none of your "so"s refer to libpng directly, I'd think that
should work just fine.

Utkarsh

On Fri, Feb 24, 2012 at 8:48 AM, Oliver Behm <oliverbehm at googlemail.com> wrote:
> I have attached the CMakeCache.txt. I am using the SuperBuild
> directory of the ParaView 3.12 source release from the ParaView
> website, since we are still using version 3.12.
>
> I will try the new version though, if I can make that work that
> will probably suffice.
>
> Thanks for the RPATH hint, that is actually quite helpful.
>
> Regards
> Oliver
>
> On 02/24/2012 02:30 PM, Utkarsh Ayachit wrote:
>> Can you post the CMakeCache.txt file you're using for building the
>> plugin? For linux which super build did you use? The linux binaries
>> were built using the following repo (checkout tag v3.14.0) :
>>
>> https://gitorious.org/paraview-collaboration/paraview-binaries-superbuild
>>
>> To influence the search path, you can use INSTALL_RPATH
>> (http://www.cmake.org/cmake/help/cmake-2-8-docs.html#command:set_target_properties),
>> however that's still won't help unless you know exactly where your
>> users are going to install ParaView. Users either have to set
>> LD_LIBRARY PATH, or simply put all the .so files under
>> <..>/lib/paraview3.14/ directory.
>>
>> Utkarsh
>>
>> On Fri, Feb 24, 2012 at 6:50 AM, Oliver Behm <oliverbehm at googlemail.com> wrote:
>>> Hello,
>>>
>>> I am currently trying to compile a rather simple reader plugin so that
>>> it works with the binary release (Linux, 64 Bit, 3.12).
>>>
>>> To this end I compiled the paraview sources with the SuperBuild function,
>>> which seams to have worked just fine. But when I compile any plugins
>>> using this build the resulting library is linked against libpng 1.5 from the
>>> SuperBuild folder as well as libpng 1.2 from the system paths.
>>>
>>> Since we don't have libpng 1.5 installed globally it would be very nice
>>> if I could prevent the plugin from linking it? Is that possible?
>>>
>>> I don't really see how this library can be necessary since the binary
>>> distribution of paraview does not require it either and I certainly don't
>>> do anything with my reader that the standard readers don't do too.
>>>
>>> Aside from that is there anyway I can easily influence the search paths
>>> that are compiled into the library? I'd like to set them to the location
>>> of that libraries that ship with the binary distribution instead of my
>>> local SuperBuild.
>>>
>>> Best regards
>>> Oliver Behm
>>> _______________________________________________
>>> Powered by www.kitware.com
>>>
>>> Visit other Kitware open-source projects at http://www.kitware.com/opensource/opensource.html
>>>
>>> Please keep messages on-topic and check the ParaView Wiki at: http://paraview.org/Wiki/ParaView
>>>
>>> Follow this link to subscribe/unsubscribe:
>>> http://www.paraview.org/mailman/listinfo/paraview
>


More information about the ParaView mailing list