CMake教程10:编写CMake中遇到的问题

简介: CMake教程10:编写CMake中遇到的问题

Policy CMP0115 is not set: Source file extensions must be explicit.

在添加源文件的时候,没有写明文件的后缀名,所以才触发的这个警告,补全文件扩展名就行了

error C2039: 'ptr_fun': is not a member of 'std'

cocos/base/CCConsole.cpp

std::string& Console::Utility::rtrim(std::string& s) {
    s.erase(std::find_if(s.rbegin(), s.rend(), std::not1(std::ptr_fun<int, int>(std::isspace))).base(), s.end());
    return s;
}
复制代码

原因:std::ptr_fun在C ++ 11中已弃用,在C ++ 17中将被完全删除。

解决办法:CMakeLists.txt设置C++11即可

set(CMAKE_CXX_STANDARD 11)

no template named 'list' in namespace 'std'

一直在这个错误上排查,怎么看都没有问题

网络异常,图片无法展示
|

网络异常,图片无法展示
|
其实这里就是没有问题,这个错误之前还有一个错误:

no template named 'list' in namespace 'std'

造成这个错误的原因是使用了std::list,但是头文件却没有引入include <list> 加一下就好了


目录
相关文章
|
3月前
|
Dart IDE Unix
CMake 教程3
CMake 教程
35 1
|
3月前
|
缓存 Unix 程序员
CMake 教程1
CMake 教程
64 1
|
3月前
CMake 教程2
CMake 教程
24 0
|
5月前
|
C++ 存储 测试技术
面向 C++ 的现代 CMake 教程(五)(3)
面向 C++ 的现代 CMake 教程(五)
61 0
|
5月前
|
C++ 测试技术 开发工具
面向 C++ 的现代 CMake 教程(五)(1)
面向 C++ 的现代 CMake 教程(五)
54 0
|
5月前
|
C++ 存储 索引
面向 C++ 的现代 CMake 教程(一)(5)
面向 C++ 的现代 CMake 教程(一)
95 0
|
5月前
|
存储 算法 C++
面向 C++ 的现代 CMake 教程(五)(5)
面向 C++ 的现代 CMake 教程(五)
47 0
|
5月前
|
缓存 存储 C++
面向 C++ 的现代 CMake 教程(一)(4)
面向 C++ 的现代 CMake 教程(一)
72 0
|
5月前
|
C++ Unix Windows
面向 C++ 的现代 CMake 教程(四)(3)
面向 C++ 的现代 CMake 教程(四)
50 0
|
5月前
|
C++ 开发者 Unix
面向 C++ 的现代 CMake 教程(四)(5)
面向 C++ 的现代 CMake 教程(四)
54 0