使用 µVision Keil 编译 SDK 时无法正常工作(错误 L62421)

问题:

我尝试使用 µVision Keil 编译器编译 SDK,但返回了错误 L62421。

我的微控制器支持该内核。

 

答案:

The code in the SDK libraries (libboreas-simple-api-<MCU_ARCH>.a,  libbos-core-lib-<MCU_ARCH>.a) is compiled using a wchar_t length that differ from the size used by default in Keil:

wchar_t 是 C/C++ 中的一个关键字,用于表示 宽字符类型,用于存储基本ASCII字符集以外的字符,通常用于表示用于国际文本的Unicode(如Windows上的UTF-16或其他平台上的UTF-32),其实际大小(通常为2或4字节)取决于编译器和平台,从而能够支持更大的字符集和宽字符串(如 std::wstring). 

要解决此兼容性问题,应在 Keil 中修改以下选项:

  • 取消勾选“缩短枚举/wchar”选项。

  • 在“其他控制”中添加“-fshort-enums”。



发表评论