PaddleOCR源码安装+centos7.6+python3.10

先自行安装python3,版本如下:
root@localhost IOPaint# python3 --version Python 3.10.6

安装gcc9

安装 SCL 仓库

sudo yum install -y centos-release-scl

安装 devtoolset-9(包含 GCC 9)

sudo yum install -y devtoolset-9-toolchain

安装完整的开发工具集

sudo yum install -y devtoolset-9-gcc devtoolset-9-gcc-c++ devtoolset-9-binutils
echo 'source /opt/rh/devtoolset-9/enable' >> ~/.bashrc
source ~/.bashrc

查看版本,9的版本就是对的

gcc --version

基础环境

复制代码
# 安装必要的依赖包
sudo yum install -y openssl-devel bzip2-devel libffi-devel zlib-devel
sudo yum install -y sqlite-devel readline-devel tk-devel gdbm-devel
sudo yum install -y xz-devel expat-devel ncurses-devel

# 安装图像处理相关依赖
sudo yum install -y libjpeg-devel libpng-devel libtiff-devel
sudo yum install -y freetype-devel lcms2-devel libwebp-devel

下载源码

复制代码
mkdir /opt/PaddleOCR
cd /opt/PaddleOCR

git clone https://gitee.com/paddlepaddle/PaddleOCR.git
cd PaddleOCR

切换到 3.2.0 版本

git checkout v3.2.0

复制代码
# 创建虚拟环境
python3 -m venv paddle-ocr-env

# 激活虚拟环境 source paddle-ocr-env/bin/activate

如需退出虚拟环境,请执行:

复制代码
deactivate

安装 PaddlePaddle 框架
python3 -m pip install paddlepaddle==3.1.1 -i https://pypi.tuna.tsinghua.edu.cn/simple

安装源码

安装基础依赖

pip3 install -r requirements.txt -i https://pypi.tuna.tsinghua.edu.cn/simple

如果需要使用 PP-StructureV3 文档解析功能

python3 -m pip install "paddleocrdoc_analysis" -i https://pypi.tuna.tsinghua.edu.cn/simple

如果需要使用 PP-ChatOCRv4 信息抽取功能

python3 -m pip install "paddleocrkie" -i https://pypi.tuna.tsinghua.edu.cn/simple

源码安装

python3 -m pip install -e . -i https://pypi.tuna.tsinghua.edu.cn/simple
报错

复制代码
# 安装 devtoolset-9
复制代码
sudo yum install -y devtoolset-9-toolchain devtoolset-9-libstdc++-devel

# 检查 libstdc++ 文件位置
复制代码
find /opt/rh/devtoolset-9/ -name "libstdc++.so*" 2>/dev/null

启用 devtoolset-9 工具集

source /opt/rh/devtoolset-9/enable
验证 gcc 版本(应该显示 9.x.x)
gcc --version

查找 devtoolset-9 中所有的 libstdc++ 文件

find /opt/rh/devtoolset-9/ -name "*libstdc++*" -type f 2>/dev/null

如果在 gcc 目录中找到,复制到系统目录

if -f "/opt/rh/devtoolset-9/root/usr/lib/gcc/x86_64-redhat-linux/9/libstdc++.so" ; then
sudo ln -sf /opt/rh/devtoolset-9/root/usr/lib/gcc/x86_64-redhat-linux/9/libstdc++.so /lib64/libstdc++.so.6
fi