外部头文件ilcplex \ cpxconst.h引起编译器错误 [英] External header file ilcplex\cpxconst.h causing causing compiler error

查看:92
本文介绍了外部头文件ilcplex \ cpxconst.h引起编译器错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

已向我发送了使用增强学习算法的C内置程序的代码.我需要对其进行修改,但首先要在编译代码时遇到困难.这是CodeBlocks中的输出.

I have been sent code for a program built in C that uses a reinforcement learning algorithm. I need to modify it, yet I am having difficulties with compiling the code in the first place. Here are the outputs in CodeBlocks.

所有错误都来自头文件中的一行代码,该头文件是IBM CPLEX include目录(include \ cplex \ cpxconst.h)的一部分

All errors come from one line of code in a header file, which is part of the IBM CPLEX include directory (include\cplex\cpxconst.h)

有问题的代码行如下.

定义CPXDEPRECATEDAPI(version)__declspec(不推荐dllimport)

define CPXDEPRECATEDAPI(version) __declspec(dllimport deprecated)

错误消息是多种语法错误,例如:错误:预期的标识符或'(''before')'令牌

error messages are multiple types of syntax errors such as: error: expected identifier or '(' before ')' token

每个错误对文件ilcplex \ cplex.h

Each error has notes: to multiple lines of code in the file ilcplex\cplex.h

我在Windows 10中使用CodeBlocksCPLEX版本是12.9.0

I am using CodeBlocks in Windows 10 CPLEX version is 12.9.0

完整错误消息

|| ===构建:在SWEM2020中发布(编译器:GNU GCC编译器)=== |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1194 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1194 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1200 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1200 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1231 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ swemextras.h | 16 |错误:"trunc"的类型冲突|c:\ mingw \ include \ math.h | 820 |注意:先前的'trunc'声明在这里|C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1194 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1194 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1200 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1200 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1231 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1231 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1237 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1237 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1242 |注:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1242 |注:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1597 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1597 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_genetic1.c ||在函数'GeneticAlgorithm1'中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_genetic1.c | 64 |警告:格式[-Wformat-extra-args]的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_genetic1.c | 67 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ dlist.c | 137 |错误:"InsertInOrder_dlist"的类型冲突|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ dlist.h | 19 |注意:"InsertInOrder_dlist"的先前声明在此处|C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1231 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1237 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1237 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1242 |注:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1242 |注:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:不推荐使用"前应有')'C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1597 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cpxconst.h | 243 |错误:期望的标识符或'('before')'token |C:\ Program Files \ IBM \ ILOG \ CPLEX_Studio_Community129 \ cplex \ include \ ilcplex \ cplex.h | 1597 |注意:扩展宏"CPXDEPRECATEDAPI" |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ swemextras.h | 16 |错误:"trunc"的类型冲突|c:\ mingw \ include \ math.h | 820 |注意:先前的'trunc'声明在这里|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"RFAlgorithm1"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 183 |警告:格式[-Wformat-extra-args]的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 185 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"Alg_MERwFirms_MustRun"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 466 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"Alg_MERwFirms"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 727 |警告:格式[-Wformat-extra-args] |的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 729 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"Alg_MERwFirmsSoftmax"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 934 |警告:格式[-Wformat-extra-args] |的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 936 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"Alg_ERSpilloverwFirms"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1179 |警告:格式[-Wformat-extra-args]的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1181 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"Alg_ERSpilloverwFirmsSoftmax"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1393 |警告:格式[-Wformat-extra-args]的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1395 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"RFAlgorithm"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1573 |警告:格式[-Wformat-extra-args]的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1575 |警告:未使用的变量'lostLoad'[-Wunused-variable] |C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c ||在函数"RFAlgorithmM"中:|C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1784 |警告:格式[-Wformat-extra-args]的参数过多C:\ Users \ Tingle \ OneDrive \ Documents \ Coding \ SWEM2020 \ alg_rf.c | 1786 |警告:未使用的变量'lostLoad'[-Wunused-variable] ||| ===构建失败:27个错误,17个警告(0分钟,2秒)=== |

||=== Build: Release in SWEM2020 (compiler: GNU GCC Compiler) ===| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1194|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1194|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1200|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1200|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1231|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\swemextras.h|16|error: conflicting types for 'trunc'| c:\mingw\include\math.h|820|note: previous declaration of 'trunc' was here| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1194|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1194|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1200|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1200|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1231|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1231|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1237|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1237|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1242|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1242|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1597|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1597|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_genetic1.c||In function 'GeneticAlgorithm1':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_genetic1.c|64|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_genetic1.c|67|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\dlist.c|137|error: conflicting types for 'InsertInOrder_dlist'| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\dlist.h|19|note: previous declaration of 'InsertInOrder_dlist' was here| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1231|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1237|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1237|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1242|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1242|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected ')' before 'deprecated'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1597|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cpxconst.h|243|error: expected identifier or '(' before ')' token| C:\Program Files\IBM\ILOG\CPLEX_Studio_Community129\cplex\include\ilcplex\cplex.h|1597|note: in expansion of macro 'CPXDEPRECATEDAPI'| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\swemextras.h|16|error: conflicting types for 'trunc'| c:\mingw\include\math.h|820|note: previous declaration of 'trunc' was here| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'RFAlgorithm1':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|183|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|185|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'Alg_MERwFirms_MustRun':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|466|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'Alg_MERwFirms':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|727|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|729|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'Alg_MERwFirmsSoftmax':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|934|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|936|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'Alg_ERSpilloverwFirms':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1179|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1181|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'Alg_ERSpilloverwFirmsSoftmax':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1393|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1395|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'RFAlgorithm':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1573|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1575|warning: unused variable 'lostLoad' [-Wunused-variable]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c||In function 'RFAlgorithmM':| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1784|warning: too many arguments for format [-Wformat-extra-args]| C:\Users\Tingle\OneDrive\Documents\Coding\SWEM2020\alg_rf.c|1786|warning: unused variable 'lostLoad' [-Wunused-variable]| ||=== Build failed: 27 error(s), 17 warning(s) (0 minute(s), 2 second(s)) ===|

推荐答案

此答案与我在此处给出的答案非常相似: C ++:Cplex使用Clion和MinGW和g ++编译器在项目上构建/cp优化程序makefile问题

This answer is very similar to the one I gave here: C++: Cplex/cp optimizer makefile issues on project build using Clion with MinGW and g++ compiler

CPLEX 详细的系统要求(单击版本12.9.0">"Windows">先决条件")显示Visual Studio 2015-2019是Windows上唯一受支持的编译器.

The CPLEX detailed system requirements (click on "Version 12.9.0" > "Windows" > "Prerequisites") show that Visual Studio 2015-2019 are the only supported compilers on Windows.

如果我们查看 cpxconst.h ,第243行(来自您的错误消息),则有问题的代码将显示:

If we look at cpxconst.h, line 243 (from your error message), code in question we see:

#   if defined(_WIN32) && !defined(BUILD_CPXSTATIC)
#      define CPXLIBAPI __declspec(dllimport)
#      define CPXDEPRECATEDAPI(version) __declspec(dllimport deprecated)
#      define CPXDEPRECATED(version) __declspec(deprecated)
...
#   endif

基于此,看来您的MinGW gcc已定义了 _WIN32 ,并且正在以仅与Microsoft Visual C兼容的方式定义 CPXDEPRECATEDAPI .

Based on this, it looks like your MinGW gcc has _WIN32 defined and it's defining CPXDEPRECATEDAPI in such a way that is only compatible with Microsoft Visual C.

您可以使用无操作替换 CPXDEPRECATEDAPI 的定义(即,编辑 cpxconst.h ,如下所示:

You could replace the definition of CPXDEPRECATEDAPI with a no-op (i.e., edit cpxconst.h, like so:

#      define CPXDEPRECATEDAPI(version)

但是,您很可能最终会遇到其他错误.

However, you are likely to just end up running into some other error down the line.

在Windows上,您实际上应该只使用Visual Studio 2015或更高版本,或者也许考虑使用

On Windows, you should really just use Visual Studio 2015 or above, or perhaps consider using the WSL.

这篇关于外部头文件ilcplex \ cpxconst.h引起编译器错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆