调试与发布:将使用其中一个。哪一个未定义

时间:2011-12-05 12:40:50

标签: macos qt4 macports vtk

我有一个问题,现在已经有一段时间了。

系统设置为OSX Lion, Xcode 4.2.1 ,MacPorts已安装 qt4-mac 4.7.4 + debug vtk5 5.6.1 。我使用cmake作为构建系统。该项目包含一个带有vtk小部件的Qt gui应用程序。在调试模式下编译gui并运行它会抛出很多行,比如

Class QCocoaColorPanelDelegate is implemented in both /opt/local/lib/libQtGui.4.dylib and /opt/local/lib/libQtGui_debug.4.dylib. One of the two will be used. Which one is undefined.

与几个Cocoa或NS相关的类。

otool -L告诉我可执行文件与qt调试库链接。

有谁知道是什么导致了这个以及如何解决它?

2 个答案:

答案 0 :(得分:1)

这对我有用:

sudo port deactivate qt4-mac-devel +debug
sudo port activate qt4-mac-devel @4.8.0_0+quartz

答案 1 :(得分:0)

QCocoaColorPanelDelegate在两个库中实现,但只会加载和使用其中一个实现。您应该只是链接到一个库或另一个库(我假设您不想链接到调试库)。