Linux系统安装Python编译报错

                                             Unix & Linux 平台安装 Python

以下为在 Unix & Linux 平台上安装 Python 的简单步骤:

  • 打开 WEB 浏览器访问https://www.python.org/downloads/source/
  • 选择适用 于Unix/Linux 的源码压缩包。
  • 下载及解压压缩包。
  • 如果你需要自定义一些选项修改Modules/Setup
  • 执行 ./configure 脚本
  • make
  • make install

执行以上操作后,Python 会安装在 /usr/local/bin 目录中,Python 库安装在 /usr/local/lib/pythonXX,XX 为你使用的 Python 的版本号。

执行make遇到以下问题:

gcc -pthread -Xlinker -export-dynamic -o python Programs/python.o libpython3.6m.a -lpthread -ldl -lutil -lrt -lm
./python -E -S -m sysconfig –generate-posix-vars ;\
if test $? -ne 0 ; then \
echo “generate-posix-vars failed” ; \
rm -f ./pybuilddir.txt ; \
exit 1 ; \
fi
Fatal Python error: Py_Initialize: Unable to get the locale encoding
LookupError: unknown encoding: GB2312

Current thread 0x00007fd09a00f700 (most recent call first):
/bin/sh: line 5: 15089 ????? ./python -E -S -m sysconfig –generate-posix-vars
generate-posix-vars failed
make: *** [pybuilddir.txt] ?? 1

解决方法:

在 ./configure 操作前,先进行配置:

export LANGUAGE=en_US.UTF-8

export LANG=en_US.UTF-8

export LC_ALL=en_US.UTF-8

### Python 安装 GDAL 编译报错解决方案 在安装和配置 GDAL 的过程中,可能会遇到一些常见的错误。以下是针对 `ImportError: No module named _gdal` 错误以及可能的其他编译问题的解决方法。 #### 1. 确保依赖项已正确安装 GDAL 是一个复杂的库,它依赖于许多外部工具和库。如果这些依赖未正确安装,则可能导致编译失败或运行时错误。对于 Linux 用户来说,可以尝试通过包管理器安装必要的依赖项: ```bash sudo apt-get update sudo apt-get install libcurl4-openssl-dev libxml2-dev libproj-dev \ libgeos-dev libjpeg-dev libpng-dev libgif-dev \ build-essential g++ python3-dev ``` 上述命令涵盖了大多数常用的 GDAL 依赖项[^1]。 #### 2. 配置并重新构建 GDAL 当使用源码方式安装 GDAL 时,可以通过指定选项来确保 Python 绑定被正确生成。例如,在执行 `./configure` 脚本时加入 `--with-python` 参数: ```bash ./configure --with-python make clean make sudo make install ``` 此过程会清理旧的构建文件,并重新生成支持 Python 的 GDAL 库。 #### 3. 处理 `_gdal` 模块缺失的问题 如果在导入模块时收到类似于 `ImportError: No module named _gdal` 的提示,通常是因为动态链接库路径设置不正确或者缺少共享对象文件 `.so`。此时可采取以下措施之一: - **更新环境变量** 将 GDAL 的安装目录添加到系统的 `LD_LIBRARY_PATH` 中: ```bash export LD_LIBRARY_PATH=/usr/local/lib:$LD_LIBRARY_PATH ``` - **创建符号链接** 如果系统无法找到所需的共享库,手动为其建立软连接可能是有效的办法: ```bash sudo ln -s /path/to/libgdal.so /usr/lib/libgdal.so ``` 以上操作有助于修复因路径问题引起的加载失败情况[^2]。 #### 4. 使用预编译二进制包简化安装流程 为了避免繁琐的手动编译步骤,推荐考虑采用 pip 工具直接获取适合当前平台架构优化过的轮子(wheels)。比如: ```bash pip install gdal==$(gdal-config --version | awk -F'[.]' '{print $1"."$2}') ``` 这条指令能够依据本地实际存在的 GDAL 版本来匹配兼容版本号,从而减少潜在冲突风险[^3]。 另外需要注意的是,某些特定场景下还可能存在 SQLite 相关联接错误等问题,这往往涉及到第三方数据库引擎的支持状况。对此类异常可通过单独下载最新版 SQLite 并按照其文档指示完成定制化组装工作加以规避[^5]。 --- ### 示例代码片段验证安装成功与否 下面提供一段简单的脚本用于确认是否能正常调用 GDAL 功能接口: ```python from osgeo import gdal, ogr, osr def test_gdal(): raster = gdal.Open('example.tif') if not raster: raise Exception("Failed to open example file.") test_gdal() print("GDAL is successfully installed and functional!") ``` ---
评论 7
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值