具体部分报错信息:
/home/chris/work/Paddle/third_party/eigen3/src/extern_eigen3/unsupported/Eigen/CXX11/src/Tensor/TensorExpr.h:128:35: error: implicitly-declared ‘constexpr Eigen::TensorMap<Eigen::Tensor<const paddle::platform::complex64, 1, 1, long int>, 0, Eigen::MakePointer>::TensorMap(const Eigen::TensorMap<Eigen::Tensor<const paddle::platform::complex64, 1, 1, long int>, 0, Eigen::MakePointer>&)’ is deprecated [-Werror=deprecated-copy]
128 | : m_xpr(xpr), m_functor(func) {}
| ^
In file included from /home/chris/work/Paddle/third_party/eigen3/src/extern_eigen3/unsupported/Eigen/CXX11/Tensor:149,
from /home/chris/work/Paddle/paddle/fluid/platform/bfloat16.h:28,
from /home/chris/work/Paddle/paddle/fluid/framework/data_type.h:20,
from /home/chris/work/Paddle/paddle/fluid/framework/tensor_util.h:18,
from /home/chris/work/Paddle/paddle/fluid/framework/tensor_util.cc:15:
经尝试,是因为gcc(gcc9)版本太新导致的,使用把本机gcc切换成gcc8解决,官网建议使用gcc 8.2.0。
linux中gcc和g++命令是链接的: x86_64-linux-gnu-gcc-(版本号) 和 x86_64-linux-gnu-g++-(版本号),执行文件在/usr/bin/下
可通过ls -l gcc/g++或ll gcc/g++查看gcc和g++当前默认使用版本。
安装gcc-8和g++-8,具体安装方式不同系统不一样,请自行百度。
安装后在/usr/bin/找x86_64-linux-gnu-gcc-8和x86_64-linux-gnu-g++-8,如果能找到说明安装成功!
删除/usr/bin/gcc和/usr/bin/g++软连接:
sudo rm /usr/bin/gcc
sudo rm /usr/bin/g++
重新创建gcc和g++软连接:
ln -s /usr/bin/x86_64-linux-gnu-gcc-8 /usr/bin/gcc
ln -s /usr/bin/x86_64-linux-gnu-g++-8 /usr/bin/g++
尝试重新执行make 或 make -j(并行数)。
希望可以帮到你~OV0
linux 编译安装paddlepaddle时报错: is deprecated [-Werror=deprecated-copy]