rt-thread-official/components/libc/cplusplus/cpp11/README_ZH.md

1.1 KiB
Raw Blame History

cpp 11 support for rt-thread

特性

下面是 RT-Thread 支持的 C++ 11 线程特性。

  • Atomic.
  • Conditional variables.
  • Clocks.
  • Future.
  • Mutexes.
  • Threads.
  • TLS.

如何使用

请注意,在 RT-Thread 中使用 C++ 11需要修改工具链中的部分文件。请在修改之前备份好工具链。

  1. 使能 c++11

  2. 下载 GCC 工具链

    gcc version 10.2.1 20201103 (release) (GNU Arm Embedded Toolchain 10-2020-q4-major)
    
  3. 删除下面的文件

    rm -f toolchain/arm-none-eabi/include/c++/10.2.1/thread
    rm -f toolchain/arm-none-eabi/include/c++/10.2.1/mutex
    rm -f toolchain/arm-none-eabi/include/c++/10.2.1/condition_variable
    rm -f toolchain/arm-none-eabi/include/c++/10.2.1/future
    rm -f toolchain/arm-none-eabi/include/pthread.h
    
  4. 请清除下面文件的内容,保留文件避免编译失败

    toolchain/arm-none-eabi/include/sys/_pthreadtypes.h
    
  5. 更新 rtconfig.py 文件,添加 c++ 编译参数:

    CXXFLAGS = CFLAGS  + ' -std=c++11 -fabi-version=0 -MMD -MP -MF'