[英]QT + CImg will not build on OSX 10.9
我正在接管一个需要与QT Creator和CImg合作的项目,但是该项目无法在我的机器上构建。
/Users/vikkosmi/Qt/5.2.0/clang_64/lib/QtCore.framework/Headers/qvariant.h:132: error: expected '}'
Bool = QMetaType::Bool,
^
在我构建时,此错误以及许多类似错误不断出现。 它来自Qt Core。
使用cimg从Windows平台移至osx时,是否需要重写某些内容? 据我所知,代码应该是可移植的。
我试图重新安装库,安装XQuarts,添加库并包含项目文件的路径,但是仍然存在相同的问题:(预先感谢您的帮助!
你在建什么 如果要构建Qt,则需要对它进行一些本地修改,从新资源开始。
如果要构建一些使用Qt的代码,那么问题出在该代码中,而不是Qt中。 这个问题的味道是,已经定义了一个Bool
宏来干扰QVariant
的代码。
发生这种情况的文件不是qvariant.h 。 这是您的一个.cpp文件-查看错误消息,它们将包含“在编译yourfile.cpp时”之类的内容。 在该文件中,您需要将#include <QVariant>
作为第一行。 这应该可以暂时解决问题。
您应该在代码中搜索Bool
并修复全局名称空间污染。 您的代码已损坏,我认为对此毫无疑问。
X11库(CImg默认使用)定义了Bool
。 在使用Qt时,您可能不想使用CImg的显示功能,因此建议您在编译时通过定义宏cimg_display=0
禁用它。 CImg不会尝试包含X11标头,它可能会解决您的问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.