C++ 使用C+;编译Duktape时未找到inttypes.h文件+;建设者与叮当声

C++ 使用C+;编译Duktape时未找到inttypes.h文件+;建设者与叮当声,c++,c++builder,c++builder-10-seattle,duktape,C++,C++builder,C++builder 10 Seattle,Duktape,我已经创建了一个简单的Duktape示例,使用并遵循来自的“初始化上下文”中的代码。当使用经典模式时,它可以很好地编译。如果我通过取消选中Project->Options->C++编译器->Use'classic'Borland编译器切换到clang,我会得到以下错误 inttypes.h file not found on line 780 of duktape.h 如果我注释掉include,则会出现以下错误: Unresolved external _va_copy Unresolved

我已经创建了一个简单的Duktape示例,使用并遵循来自的“初始化上下文”中的代码。当使用经典模式时,它可以很好地编译。如果我通过取消选中Project->Options->C++编译器->Use'classic'Borland编译器切换到clang,我会得到以下错误

inttypes.h file not found on line 780 of duktape.h
如果我注释掉include,则会出现以下错误:

Unresolved external _va_copy
Unresolved external _fmin
Unresolved external _fmax

通常的方法是确保clang具有
-std=c99
,因此不需要进行遗留类型检测。遗留类型检测并不总是可靠的


但是,如果出于某种原因不能使用C99/C++11,则始终可以直接编辑
duk_config.h
头(
duk_config.h
自Duktape1.3.0以来就存在),其中包含所有检测逻辑。

头和
va_copy()
是C99的功能(我认为
fmin
fmax
)也是如此。也许你需要在C99或C11模式下编译
clang
才能激活它们。注意
fmin
fmax
来自
va_copy()
来自
。或者,当您切换编译器时,可能需要重新配置Duktape;它被设置为与一个编译器正常工作,而与另一个编译器不正常工作。我需要弄清楚如何重新配置Duktape。它具有各种神奇的自动检测功能