That was why Clint asked you to run otool... Both ParaView and the plugin need to refer to exactly the same Qt shared library file, not just the same version with two different file references.<br><br>You need to run "install_name_tool" or set up your build so that your plugin references the Qt shared library with the same name as ParaView.
<br><br>Global qt state is not really global if you have two sets of qt shared libraries loading.<br><br><br><div><span class="gmail_quote">On 1/17/08, <b class="gmail_sendername">Thomas D. Uram</b> <<a href="mailto:turam@mcs.anl.gov">
turam@mcs.anl.gov</a>> wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
<div bgcolor="#ffffff" text="#000000">
otool against the plugin gives me:<br>
<br>
/usr/local/Trolltech/Qt-4.2.2/lib/QtGui.framework/Versions/4/QtGui
(compatibility version 4.2.0, current version 4.2.2)<br>
<br>
admittedly a different path, but the same version. <div><span class="e" id="q_1178959f7ce1c4c2_1"><br>
<br>
<br>
<br>
On 1/17/08 1:53 PM, <a href="mailto:clinton@elemtech.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">clinton@elemtech.com</a> wrote:
<blockquote type="cite">
<pre>What does otool give you when you do it on the plugin?<br>Does it <br>contain "@executable_path/../Frameworks/QtGui.framework/Versions/4/QtGui" or <br>something else?<br><br>On the Mac, if its something else, you're going to get two instances of QtGui
<br>in the application.<br><br>Clint<br><br>On Thursday 17 January 2008 12:47:48 pm Thomas D. Uram wrote:<br> </pre>
<blockquote type="cite">
<pre>otool (I'm on OSX currently) reports the Qt version as 4.2.2:<br><br> @executable_path/../Frameworks/QtGui.framework/Versions/4/QtGui<br>(compatibility version 4.2.0, current version 4.2.2)<br><br>which is what I used to build Paraview and my plugin. I built the
<br>Paraview 3.1 source, built my plugin against it, and am subsequently<br>trying to load the plugin with the released 3.1 executable.<br><br>No luck yet. I'll report back if I find my way.<br><br>Thanks,<br>Tom<br>
<br>On 1/17/08 1:03 PM, <a href="mailto:clinton@elemtech.com" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">clinton@elemtech.com</a> wrote:<br> </pre>
<blockquote type="cite">
<pre>Did you build your plugin against the same Qt version and same ParaView<br>code that the ParaView releases were made from?<br><br>Its possible to have a NULL qApp if a different version of Qt is used<br>when building the plugin.
<br><br>I'd probably check in the debugger (even in release mode) what libraries<br>are actually being used, after your plugin loads.<br><br>Clint<br><br>On Thursday 17 January 2008 11:04:14 am Thomas D. Uram wrote:<br>
</pre>
<blockquote type="cite">
<pre>I've written a plugin for Paraview, following the directions at<br><br> <a href="http://www.vtk.org/Wiki/Plugin_HowTo" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.vtk.org/Wiki/Plugin_HowTo
</a>
and it works fine with the Paraview executable I've built. I'd like for
it to also work with the official Paraview releases, but in that case
Paraview crashes trying to load the plugin.
That's because the plugin code makes a call against qApp (as does the
Paraview plugin example), but qApp is NULL. So my questions are:
- Is there a related build dependency that I need to consider? (I've
already ensured that my plugin uses CMAKE_BUILD_TYPE=='release')
- Should I be able to successfully build plugins for loading by the
release code? (I expect that's the long term plan, but wonder if it is
not yet possible.)
Any help would be appreciated.
Thanks,
Tom
_______________________________________________<br>ParaView mailing list<br><a href="mailto:ParaView@paraview.org" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">ParaView@paraview.org</a>
<a href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank" onclick="return top.js.OpenExtLink(window,event,this)">http://www.paraview.org/mailman/listinfo/paraview</a>
</pre>
</blockquote>
</blockquote>
</blockquote>
<pre>
</pre>
</blockquote>
</span></div></div>
<br>_______________________________________________<br>ParaView mailing list<br><a onclick="return top.js.OpenExtLink(window,event,this)" href="mailto:ParaView@paraview.org">ParaView@paraview.org</a><br><a onclick="return top.js.OpenExtLink(window,event,this)" href="http://www.paraview.org/mailman/listinfo/paraview" target="_blank">
http://www.paraview.org/mailman/listinfo/paraview</a><br><br></blockquote></div><br>