Qt Creator 和 Cocos2d 不允许定义 dllimport 静态字段
Definition of dllimport static field not allowed with Qt Creator and Cocos2d
我接到任务,要在 Mac 运行 Windows 上制作最初创建的 qt 项目。需要使用MinGW(g++和gcc)编译。
我在尝试构建项目时遇到了 _WIN32
和 _WINDOWS
没有被定义的问题(尽管它在设置中说它们是),所以我暂时只是硬编码了那个位.
我还必须添加 GL\glew.h
和 ft2build.h
以及整个 freetype 库,以获得 cocos2d.
的 win32 版本所需的所有文件
但是,Qt Creator 现在抱怨我正在为大多数 Cocos2d 对象定义 dllimport
静态字段。还有数以千计的警告,指出在没有 dllimport
属性的情况下重新声明了一堆对象。我没有触及 Cocos2d 个文件(除了我强制它使用 win32 的平台之外)。
我做错了什么(硬编码位除外)?
我必须在 QtCreator 的项目菜单中定义 _WIN32
和 _WINDOWS
作为 make 的附加参数以避免硬编码。我还必须定义 CC_STATIC
以防止 Cocos2d 在每个函数之前插入 dllimport
或 dllexport
。我添加的参数是:
DEFINES+="_WIN32 _WINDOWS CC_STATIC"
我接到任务,要在 Mac 运行 Windows 上制作最初创建的 qt 项目。需要使用MinGW(g++和gcc)编译。
我在尝试构建项目时遇到了 _WIN32
和 _WINDOWS
没有被定义的问题(尽管它在设置中说它们是),所以我暂时只是硬编码了那个位.
我还必须添加 GL\glew.h
和 ft2build.h
以及整个 freetype 库,以获得 cocos2d.
但是,Qt Creator 现在抱怨我正在为大多数 Cocos2d 对象定义 dllimport
静态字段。还有数以千计的警告,指出在没有 dllimport
属性的情况下重新声明了一堆对象。我没有触及 Cocos2d 个文件(除了我强制它使用 win32 的平台之外)。
我做错了什么(硬编码位除外)?
我必须在 QtCreator 的项目菜单中定义 _WIN32
和 _WINDOWS
作为 make 的附加参数以避免硬编码。我还必须定义 CC_STATIC
以防止 Cocos2d 在每个函数之前插入 dllimport
或 dllexport
。我添加的参数是:
DEFINES+="_WIN32 _WINDOWS CC_STATIC"