调试记录- error: #error “must enable c++17“
生活随笔
收集整理的這篇文章主要介紹了
调试记录- error: #error “must enable c++17“
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
/opt/petalinux/2021.1/sysroots/cortexa72-cortexa53-xilinx-linux/usr/include/xir/util/any.hpp:28:2: error: #error "must enable c++17"28 | #error "must enable c++17"| ^~~~~
定位到目標文件
/** Copyright 2019 Xilinx Inc.** Licensed under the Apache License, Version 2.0 (the "License");* you may not use this file except in compliance with the License.* You may obtain a copy of the License at** http://www.apache.org/licenses/LICENSE-2.0** Unless required by applicable law or agreed to in writing, software* distributed under the License is distributed on an "AS IS" BASIS,* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.* See the License for the specific language governing permissions and* limitations under the License.*/#pragma once #if __has_include(<any>) && __cplusplus > 201700 #include <any> #if !__cpp_lib_any > 0 #error "must enable -std=c++17 to use std::any" #endif namespace xir { using any = std::any; namespace stdx = ::std; } // namespace xir #else #error "must enable c++17" #endif解決方法:
原因是寫的CMakeLists.txt文件沒有添加對C++17的支持,所以在工程目錄下的CMakeLists.txt中添加以下語句:
其中,參數CMAKE_CXX_FLAGS含義是: set compiler for c++ language
而后面的-O3(是字母opq的o,大寫的歐)是用來調節編譯時的優化程度的,最高為-O3,最低為-O0(即不做優化)
總結
以上是生活随笔為你收集整理的调试记录- error: #error “must enable c++17“的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 学习记录-windows,开发板互通上网
- 下一篇: 学习记录-交叉编译环境的设置