c++ - 如何让 MSVS 识别 bigobj 标志?
问题描述
我正在 ANSYS Fluent 中构建一个用户定义函数,它调用我安装的 MSVS 2017 来编译代码。问题是我收到错误:
致命错误 C1128:节数超出目标文件格式限制:使用 /bigobj 编译
我发现其他人有这个问题,但我仍然无法弄清楚如何在我的代码中添加一行来让编译器识别这个问题。基于在线查找其他代码片段,我尝试在代码顶部的包含后添加以下行:
#include "udf.h"
#include "unsteady.h"
#include "dynamesh_tools.h"
ADD_DEFINITIONS(/bigobj)
SET(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /bigobj")
但这给出了错误:
..\..\src\MY_UDF.c(10): error C2143: syntax error: missing ')' before '/'
..\..\src\MY_UDF.c(10): error C2143: syntax error: missing '{' before '/'
..\..\src\MY_UDF.c(10): error C2059: syntax error: '/'
..\..\src\MY_UDF.c(10): error C2059: syntax error: ')'
我不明白这些错误,因为这些错误是从其他人的工作代码中复制而来的。我也尝试过,从我在网上找到的另一个片段:
QMAKE_CXXFLAGS += -bigobj
但这给出了以下错误。
..\..\src\MY_UDF.c(9): error C2143: syntax error: missing '{' before '+='
..\..\src\MY_UDF.c(9): error C2059: syntax error: '+='
这是我的 udf 文件的顶部,它一直运行到我添加太多行并得到上面显示的错误。
#include "udf.h"
#include "unsteady.h"
#include "dynamesh_tools.h"
我希望代码能够编译,但事实并非如此。我还没有找到任何解决方案来准确显示如何告诉编译器它告诉我我应该告诉它什么。
解决方案
您的答案在下面的链接中,您只需将/bigobj添加到 Fluent 的makefile_nt.udf文件中!真是救命啊!
推荐阅读
- angular - 升级到 angular 9 和 primeng 9 后找不到模块“@angular/core”
- intellij-idea - 在 Pycharm/Intellij 中,如何在 DIV 之后使用换行符格式化 HTML?
- python-3.6 - 在 LDAP3 中获取 connection.bind 的 invalidCredentials
- angular - 什么是 ng-reflect-router-link?为什么在检查元素部分中没有显示按钮
- string - 在 KDB+ 中添加字符串
- javascript - 有一种方法可以仅使用猫鼬的模型文件来抽象 GraphQl 中类型和/或突变的创建吗?
- reactjs - 在 Reactjs 为什么未定义错误的“历史”
- c++ - SSL 异常:错误:1409E10F:SSL 例程:ssl3_write_bytes:错误长度
- flutter - 如何找到为 Flutter Web 应用程序提供服务的 URL?
- html - 如何导入一个 html 文件并将其用作另一个 html 文件中的预设?