树莓派4编译安装时,string_helper.h报错
Created by: fociceo
为使您的问题得到快速解决,在建立Issue前,请您先通过如下方式搜索是否有相似问题:【搜索issue关键字】【使用labels筛选】【官方文档】
建立issue时,为快速解决问题,请您根据使用情况给出如下信息:
-
标题:请包含关键词“安装错误”/“编译错误”,例如“Mac编译错误”
-
版本、环境信息: 1)PaddlePaddle版本:v1.8.4 2)CPU:请提供CPU型号,OpenBlas,a 3)GPU:请提供GPU型号,CUDA和CUDNN版本号 4)系统环境:ubuntu20 树莓派4 python:3.8.4
-
安装方式信息:本地编译
-
复现信息:如为报错,请给出复现环境、复现步骤
-
问题描述:请详细描述您的问题,同步贴出报错信息、日志/代码关键片段 执行的cmake命令:
cmake .. -DCMAKE_BUILD_TYPE=Release -DWITH_CONTRIB=OFF -DWITH_MKL=OFF -DWITH_MKLDNN=OFF -DWITH_TESTING=OFF -DWITH_GPU=OFF -DWITH_PYTHON=ON -DPY_VERSION=3 -DON_INFER=ON -DWITH_XBYAK=OFF -DPYTHON_EXECUTABLE=/opt/python37/bin/python3 cmake .. -DCMAKE_BUILD_TYPE=Release -DWITH_CONTRIB=OFF -DWITH_MKL=OFF -DWITH_MKLDNN=OFF -DWITH_TESTING=OFF -DWITH_GPU=OFF -DWITH_PYTHON=ON -DPY_VERSION=3 -DON_INFER=ON -DWITH_XBYAK=OFF -DPYTHON_EXECUTABLE=/usr/bin/python3 -DWITH_ARM=ON -DWITH_NCCL=OFF
编译命令: make TARGET=ARMV8 -j4
错误信息: In file included from /data/paddle/Paddle/paddle/fluid/framework/io/shell.h:32, from /data/paddle/Paddle/paddle/fluid/framework/io/fs.h:22, from /data/paddle/Paddle/paddle/fluid/framework/io/fs.cc:15: /data/paddle/Paddle/paddle/fluid/string/string_helper.h: In instantiation of ‘std::string paddle::string::format_string(const char*, ARGS&& ...) [with ARGS = {const char*, const char*}; std::string = std::__cxx11::basic_string]’: /data/paddle/Paddle/paddle/fluid/framework/io/fs.cc:30:46: required from here /data/paddle/Paddle/paddle/fluid/string/string_helper.h:54:23: error: moving a local object in a return statement prevents copy elision [-Werror=pessimizing-move] 54 | return std::move(str); | ^ /data/paddle/Paddle/paddle/fluid/string/string_helper.h:54:23: note: remove ‘std::move’ call [ 28%] Building CXX object CMakeFiles/cryptopp-object.dir/ec2n.cpp.o /data/paddle/Paddle/paddle/fluid/string/string_helper.h: In instantiation of ‘std::string paddle::string::format_string(const char*, ARGS&& ...) [with ARGS = {const char*}; std::string = std::__cxx11::basic_string]’: /data/paddle/Paddle/paddle/fluid/framework/io/fs.cc:115:71: required from here /data/paddle/Paddle/paddle/fluid/string/string_helper.h:54:23: error: moving a local object in a return statement prevents copy elision [-Werror=pessimizing-move] /data/paddle/Paddle/paddle/fluid/string/string_helper.h:54:23: note: remove ‘std::move’ call /data/paddle/Paddle/paddle/fluid/string/string_helper.h: In instantiation of ‘std::string paddle::string::format_string(const char*, ARGS&& ...) [with ARGS = {const char*, const char*, const char*}; std::string = std::__cxx11::basic_string]’: /data/paddle/Paddle/paddle/fluid/framework/io/fs.cc:345:78: required from here /data/paddle/Paddle/paddle/fluid/string/string_helper.h:54:23: error: moving a local object in a return statement prevents copy elision [-Werror=pessimizing-move] /data/paddle/Paddle/paddle/fluid/string/string_helper.h:54:23: note: remove ‘std::move’ call cc1plus: all warnings being treated as errors make[2]: *** [paddle/fluid/framework/io/CMakeFiles/fs.dir/build.make:63: paddle/fluid/framework/io/CMakeFiles/fs.dir/fs.cc.o] Error 1 make[1]: *** [CMakeFiles/Makefile2:18372: paddle/fluid/framework/io/CMakeFiles/fs.dir/all] Error 2 make[1]: *** Waiting for unfinished jobs.... [ 29%] Building CXX object CMakeFiles/cryptopp-object.dir/eccrypto.cpp.o