Skip to content

Instantly share code, notes, and snippets.

@snowman2
Last active November 9, 2022 21:18
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save snowman2/8fa931fd678cb6f0aca9089617b881fb to your computer and use it in GitHub Desktop.
Save snowman2/8fa931fd678cb6f0aca9089617b881fb to your computer and use it in GitHub Desktop.
GDAL Python Developer Setup from GitHub
# SWIG
export SWIG_VERSION=4.0.2
export SWIG_PREFIX=$HOME/install/swig
mkdir -p $SWIG_PREFIX
mkdir /tmp/swig/
cd /tmp/swig/
wget https://sourceforge.net/projects/swig/files/swig/swig-${SWIG_VERSION}/swig-${SWIG_VERSION}.tar.gz/download -O swig-${SWIG_VERSION}.tar.gz
tar xf swig-${SWIG_VERSION}.tar.gz
cd swig-${SWIG_VERSION}
./configure --prefix=$SWIG_PREFIX
make
make install
export PATH=$SWIG_PREFIX/bin:$PATH
# GDAL
git clone https://github.com/OSGeo/gdal/
cd gdal
python3 -m venv venv
. venv/bin/activate
python -m pip install numpy
pip install -r autotest/requirements.txt
mkdir build
cd build
cmake .. \
-DSWIG_EXECUTABLE=$SWIG_PREFIX/bin/swig \
-DSWIG_REGENERATE_PYTHON=ON \
-DBUILD_PYTHON_BINDINGS=ON \
-DPython_FIND_VIRTUALENV=ONLY \
-DBUILD_APPS=OFF \
-DGDAL_BUILD_OPTIONAL_DRIVERS=OFF \
-DOGR_BUILD_OPTIONAL_DRIVERS=OFF \
-DBUILD_CSHARP_BINDINGS=OFF \
-DBUILD_JAVA_BINDINGS=OFF
cmake --build . -j$(nproc)
. ../scripts/setdevenv.sh
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment