gpt4 book ai didi

linux - 在 Amazon Linux 虚拟服务器上的 Python 2.7 上安装 GDAL

转载 作者:太空狗 更新时间:2023-10-29 11:35:36 27 4
gpt4 key购买 nike

我有一个正在运行的 t2.micro Amazon Linux 实例。

Python 2.7.12 已预装。我想用 Python 安装 GDAL。

我已经安装了 gcc c++ 和 numpy。

以下命令都不适合我:

sudo yum install gdal-devel

sudo yum install gdal

sudo yum install python-gdal

它们都产生了以下消息。

No package {PACKAGE_NAME} available.
Error: Nothing to do

我无法在 Amazon Linux 实例上运行 apt-get。

也没有任何相关的 SO 帖子对我有用。

我也跑了

sudo easy_install GDAL

这给出了如下的 MemoryError:

Searching for GDAL
Reading https://pypi.python.org/simple/GDAL/
Best match: GDAL 2.2.1
Downloading https://pypi.python.org/packages/f2/c3/1cadfcae9a4330c3a68c41e3bc96a5d228883eec6ea3e2fc6321165b863c/GDAL-2.2.1.tar.gz#md5=4d78446b1053825a2d15b70730288b0f
Processing GDAL-2.2.1.tar.gz
Writing /tmp/easy_install-1VNr7G/GDAL-2.2.1/setup.cfg
Running GDAL-2.2.1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-1VNr7G/GDAL-2.2.1/egg-dist-tmp-q1jQCi
Traceback (most recent call last):
File "/usr/bin/easy_install", line 9, in <module>
load_entry_point('setuptools==12.2', 'console_scripts', 'easy_install-2.7')()
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 2297, in main
distclass=DistributionWithoutHelpCommands, **kw
File "/usr/lib64/python2.7/distutils/core.py", line 151, in setup
dist.run_commands()
File "/usr/lib64/python2.7/distutils/dist.py", line 953, in run_commands
self.run_command(cmd)
File "/usr/lib64/python2.7/distutils/dist.py", line 972, in run_command
cmd_obj.run()
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 393, in run
self.easy_install(spec, not self.no_deps)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 642, in easy_install
return self.install_item(spec, dist.location, tmpdir, deps)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 672, in install_item
dists = self.install_eggs(spec, download, tmpdir)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 857, in install_eggs
return self.build_and_install(setup_script, setup_base)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 1085, in build_and_install
self.run_setup(setup_script, setup_base, args)
File "/usr/lib/python2.7/dist-packages/setuptools/command/easy_install.py", line 1071, in run_setup
run_setup(setup_script, args)
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 240, in run_setup
raise
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 193, in setup_context
yield
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 152, in save_modules
yield saved
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 126, in __exit__
self._saved = UnpickleableException.dump(type, exc)
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
File "/usr/lib/python2.7/dist-packages/setuptools/sandbox.py", line 110, in dump
return cls.dump(cls, cls(repr(exc)))
MemoryError

最佳答案

它在 EPEL 存储库中。试试这个:

sudo yum-config-manager --enable epel
sudo yum install gdal-python
sudo yum -y update
sudo yum -y install make automake gcc gcc-c++ libcurl-devel proj-devel geos-devel
cd /tmp
curl -L http://download.osgeo.org/gdal/2.0.0/gdal-2.0.0.tar.gz | tar zxf -
cd gdal-2.0.0/
./configure --prefix=/usr/local --with-python
make -j4
sudo make install
sudo easy_install GDAL
export LD_LIBRARY_PATH="/usr/local/lib:$LD_LIBRARY_PATH"
sudo ldconfig

我能够让它在运行 amazon linux 的全新 t2.micro 上运行。根据您的需要,最终导出需要在 bash 脚本或相关位置永久化。

在此之后,我能够from osgeo import gdal

您可以在/tmp/gdal-2.0.0 文件夹中清理以在完成后释放一些空间。

警告 - 在 t2.micro 上构建花费了很长时间

关于linux - 在 Amazon Linux 虚拟服务器上的 Python 2.7 上安装 GDAL,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44940071/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com