M1 Mac运行PaddleOCR报错:flag 'flagfile'重复定义
M1芯片Mac运行PaddleOCR时gflags重复定义问题解决方法
问题原因
系统中同时存在两个不同路径的gflags库,PaddleOCR编译或运行时链接了重复的库文件,导致flagfile标志重复定义冲突。
解决步骤
卸载系统中手动安装的gflags
- 若通过brew安装:
brew uninstall gflags - 若通过源码编译安装,删除相关文件(以
/usr/local为例):sudo rm -rf /usr/local/lib/libgflags* sudo rm -rf /usr/local/include/gflags
- 若通过brew安装:
重新安装适配M1的PaddlePaddle和PaddleOCR
- 卸载现有版本:
pip uninstall paddlepaddle paddleocr -y - 用conda安装适配M1的PaddlePaddle(推荐):
conda create -n paddle_env python=3.8 conda activate paddle_env conda install paddlepaddle==2.5.0 -c paddle -y - 或用pip安装:
pip install paddlepaddle==2.5.0 -i https://pypi.tuna.tsinghua.edu.cn/simple - 安装PaddleOCR:
pip install paddleocr -i https://pypi.tuna.tsinghua.edu.cn/simple
- 卸载现有版本:
源码编译时强制使用Paddle内置gflags(若上述方法无效)
- 克隆PaddleOCR源码:
git clone https://github.com/PaddlePaddle/PaddleOCR.git cd PaddleOCR - 编译安装时指定使用内置gflags:
python setup.py install --force-use-paddle-gflags - 或用cmake编译:
mkdir build && cd build cmake .. -DUSE_EXTERNAL_GFLAGS=OFF make -j8
- 克隆PaddleOCR源码:
内容的提问来源于stack exchange,提问作者user2392965
相关产品推荐
相关产品推荐

