[Paraview] Problem linking Cocoa pqWidgets

Berk Geveci berk.geveci at kitware.com
Thu Jan 7 09:30:10 EST 2010


> Berk -- out of curiosity, then, is your Qt 4.6 built for both i386 and x86_64 architectures, and using Cocoa?

I used i386 (Carbon and Cocoa) initially but I am now using 64 bit
Cocoa exclusively.

-berk


On Thu, Jan 7, 2010 at 9:27 AM, Eric E. Monson <emonson at cs.duke.edu> wrote:
> Berk -- out of curiosity, then, is your Qt 4.6 built for both i386 and x86_64 architectures, and using Cocoa?
>
> It doesn't necessarily make sense, but since I don't get the grayed out filters on my laptop which was using an older version of CMake (2.9.20091007) -- so it linked a bunch of PV libraries with additional OS X frameworks -- is it possible that with more recent CMake there are some other dependencies which are not being linked in, don't get caught at compile time, but are missing at run time?
>
> Anyway, as long as someone can put in that extra Cocoa line for pqWidgets, at least that will build with CVS CMake.
>
> Thanks,
> -Eric
>
> On Jan 6, 2010, at 10:14 PM, Berk Geveci wrote:
>
>> Also, the progress bar issue is known - we will try to fix it before
>> 2.8 but no guarantees. I never ran into the "grayed out filters"
>> issue. I have been using Qt 4.6 btw.
>>
>> -berk
>>
>> On Wed, Jan 6, 2010 at 4:50 PM, Clinton Stimpson <clinton at elemtech.com> wrote:
>>> On Wednesday 06 January 2010 02:43:54 pm Eric E. Monson wrote:
>>>> Hey Clint,
>>>>
>>>> Yes, I'm using CVS CMake (2.9.20100105). Qt is not static (unless that's
>>>> the default, but I don't think it is).
>>>
>>> The default is shared/dynamic.
>>>
>>>>
>>>> So older versions of CMake added in other framework dependencies (like
>>>> Carbon, ApplicationServices or AppKit) automatically based on what Qt was
>>>> built with?
>>>
>>> Correct.  So, your suggestion to fix Qt/Widgets/CMakeLists.txt needs to happen.
>>>
>>> Clint
>>>
>>>>
>>>> Thanks,
>>>> -Eric
>>>>
>>>> On Jan 6, 2010, at 4:36 PM, Clinton Stimpson wrote:
>>>>> Did you use the CVS version of CMake?
>>>>> FindQt4/UseQt don't put the extra dependencies in there anymore unless Qt
>>>>> is static.  So if pqWidgets uses Cocoa, it needs to link against the
>>>>> Cocoa framework.
>>>>>
>>>>> Clint
>>>>>
>>>>> On Wednesday 06 January 2010 01:35:39 pm Eric E. Monson wrote:
>>>>>> Hello,
>>>>>>
>>>>>> On one of my machines I just switched over to Snow Leopard, so I did a
>>>>>> fresh CVS grab of ParaView. I have Qt 4.5.3 built from source for Cocoa
>>>>>> (x86 and x86_64 architectures), and I have been trying to build ParaView
>>>>>> (i386;x86_64), but keep getting a linking error on the pqWidgets
>>>>>> library:
>>>>>>
>>>>>> [ 90%] Built target QtTesting
>>>>>> Linking CXX shared library ../../bin/libpqWidgets.dylib
>>>>>> Undefined symbols:
>>>>>>  "_objc_msgSend", referenced from:
>>>>>>      pqProgressBarHelper::setProgress(int)    in
>>>>>> pqProgressBarHelper.mm.o pqProgressBarHelper::setProgress(int)    in
>>>>>> pqProgressBarHelper.mm.o pqProgressBarHelper::setProgress(int)    in
>>>>>> pqProgressBarHelper.mm.o ld: symbol(s) not found
>>>>>> collect2: ld returned 1 exit status
>>>>>> Undefined symbols:
>>>>>>  "_objc_msgSend", referenced from:
>>>>>>      pqProgressBarHelper::setProgress(int)    in
>>>>>> pqProgressBarHelper.mm.o pqProgressBarHelper::setProgress(int)    in
>>>>>> pqProgressBarHelper.mm.o pqProgressBarHelper::setProgress(int)    in
>>>>>> pqProgressBarHelper.mm.o ld: symbol(s) not found
>>>>>>
>>>>>> I found I can get past this if I add a "-framework Cocoa" to the linker
>>>>>> line manually, so I think in ParaView3/Qt/Widgets/CMakeLists.txt maybe
>>>>>> there should be another check added, something like (line 198):
>>>>>>
>>>>>>  if(VTK_USE_COCOA)
>>>>>>    TARGET_LINK_LIBRARIES(pqWidgets "-framework Cocoa")
>>>>>>  endif(VTK_USE_COCOA)
>>>>>>
>>>>>> The progress bar doesn't really work and I'm running into the "grayed
>>>>>> out filters" that some others have mentioned (filters show up right
>>>>>> after launching PV, I can generate or load a "source", and I can apply
>>>>>> one filter, but then they disappear after that and won't come back), but
>>>>>> at least PV compiled... :)
>>>>>>
>>>>>> Not sure if it's relevant, but in case it's helpful: On another machine
>>>>>> with a very similar setup (Snow Leopard and x86,x86_64 Cocoa Qt 4.5.2
>>>>>> from source), but just CVS "update" and rebuild on an old checkout
>>>>>> rather than a fresh one, I noticed that the pqWidgets_LIB_DEPENDS (and a
>>>>>> bunch of other things) include ;general;-framework
>>>>>> Carbon;general;-framework
>>>>>> AppKit;general;-framework ApplicationServices;  The progress bar doesn't
>>>>>> work on that version, either, but I don't get the "grayed out" filters
>>>>>> problem.
>>>>>>
>>>>>> Thanks,
>>>>>> -Eric
>>>>>>
>>>>>> ------------------------------------------------------
>>>>>> Eric E Monson
>>>>>> Duke Visualization Technology Group
>>>>>>
>>>>>>
>>>>>> _______________________________________________
>>>>>> 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
>>>
>>> _______________________________________________
>>> 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