c++ - VC++ 项目,想在另一个 IDE 中编译但缺少某些东西

标签 c++ visual-studio-2008 compilation

我是 C++ 的新手。
我想为名为 Cinema 4D 的应用程序编写插件.
C4D 的制造商 Maxon 提供了执行此操作的 API。头文件位于一个特殊的文件夹中。

“cinema4dskd”是一个包含示例插件的 Visual Studio 项目。在这个项目中还有另一个名为 _api 的子项目。

enter image description here

弹出窗口是“项目依赖项”对话框。

_api 子项目似乎是一个文件的链接,该文件存在于我的本地驱动器上,但它不在 cinema4dsdk.vcproj 中。
_api 项目中的所有文件都位于 Cinema 4D 安装路径中的一个文件夹中,该文件夹也称为 _api
它充满了头文件和 .cpp 文件。
这基本上是我为 Cinema 4D 编译插件所需的,包括我的源代码中的“c4d.h”。
但这就是问题的开始。

我正在尝试在 Code::Blocks 中编译一个插件,我已经将所有路径添加到“c4d.h”等。但是每个编译器(gcc,甚至 msvc!)都会告诉我关于以下内容的数千条警告:

C:\Programs\MAXON\Cinema 4D R12\resource\_api\ge_prepass.h |2668|警告:多字符字符常量|

最后是 C4DGLuint 未声明的错误。为什么它可以在 VC++ 中工作,但不能与任何其他编译器一起工作?我一定错过了什么,但我真的不知道是什么。

我不认为我被允许分享这个项目,因为 _api 归 Maxon GmbH 所有,但如果你真的需要它,我请求你下载 Cinema 4D 演示版本,其中cinema4dskd 项目包含在内。

如果您需要任何进一步的信息,请告诉我,我希望您知道可能缺少什么。为什么 VC++ 可以正确编译插件,但我不能使用命令行或任何其他 IDE?

非常感谢。
尼克拉斯

更新:

多字符常量错误示例:

C:\Users\niklas\Documents\CodeBlocks\Cinema4D\_api\src\gui.h|690|warning: multi-character character constant|
C:\Users\niklas\Documents\CodeBlocks\Cinema4D\_api\src\gui.h|693|warning: multi-character character constant|

690: BFM_SETVIEWPORTORIGIN  = 'cORG',
691:    BFM_SETVIEWPORTORIGIN_X=1,
692:    BFM_SETVIEWPORTORIGIN_Y=2,
693: BFM_SETVIEWPORTSIZE    = 'cSIZ',

最佳答案

'cORG'

是所谓的多字 rune 字。它的值不适合 char 变量,您需要一个“int”来保存它,并且根据这篇文章

C++ multicharacter literal

如何解释这个东西是特定于编译器的。似乎您测试过的其他编译器不支持这些类型的文字。

关于c++ - VC++ 项目,想在另一个 IDE 中编译但缺少某些东西,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7602341/

相关文章:

visual-studio-2008 - 尝试在Chrome和Firefox中调试npapi插件,但未成功,正确的方法是什么?

c# - 使用 mono 编译应用程序

c++ - 在不锁定互斥锁的情况下调用 pthread_cond_signal

c++ - 奇怪的错误 c2660 "function does not take 1 arguments"

visual-studio-2008 - Visual SourceSafe 2005 与 VS2008 集成 - 缺少评论 checkin 提示

c# - 如何调试通过 Assembly.Load(byte[]) 加载的程序集?

rust - 根据编译目标操作系统,Rust 中将不同类型的值分配给变量的惯用方式是什么?

javascript - 组件和 cms 驱动应用程序的 AngularJS 最佳实践

c++ - 在没有 WndProc 的情况下运行 win32 事件循环的不同方式的想法?

c++ - 找到气体容器的最小必要体积