c++ - Visual Studio中D8049错误的原因是什么?

我正在使用openframeworks创建一个项目(完整源代码在这里:https://github.com/morphogencc/ofxAsio/tree/master/example-udpreceiver),并且空项目似乎可以正常编译。

我添加了ASIO库和一些头文件类,现在该项目似乎给了我以下错误:
1>------ Build started: Project: example-udpreceiver, Configuration: Debug x64 ------ 1> main.cpp 1>cl : Command line error D8049: cannot execute 'C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\x86_amd64\c1xx.dll': command line is too long to fit in debug record 1>cl : Command line error D8040: error creating or communicating with child process
我在stackoverflow甚至Microsoft的页面上都找不到错误D8049的任何示例,而google却很少出现结果。唯一对远程有用的是此github问题:

https://github.com/deplinenoise/tundra/issues/270

但是我仍然不确定是什么引起了问题。有没有人熟悉此错误,并且可以推荐一种对引起该错误的原因进行故障排除的方法?

提前致谢!

最佳答案

这听起来有点奇怪,因为它实际上是来自内部生成的数据。但是,您确实对此具有控制权。以错误信息为准,您可能在命令行中传递了很多符号定义的符号(或者您定义的符号很长),或者您的文件路径也很长。

如果您在项目属性下查看,则C++部分下的选择之一是“命令行”,它将确切显示传递给编译器的内容。当您查看时,可以看到在哪里有很多或冗长的参数,然后进行更改以缩短它们。

定义太多了吗?将它们放在 header (可能是stdafx.h)中,并以这种方式包含它们。

长文件路径?缩短路径,将文件放置在其他位置,或为使用较短路径的真实目录设置文件系统别名。

https://stackoverflow.com/questions/35262140/

相关文章:

c# - 引用Shell32.dll?

c# - 为什么调用此列表方法会返回不可访问错误?

assembly - 如何修复 “error:cannot generate COM file, s

python - 在 Python 中不使用\n 的新行

compiler-errors - 药剂: Why do I get “undefined func

haskell - 无法构造无限类型

r - 使用 R 包 brms 时出错

java - 无法访问 org.eclipse.core.runtime.IProgressMoni

generics - TypeScript 泛型类 : Cannot assign to Gener

macos - 指定编译器 Homebrew 安装