This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] LAUNCHXL-CC1352R1:CMake 和 GCC 编译错误

Guru**** 2463330 points
Other Parts Discussed in Thread: CC1352R

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/wireless-connectivity/zigbee-thread-group/zigbee-and-thread/f/zigbee-thread-forum/1201932/launchxl-cc1352r1-build-error-with-cmake-and-gcc

器件型号:LAUNCHXL-CC1352R1
主题中讨论的其他器件:CC1352R

您好!


我尝试使用 CMake 和 GCC 构建 cc1352r 工程、因为 SimpleLink SDK v6中增加了 CMake 支持。 但是、我无法避免收到以下错误:

#error "When compiling with TI-POSIX, you must define -std=c99 (or later). You must not define _POSIX_SOURCE or _POSIX_C_SOURCE."

在附件中、您可以找到完整的生成日志输出。 有什么办法解决这个问题的想法吗?


此致、
Aleksa.

e2e.ti.com/.../build_5F00_log.txt

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Aleksa:  

    顾名思义、您需要提供 C99定义。 这是为了确保在源代码中使用正确的类型。  

    此错误消息由位于[SDK_PATH]/soure/ti/posix/gcc/sys 路径中的 types.h 生成

    此致、

    SID

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    我已经提供了 c99定义、这不是问题。

    我能够通过添加以下内容解决这一问题:
     

    #undef _POSIX_C_SOURCE
    #undef _POSIX_SOURCE
    

    /ti/ccs1040/ccs/tools/compiler/gcc-arm-none-eabi-7-2017-q4-major/include/sys/features.h 中的~、其中  定义了这两个符号。 但这显然不是长期解决方案。

     除非需要、否则我不希望更新 CCS 版本。

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    尊敬的 Aleksa:  

    我在 SDK 的 types.h 头文件中随代码片段发布的图像确实提到需要 取消定义未定义的宏。 您所做的似乎是处理错误并确保使用正确变量类型的正确方法。  
    此致、
    SID