PaddlePaddle / Paddle

PArallel Distributed Deep LEarning: Machine Learning Framework from Industrial Practice (『飞桨』核心框架,深度学习&机器学习高性能单机、分布式训练和跨平台部署)
http://www.paddlepaddle.org/
Apache License 2.0
22.05k stars 5.54k forks source link

arm源码安装paddle2.6报错void* memcpy(void*, const void*, size_t) #63852

Open ada1114 opened 4 months ago

ada1114 commented 4 months ago

问题描述 Issue Description

按照https://www.paddlepaddle.org.cn/install/quick?docurl=/documentation/docs/zh/install/compile/arm-compile.html这篇文档在python3.10.14上安装paddlepaddle。 前面的步骤执行很顺利,执行到步骤9 9.使用以下命令来编译,注意,因为处理器为 ARM 架构,如果不加TARGET=ARMV8则会在编译的时候报错。 make TARGET=ARMV8 -j$(nproc) 报错:error: ‘void memcpy(void, const void*, size_t)’ copying an object of non-trivial type ‘Eigen::internal::Packet4c’ {aka ‘struct Eigen::internal::eigen_packet_wrapper<int, 2>’} from an array of ‘const int8_t’ {aka ‘const signed char’} [-Werror=class-memaccess]

企业微信截图_1714008182400

版本&环境信息 Version & Environment Information


Paddle version: N/A Paddle With CUDA: N/A

OS: debian 12 GCC version: (Debian 12.2.0-14) 12.2.0 Clang version: N/A CMake version: version 3.16.8 Libc version: glibc 2.36 Python version: 3.10.14

CUDA version: N/A cuDNN version: N/A Nvidia driver version: N/A Nvidia driver List: N/A


ada1114 commented 4 months ago

很多这样的报错

企业微信截图_17140120048722
lijialin03 commented 4 months ago

您好,我们正在联系相关开发同学进行复现,复现后会尽快联系您,感谢您的反馈!

qili93 commented 4 months ago

您好,https://www.paddlepaddle.org.cn/documentation/docs/zh/install/compile/arm-compile.html 这篇文章里面对ARM的原吗编译有点老了。您如果需要公版ARM的 PaddlePaddle ARM CPU 的安装包,可以从 https://www.paddlepaddle.org.cn/whl/linux/cpu-mkl/develop.html 这个链接中直接下载。

如果您需要源码编译PaddlePaddle ARM CPU的安装包,可以参考如下步骤进行编译,建议使用飞桨的开发镜像,这样可以避免很多因为环境差异导致的编译问题。

# 启动容器镜像命令参考
docker pull registry.baidubce.com/device/paddle-cpu:ubuntu20-$(uname -m)-gcc84-py310
docker run -dit --name paddle-cpu-dev -v $(pwd):/work \
  --network=host --shm-size=128G --workdir=/work \
  --cap-add=SYS_PTRACE --security-opt seccomp=unconfined \
  registry.baidubce.com/device/paddle-cpu:ubuntu20-$(uname -m)-gcc84-py310 /bin/bash

# 下载源码,默认 develop 分支
git clone https://github.com/PaddlePaddle/Paddle.git
cd Paddle

# 创建编译目录
mkdir build && cd build

# 源码编译cmake命令参考
cmake .. -DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
  -DPY_VERSION=3.10 -DPYTHON_EXECUTABLE=`which python3` \
  -DWITH_TESTING=OFF -DON_INFER=ON -DWITH_DISTRIBUTE=ON -DWITH_ARM=ON

# 编译命令
make TARGET=ARMV8 -j16
ada1114 commented 4 months ago

@qili93 您好,我按照您的说明分别试了一下直接执行安装包和源码,仍然都报错。 其中: 直接执行安装包报错信息

直接执行安装包报错

源码安装报错

源码安装报错1_17142732022799 新报错企业微信截图_17142725037631 源码安装报错3_17142732677168

cmake报错完整信息.txt

想问下,这个安装步骤在我上面发的环境下测试过吗?

jfw0628 commented 3 months ago

用的官方提供的docker执行时候,报了和上面一样的错误