Как и что собирать
Это руководство основано на значительной работе проделанной Marco Pasetti и расширено краткими описаниями компонентов, а также некоторой дополнительной информацией к сборке.
Оглавление
Этот документ является простым руководством по сборке Windows-версий GRASS и Quantum GIS. Он основан на следующих источниках:
Документ расчитан на начинающих и пытается свести все предыдущие к единому, включающему все необходимые части.
Предполагается что библиотеки использованные в этом руководстве имеют последнюю стабильную версию. Иначе, в замечаниях указывается, почему последняя версия не была использована.
Чтобы избежать ошибок, прежде чем приступать к активным действиям рекомендуется сначала прочитать параграф. Очень важно выполнять каждый шаг в той последовательности, которая указана в данном руководстве.
Это руководство было успешно протестировано для операционных систем Windwows XP и Windows Vista. Для установки компонентов необходим доступ к интернет, так как некоторые из них получают инсталляционные файлы из веб.
MSYS - Minimal SYStem. Предоставляет POSIX-совместимую среду-оболочку Bourne, а также набор инструментов UNIX выполняемых из командой строки. MSYS была разработана для запуска скриптов конфигурации и сборки (Makefiles) используемых для компиляции обеспечения с открытым программным кодом, другим использованием MSYS является замена интерфейса командной строки Windows cmd.exe
Загрузите MSYS installer
Установите в c:\msys
После установки, в появившемся окне, на вопрос: Do you wish to continue with the post install? введите n (нет) и enter.
Загрузите пакет MSYS coreutils (требуется для некоторых модулей и скриптов GRASS).
Распакуйте во временную папку и скопируйте содержимое папки coreutils-5.97 в c:\msys (перезаписывая существующие файлы)
Пример кода программы/html и т.п.
MinGW - Minimalist GNU for Windows, бывший mingw32, порт компилятора GNU Compiler Collection (GCC) для Microsoft Windows включающий набор свободных библиотек и заголовочных файлов для Windows API. MinGW позволят разработчикам создавать приложения Microsoft Windows. В MinGW включены расширения для Microsoft Visual C++ runtime library поддерживающие C99 (современный диалект C).
Загрузите MinGW
Выберите "Download and Install" (Загрузить и установить), "Current Version" (Текущую версию);
Устанавливайте только "g++ compiler" и "MinGW Make";
Папка установки: c:\msys\mingw
Flex - быстрый лексический анализатор-генератор. Flex является инструментом для разработки программ осуществляющих поиск по шаблонам текста. Существует множется применений Flex, включая написание компиляторов совместно с Bison.
Загрузите скомпилированный Flex
Распакуйте в c:\msys\local
Последний релиз Flex (2.5.34) все еще не портирован для Windows.
Bison - парсер-генератор общего пользования, конвертирующий аннотированную контекстно-независимое содержание в LALR(1) или GLR парсер для этого содержания. Bison может использоваться для широкого круга языковых парсеров, начиная с простых для настольных калькуляторов и заканчивая языками программирования.
Загрузите следующие архивы:
Распакуйте в c:\msys\local с перезаписью, если она предлагается.
Последний релиз Bison (2.3) все еще не портирован для Windows.
Zlib - свободно распространяемая библиотека компрессии.
Распакуйте в c:\msys\local\src
Откройте c:\msys\local\src\zlib-1.2.3\win32\Makefile.gcc
Замените строку 102:
# INCLUDE_PATH and LIBRARY_PATH must be set.
на
INCLUDE_PATH=/usr/local/include LIBRARY_PATH=/usr/local/lib SHARED_LIBRARY_PATH=/usr/local/bin
Удалите строки 109-110:
-@if not exist $(INCLUDE_PATH)/nul mkdir $(INCLUDE_PATH) -@if not exist $(LIBRARY_PATH)/nul mkdir $(LIBRARY_PATH)
После строки 111 добавьте:
-$(INSTALL) $(SHAREDLIB) $(SHARED_LIBRARY_PATH)
После строки 118 добавьте:
-$(RM) $(SHARED_LIBRARY_PATH)/$(SHAREDLIB)
Откройте консоль MSYS (используя иконку MSYS десктопа или из меню пуск) и введите:
cd /usr/local/src/zlib-1.2.3 make -f win32/Makefile.gcc
make install -f win32/Makefile.gcc
****ошибки?
$ make install -f win32/Makefile.gcc
/bin/sh.exe: -c: line 2: syntax error: unexpected end of file
make: [install] Error 2 (ignored)
/bin/sh.exe: -c: line 2: syntax error: unexpected end of file
make: [install] Error 2 (ignored)
cp -fp zlib.h /usr/local/include
cp -fp zlib1.dll /usr/local/bin
cp -fp zconf.h /usr/local/include
cp -fp libz.a /usr/local/lib
cp -fp libzdll.a /usr/local/lib
По каким-то причинам информация о zlib1.dll показывает версию 1.2.2.0, хотя на самом деле она 1.2.3.
Libpng - свободно распространяемая библиотека для работы с форматом PNG. Требует наличия zlib.
Загрузите исходный код Libpng
Распакуйте в c:\msys\local\src
Откройте c:\msys\local\src\libpng-1.2.29\scripts\makefile.mingw
После строки 40 добавьте:
prefix=/usr/local
Отредактируйте строки 52-53:
ZLIBLIB=/usr/local/lib ZLIBINC=/usr/local/include
В консоли MSYS введите:
cd /usr/local/src/libpng-1.2.29 cp scripts/makefile.mingw ./Makefile make
Так как эта процедура не срабатывает, нужно провести установку вручную. Простой способ выполнить эту процедуру скопировать следующий набор команд и вставить его в новый текстовый документ, например install-libpng.sh который нужно сохранить в директорию с исходным кодом Libpng; Замет в консоли MSYS нужно выполнить команду: install-libpng.sh
mkdir /usr/local/lib/pkgconfig mkdir /usr/local/man/man3 mkdir /usr/local/man/man5 install -m 644 libpng.a /usr/local/lib install -m 644 libpng.dll.a /usr/local/lib install -s -m 755 libpng12.dll /usr/local/bin install -m 644 libpng.pc /usr/local/lib/pkgconfig install -m 644 pCOMOBJECTS="jcomapi.o jutils.o jerror.o jmemmgr.o jmemnobs.o" CLIBOBJECTS="jcapimin.o jcapistd.o jctrans.o jcparam.o \ jdatadst.o jcinit.o jcmaster.o jcmarker.o jcmainct.o \ jcprepct.o jccoefct.o jccolor.o jcsample.o jchuff.o \ jcphuff.o jcdctmgr.o jfdctfst.o jfdctflt.o jfdctint.o" DLIBOBJECTS="jdapimin.o jdapistd.o jdtrans.o jdatasrc.o \ jdmaster.o jdinput.o jdmarker.o jdhuff.o jdphuff.o \ jdmainct.o jdcoefct.o jdpostct.o jddctmgr.o \ jidctfst.o jidctflt.o jidctint.o jidctred.o \ jdsample.o jdcolor.o jquant1.o jquant2.o jdmerge.o" LIBOBJECTS="$CLIBOBJECTS $DLIBOBJECTS $COMOBJECTS" COBJECTS="cjpeg.o rdppm.o rdgif.o rdtarga.o rdrle.o rdbmp.o rdswitch.o cdjpeg.o" DOBJECTS="djpeg.o wrppm.o wrgif.o wrtarga.o wrrle.o wrbmp.o rdcolmap.o cdjpeg.o" TROBJECTS="jpegtran.o rdswitch.o cdjpeg.o transupp.o" for i in *.exe ; do rm /usr/local/bin/$i ; done rm *.exe cd .libs rm libjpeg.a rm /usr/local/lib/libjpeg.a cd .. gcc -shared -s -o ./.libs/libjpeg.dll -lm -Wl,--out-implib,./.libs/libjpeg.a $LIBOBJECTS gcc -s -g -O2 -o cjpeg.exe $COBJECTS -L./.libs/ -ljpeg gcc -s -g -O2 -o djpeg.exe $DOBJECTS -L./.libs/ -ljpeg gcc -s -g -O2 -o jpegtran.exe $TROBJECTS -L./.libs/ -ljpeg gcc -s -g -O2 -o rdjpgcom.exe rdjpgcom.o -L./.libs/ -ljpeg gcc -s -g -O2 -o wrjpgcom.exe wrjpgcom.o -L./.libs/ -ljpeg cd .libs install libjpeg.a /usr/local/lib install libjpeg.dll /usr/local/bin cd .. for i in *.exe ; do install $i /usr/local/bin ; doneng.h pngconf.h /usr/local/include install -m 644 libpngpf.3 libpng.3 /usr/local/man/man3 install -m 644 png.5 /usr/local/man/man5 cp libpng-config /usr/local/bin chmod 755 /usr/local/bin/libpng-config
Libjpeg - свободно распространяемая библиотека для работы с форматом JPEG, компрессией и распаковкой.
Загрузите исходный код Libjpeg
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/jpeg-6b ./configure --prefix=/usr/local --enable-shared make mkdir /usr/local/man/man1 make install
Так как процедура make не создает библиотеку (даже если она включена с помощью configure), необходимо собрать ее вручную:
Согласно документации MinGW и GCC (Компиляция и сборка в MinGW и Командные опции GCC - Опции для связывания), правильная проценду для сборки разделяемых библиотек (и исполняемых файлов, которые их используют) с помощью MinGW/MSYS должна быть следующей:
Сначала необходимо удалить статическую библиотеку импорта собранную стандартной процедурой make , и все исполняемые файлы связанные со статическими библиеотками. После этого нужно собрать разделяемую библиотеку со связанной статической библиотекой импорта, а затем все исполняемые файлы, которые будут связаны с новой разделяемой библиотекой.
Libtiff - свободно распространяемая библиотека для работы с чтением и записью формата Tag Image File Format (TIFF), включающая набор инструментов.
Загрузите исходный код Libtiff
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/tiff-3.8.2 ./configure --prefix=/usr/local \ --with-zlib-lib-dir=/usr/local/lib \ --with-zlib-include-dir=/usr/local/include \ --with-jpeg-lib-dir=/usr/local/bin \ --with-jpeg-include-dir=/usr/local/include
Библиотека должна быть сконфигурирована следующим образом:
Libtiff is now configured for i686-pc-mingw32 Installation directory: /usr/local Documentation directory: ${prefix}/share/doc/tiff-3.8.2 C compiler: gcc -g -O2 -Wall -W C++ compiler: g++ -g -O2 Enable runtime linker paths: no Support Microsoft Document Imaging: yes Support for internal codecs: CCITT Group 3 & 4 algorithms: yes Macintosh PackBits algorithm: yes LZW algorithm: yes ThunderScan 4-bit RLE algorithm: yes NeXT 2-bit RLE algorithm: yes LogLuv high dynamic range encoding: yes Support for external codecs: ZLIB support: yes Pixar log-format algorithm: yes JPEG support: yes Old JPEG support: no C++ support: yes OpenGL support: no
И наконец сборка:
make
make install
Xdr - библиотека eXternal Data Representation (XDR) включающая процедуры позволяющие создавать код на языке C и создавать процедуры XDR определеяющие другие типы данных. XDR позволяет данные между компьютерами по разному хранящих данные.
Загрузите исходный код Xdr (специальная версия с убранным сетевым кодом)
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/xdr-4.0-mingw2 ./configure --prefix=/usr/local --build=i686-pc-mingw32 make make install
Эту библиотеку необходимо компилировать как статическую, GRASS работает с разделяемой неправильно!
Freetype - библиотека написаная на языке C и реализующая механизм растеризации шрифтов. Она используется для растеризации символов в битмэпы и предоставляет поддержку для других операций со шрифтами.
Загрузите исходный код Freetype
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/freetype-2.3.5 ./configure --prefix=/usr/local make make install
Для завершения установки:
cd /usr/local/include mkdir freetype mkdir ./freetype/config cd ./freetype2/freetype/config mv * /usr/local/include/freetype/config cd .. rmdir config mv * /usr/local/include/freetype cd .. rmdir freetype cd .. rmdir freetype2
Откройте c:\msys\local\lib\pkgconfig\freetype2.pc
Cflags: -I${includedir}/freetype2 -I${includedir}
на
Cflags: -I${includedir}
FFTW - библиотека написаная на языке C и служащая для расчета преобразований Фурье в одном или более измерениях на основе нормальных или комплексных исходных данных.
Загрузите исходный код FFTW
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/fftw-3.1.2 ./configure --prefix=/usr/local \ --disable-fortran \ --with-our-malloc16 \ --enable-shared \ --disable-static \ --enable-threads \ --with-combined-threads \ --enable-portable-binary \ --enable-sse2 make make install
PDCurses - свободная библиотека функций управления окнами для DOS, OS/2, Win32, X11 и SDL, реализующая большинство функций доступных в X/Open и System V R4 и поддерживающая компиляторы для этих платформ.
Загрузите исходный код PDCurses
Распакуйте в c:\msys\local\src
Откройте c:\msys\local\src\PDCurses-3.3\win32\mingwin32.mak
Отредактируйте строку 80 заменив:
-copy pdcurses.a panel.a
на
-cp pdcurses.a panel.acd src for i in *.exe ; do rm /usr/local/bin/$i ; done rm /usr/local/bin/invgeod.exe rm /usr/local/bin/invproj.exe rm *.exe cd .libs rm libproj.a rm /usr/local/lib/libproj.a gcc -shared -s -o libproj.dll -lm -Wl,--out-implib,libproj.a *.o cd .. gcc -s -g -O2 -o cs2cs.exe cs2cs.o gen_cheb.o p_series.o .libs/emess.o -L./.libs/ -lproj gcc -s -g -O2 -o geod.exe geod.o geod_set.o geod_for.o geod_inv.o .libs/emess.o -L./.libs/ -lproj gcc -s -g -O2 -o nad2bin.exe nad2bin.o -L./.libs/ -lproj gcc -s -g -O2 -o nad2nad.exe nad2nad.o .libs/emess.o -L./.libs/ -lproj gcc -s -g -O2 -o proj.exe proj.o gen_cheb.o p_series.o .libs/emess.o -L./.libs/ -lproj cp proj.exe invproj.exe cp geod.exe invgeod.exe cd .libs install libproj.a /usr/local/lib install libproj.dll /usr/local/bin cd .. for i in *.exe ; do install $i /usr/local/bin ; done
В консоли MSYS введите:
cd /usr/local/src/PDCurses-3.3 cd win32 make -f mingwin32.mak DLL=Y all cp pdcurses.a libcurses.a install libcurses.a /usr/local/lib install pdcurses.dll /usr/local/bin cd .. install -m 644 curses.h /usr/local/include
Proj - свободная библиотека и набор инструментов, являющихся де-факто стандартом в области трансформации координат и проекционных преобразований.
Загрузите исходный код PROJ.4
Распакуйте в c:\msys\local\src
Загрузите сетки трансформации датума для США, Канады и Новой Зеландии
Распакуйте в c:\msys\local\src\proj-4.6.0\nad
В консоли MSYS введите:
cd /usr/local/src/proj-4.6.0 ./configure --prefix=/usr/local --enable-shared --disable-static make make install
Так как эта процедура не создает разделяемую библиотеку, несмотря на использование соответствующего параметра configure, необходимо повторить операцию вручную:
GEOS - (Geometry Engine - Open Source) порт на язык C++ пакета топологии Java - Java Topology Suite (JTS). GEOS предоставляет доступ к функциональности JTS с помощью C++. Это включает пространственные функции операторы определенные спецификацией OpenGIS Simple Features для SQL, а также специфические функции работы с топологией JTS.
Загрузите исходный код GEOS
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/geos-3.0.0
./configure --prefix=/usr/local
make
make install
GSL - GNU Scientific Library библиотека математических операций для языков C и C++. Библиотека предоставляет широкий набор математических процедур, таких как генераторы случайных чисел, специальные функции и методы апроксимации. Библиотека включает более 1000 функций и мощный набор тестов.
Загрузите исходный код GSL
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/gsl-1.11
./configure --prefix=/usr/local
make
make install
Expat - библиотека потоковой обработки XML написанная на языке C.
Загрузите исходный код Expat
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/expat-2.0.1
./configure --prefix=/usr/local
make
make install
PostgreSQL - открытая реляционная база данных.
Загрузите исходный код PostgreSQL
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/postgresql-8.3.1
./configure --prefix=/usr/local/pgsql \
--with-includes=/usr/local/include \
--with-libraries=/usr/local/lib \
--without-readline
make
make install
Уже собранные бинарные файлы PostgreSQL для Windows, создают проблемы со сборкой GDAL. Это происходит потому, что версия PostgreSQL для Windows собрана используя Visual Studio, MinGW (а особенно GDAL собранный с MinGW) не может связаться с библиотеками собранными с помощью VS.
SQLite - открытая реляционная база данных SQLite не требующая сервера и конфигурации.
Загрузите исходный код SQLite
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/sqlite-amalgamation-3.5.9
./configure --prefix=/usr/local/sqlite
make
make install
GDAL - библиотека трансляции растровых форматов геоданных, библиотека представляет единую абстрактную модель данных для всех поддерживаемых форматов. Пакет также включает набор полезных консольных утилит.
Так как Quantum GIS необходим GDAL с поддержкой GRASS, нужно сделать следующее:
Сначала выполним пункт 1, соберем и установим GDAL без поддержки GRASS:
Загрузите исходный код GDAL
Распакуйте в c:\msys\local\src
Open c:\msys\local\src\gdal-1.5.2\configure
В строке 23832 замените:
expat_lib_flags="-L$expat_prefix/lib -lexpat"
на
LIBS="$LIBS -L$expat_prefix/lib -lexpat"
В консоли MSYS введите:
cd /usr/local/src/gdal-1.5.2 ./configure
--prefix=/usr/local \
--without-grass \
--with-sqlite3=/usr/local/sqlite \
--with-pg=/usr/local/pgsql/bin/pg_config.exe
После завершения, вы должны увидеть следующий результат:
GDAL is now configured for i686-pc-mingw32 Installation directory: /usr/local C compiler: gcc -g -O2 C++ compiler: g++ -g -O2 LIBTOOL support: yes LIBZ support: internal GRASS support: no CFITSIO support: no PCRaster support: internal NetCDF support: no LIBPNG support: internal LIBTIFF support: internal (BigTIFF=yes) LIBGEOTIFF support: internal LIBJPEG support: internal LIBGIF support: internal OGDI support: no HDF4 support: no HDF5 support: no Kakadu support: no JasPer support: no ECW support: no MrSID support: no GRIB support: no cURL support (wms/wcs/...): no PostgreSQL support: yes MySQL support: no Xerces-C support: no Expat support: yes ODBC support: no PGeo support: no OCI support: no SDE support: no DODS support: no SQLite support: yes DWGdirect support no PANORAMA GIS support: no INFORMIX DataBlade support: no GEOS support: yes Old-gen python no SWIG Bindings: no Statically link PROJ.4: no enable OGR building: yes enable pthread support: no hide internal symbols: no
Откройте c:\msys\local\src\gdal-1.5.2\GNUmakefile
После строки 4 добавьте:
GDAL_ROOT=.Наконец соберите и установите GDAL:
make make install
AVCE00 - свободная библиотека на ANSI-C которая помогает переводить бинарные векторные покрытия Arc/Info в формат E00. Она помогает читать и записывать покрытия как если бы они были файлами E00.
Загрузите исходный код AVCE00
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/avce00-2.0.0
make
install avcexport.exe /usr/local/bin
install avcimport.exe /usr/local/bin
E00compr - свободная библиотека на ANSI-C для чтения и записи файлов E00.
Загрузите исходный код E00compr
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/src/e00compr-1.0.0
make cd /usr/local/src/tk8.5.2/win
./configure --prefix=/usr/local/tcl-tk --with-tcl=/usr/local/src/tcl8.5.2/win --enable-shared
make
make install
cd /usr/local/tcl-tk/bin
mv wish85.exe wish.exe
install e00conv.exe /usr/local/bin
GPSBabel - программное обеспечение для работы с GPS, получением и конвертацией информации.
Загрузите бинарные файлы GPSBabel
Распакуйте в c:\msys\local\gpsbabel
Tcl/Tk - Tool Command Language, мощный но простой в изучении динамический язык программирования, подходящий для широкого спектра задач, включающего веб, настольные приложения, работу с сетью, адинистрацией и тестированием. Tk - набор инструментов для работки графического пользовательского интерфейса. Tk является стандартным GUI для Tcl.
Загрузите исходный код Tcl
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
cd /usr/local/srcd /usr/local/src/grass-6.3.0 ./configure \ --prefix=/usr/local \ --with-includes=/usr/local/include \ --with-libs=/usr/local/lib \ --disable-x11 \ --without-x \ --with-cxx \ --enable-shared \ --enable-largefile \ --with-opengl=windows \ --with-fftw \ --with-freetype \ --with-proj-share=/usr/local/share/proj \ --with-gdal=/usr/local/bin/gdal-config \ --with-tcltk --with-tcltk-includes=/usr/local/tcl-tk/include --with-tcltk-libs=/usr/local/tcl-tk/bin \ --with-sqlite --with-sqlite-includes=/usr/local/sqlite/include --with-sqlite-libs=/usr/local/sqlite/lib \ --with-postgres --with-postgres-includes=/usr/local/pgsql/include --with-postgres-libs=/usr/local/pgsql/libc/tcl8.5.2/win
./configure --prefix=/usr/local/tcl-tk --enable-shared
make
make install
cd /usr/local/tcl-tk/bin
mv tclsh85.exe tclsh.exe
Загрузите исходный код Tk
Распакуйте в c:\msys\local\src
В консоли MSYS введите:
GRASS - одна из самых мощных свободных ГИС.
Загрузите исходный код GRASS
Распакуйте в c:\msys\local\src
Откройте c:\msys\local\src\grass-6.3.0\man\Makefile
В строке 13, замените:
default: $(MANPAGES)
на
default:
В консоли MSYS введите:
После завершения, вы должны увидеть следующий результат:
GRASS is now configured for: i686-pc-mingw32 Source directory: /usr/local/src/grass-6.3.0 Build directory: /usr/local/src/grass-6.3.0 Installation directory: ${prefix}/grass-6.3.0 Startup script in directory: ${exec_prefix}/bin C compiler: gcc -g -O2 C++ compiler: c++ -g -O2 Building shared libraries: yes 64bit support: no OpenGL platform: Windows NVIZ: yes BLAS support: no C++ support: yes DWG support: no FFMPEG support: no FFTW support: yes FreeType support: yes GDAL support: yes GLw support: no JPEG support: yes LAPACK support: no Large File Support (LFS): yes Motif support: no MySQL support: no NLS support: no ODBC support: no OGR support: yes OpenGL support: yes PNG support: yes PostgreSQL support: yes Python support: no Readline support: no SQLite support: yes Tcl/Tk support: yes wxWidgets support: no TIFF support: yes X11 support: no MacOSX application: no
После успешной конфигурации GRASS, теперь можно его собрать:
export PATH="/usr/local/bin:/usr/local/tcl-tk/bin:/usr/local/sqlite/bin:/usr/local/pgsql/lib:$PATH" make
По окончанию, лог компиляции должен выглядеть следующим образом:
GRASS GIS compilation log ------------------------- Started compilation: Mon Jun 16 09:08:19 GMT 2008 -- Errors in: /usr/local/src/grass-6.3.0/raster/r.li/r.li.daemon /usr/local/src/grass-6.3.0/raster/r.li/r.li.edgedensity /usr/local/src/grass-6.3.0/raster/r.li/r.li.patchdensity /usr/local/src/grass-6.3.0/raster/r.li/r.li.patchnum /usr/local/src/grass-6.3.0/raster/r.li/r.li.shape /usr/local/src/grass-6.3.0/raster/r.li/r.li.simpson /usr/local/src/grass-6.3.0/raster/r.li/r.li.shannon /usr/local/src/grass-6.3.0/raster/r.li/r.li.mps /usr/local/src/grass-6.3.0/raster/r.li/r.li.mpa /usr/local/src/grass-6.3.0/raster/r.li/r.li.padcv /usr/local/src/grass-6.3.0/raster/r.li/r.li.padsd /usr/local/src/grass-6.3.0/raster/r.li/r.li.padrange /usr/local/src/grass-6.3.0/raster/r.li/r.li.cwed /usr/local/src/grass-6.3.0/raster/r.li/r.li.richness /usr/local/src/grass-6.3.0/raster/r.li/r.li.dominance -- In case of errors please change into the directory with error and run 'make'. If you get multiple errors, you need to deal with them in the order they appear in the error log. If you get an error building a library, you will also get errors from anything which uses the library. -- Finished compilation: Mon Jun 16 10:11:17 GMT 2008 make: *** [default] Error 1
Лучший способ проверить лог, открыть его c:\msys\local\src\grass-6.3.0\error.log.
Теперь, устанавливаем GRASS:
make install
Теперь GRASS установлен в c:\msys\local\grass-6.3.0
В консоли MSYS введите:
cd /usr/local/src/gdal-1.5.2 ./configure --prefix=/usr/local \ --with-local=/usr/local \ --with-libz=internal \ --with-png=internal \ --with-libtiff=internal \ --with-jpeg=internal \ --with-grass=/usr/local/grass-6.3.0 \ --with-sqlite3=/usr/local/sqlite \ --with-pg=/usr/local/pgsql/bin/pg_config.exe
После завершения, вы должны увидеть следующий результат:
GDAL is now configured for i686-pc-mingw32 Installation directory: /usr/local C compiler: gcc -g -O2 C++ compiler: g++ -g -O2 LIBTOOL support: yes LIBZ support: internal GRASS support: grass57+ CFITSIO support: no PCRaster support: internal NetCDF support: no LIBPNG support: internal LIBTIFF support: internal (BigTIFF=yes) LIBGEOTIFF support: internal LIBJPEG support: internal LIBGIF support: internal OGDI support: no HDF4 support: no HDF5 support: no Kakadu support: no JasPer support: no ECW support: no MrSID support: no GRIB support: no cURL support (wms/wcs/...): no PostgreSQL support: yes MySQL support: no Xerces-C support: no Expat support: yes ODBC support: no PGeo support: no OCI support: no SDE support: no DODS support: no SQLite support: yes DWGdirect support no PANORAMA GIS support: no INFORMIX DataBlade support: no GEOS support: yes Old-gen python no SWIG Bindings: no Statically link PROJ.4: no enable OGR building: yes enable pthread support: no hide internal symbols: no
Теперь соберем и установим GDAL:
make make install
QT - кросс-платформенный пакет разработки для настольных и внедренных приложений. Включает интуитивный API и богатую библиотеку классов для C++, интегрированный инструментарий для разработки графического пользовательского интерфейса и интернационализации, поддерживает разработку на Java и C++.
Загрузите инсталлятор Qt OpenSource
Установите в C:\DevTools\Qt-OpenSource
Когда инсталлятор спросит про MinGW, не нужно его загружать и устанавливать, просто укажите путь c:\msys\mingw
При появлении сообщения "The installer could not found a valid c:\msys\mingw\include\w32api.h", нажмите "Yes" и продолжите.
После установки Qt, отредактируйте C:\DevTools\Qt-OpenSource\bin\qtvars.bat и добавьте следующее:
В строке 8 замените:
echo -- PATH set to C:\DevTools\Qt-OpenSource\bin
на
echo -- Adding MSYS environment directories to PATH
В строке 14 замените:
set PATH=C:\DevTools\Qt-OpenSource\bin
на
set PATH=%PATH%;c:\msys\local\bin;c:\msys\local\sqlite\bin;c:\msys\local\pgsql\lib
Наконец, добавьте путь C:\DevTools\Qt-OpenSource\bin к своей переменной PATH.
Python - объектно-ориентированный язык программирования.
Загрузите инсталлятор Python
Установите в C:\DevTools\Python
Добавьте C:\DevTools\Python к своей системной переменной PATH.
SIP - инструмент, который облегчает процесс создания bindings для библиотек C и C++ для Python.
Загрузите исходный код SIP
Установите в C:\msys\local\src
Откройте консоль Windows и введите:
cd c:\msys\local\src\sip-4.7.7 qtvars python configure.py -p win32-g++ make make install
PyQt - мультиплатформенный набор bindings с пакетом разработки приложений Qt для языка Python.
Загрузите исходный код PyQT
Установите в C:\msys\local\src
Откройте консоль Windows и введите:
cd c:\msys\local\src\PyQt-win-gpl-4.4.3 qtvars python configure.py
Зайдите в c:\msys\local\src\PyQt-win-gpl-4.4.3\QtGui, переименуйте все файлы заменив подстроку названия "sipQtGui" на "sQG". Откройте на редактирование Makefile, произведите такую же замену. Откройте на редактирование QtGui.sbf, произведите такую же замену. Если этого не сделать, в процессе сборки будет выдана ошибка The input line is too long (подробнее).
make make install
CMake - кросс-платформенный система сборки (make).
Загрузите инсталлятор CMake
Запустите инсталлятор CMake и выберите "Add CMake to the system PATH for all users".
Установите в C:\DevTools\CMake
QGIS - динамично развивающаяся свободная настольная ГИС.
Загрузите исходный код QGIS
Распакуйте в C:\msys\local\src
Откройте консоль Windows и введите:
cd c:\msys\local\src\qgis_0.11.0 md build cd build qtvars cmakesetup ..
В утилите CMake Setup выберите "Configure" и, когда спросит, выберите "MinGW Makefiles" как генератор.
CMake Setup предупредит о наличие отсутствующих связанных библиотек, игнорируйте это, нажмите OK и продолжить.
По завершению , выберите "Show Advanced Values".
Для каждого пункта перечисленного ниже, выберите соответствующий пункт в утилите CMake Setup, введите соответствующее значение и нажмите enter (мы осуществим ввод "снизу-вверх", редактируя последние значения в списке CMake Setup первыми):
SQLITE3_LIBRARY = c:/msys/local/sqlite/bin/libsqlite3-0.dll SQLITE3_INCLUDE_DIR = c:/msys/local/sqlite/include POSTGRES_INCLUDE_DIR = c:/msys/local/pgsql/include GRASS_PREFIX = c:/msys/local/grass-6.3.0 CMAKE_INSTALL_PREFIX = c:/msys/local/qgis-0.11.0 CMAKE_CXX_FLAGS = -DGEOS_INLINE CMAKE_BUILD_TYPE = Release
После окончания ввода, нажмите OK.
Наконец, в том же окне консоли введите:
make
make install
Обсудить в форуме Комментариев 5
Последнее обновление: September 09 2021
© GIS-Lab и авторы, 2002-2021. При использовании материалов сайта, ссылка на GIS-Lab и авторов обязательна. Содержание материалов - ответственность авторов. (подробнее).