在MS Visual Studio 2008下编译QGIS1.0.2
1. 下载并安装所需的第三方组件 1.1 Flex 和 Bison Flex 和 Bison 是安装 Grass 和 QGIS 必须的程序。 * 注意:这两个工具在安装时,安装目录不要有空格,否则在编译 QGIS 时找不到这两个文件。 1.2 PostSQL (略) 1.3 QT 的安装 可以直接选择默认安装。 1.
1. 下载并安装所需的第三方组件
1.1 Flex 和 Bison
Flex 和 Bison是安装Grass和QGIS必须的程序。
*注意:这两个工具在安装时,安装目录不要有空格,否则在编译QGIS时找不到这两个文件。
1.2 PostSQL(略)
1.3 QT的安装
可以直接选择默认安装。
1.4 Proj.4
(1)从Proj.4官方网站上下载最新的版本,解压缩到某个文件夹。
(2)使用Visual Studio 2008 command,定位到Proj.4的加压缩文件下,输入下面的命令进行编译:nmake –f makefile.vc MSVC_VER=1500 (对于MSVC_VER值的设定,可以参考nmake.opt文件里的注释)
(3)输入以下命令,将生成Proj.4的bin, include和lib目录,并将相应的文件放到各个目录下:
set PROJ_DIR=c:/lib/proj
mkdir %PROJ_DIR%/bin
mkdir %PROJ_DIR%/include
mkdir %PROJ_DIR%/lib
copy src/*.dll %PROJ_DIR%/bin
copy src/*.exe %PROJ_DIR%/bin
copy src/*.h %PROJ_DIR%/include
copysrc/*.lib %PROJ_DIR%/lib
1.5 GSL
获得GSL源码,直接编译gsl.sln文件(如果是较早版本,直接用VS2008打开即可)
1.6 GEOS
(1)获得最新版本的GEOS,(本文使用的是geos-3.1.0),使用Visual Studio 2008 command,定位到Proj.4的加压缩文件下,输入下面的命令进行编译:
nmake –f makefile.vc MSVC_VER=1500
*注意:对于MSVC_VER值的设定,可以参考nmake.opt文件里的注释
(2) GEOS 的bin, include和lib目录,及其相应文件的生成参考Proj.4的生成方法
1.7 GDAL的编译
参考CSDN上blog的说明。
1.8 PostGIS(略未支持)
1.9 Expat
下载expat-win32bin-2.0.1.exe(或更高版本),安装。*注意,安装目录名也不应该包含空格。
1.10 CMake
下载最新版本的CMake-win32.exe,安装。
2. 用CMake-gui编译QGIS程序。
设置Source Code为QGIS源文件的路径,已经要生成编译文件的路径;然后,设置以上所需的工具的LIB和INCLUDE路径,点击Configuration后,点击Generate,生成qgis1.0.2.sln文件,编译该文件,即可获得.lib和.dll文件。参考QGIS1.0.2安装版的安装后目录信息,制作我们自己的bin, include, lib和plugins目录(方法是,拷贝QGIS1.0.2安装版include文件夹生成include目录;拷贝我们生成的qgis_core.dll、qgis_gui.dll构建Bin目录—可以将sqlite3.dll, gdal16.dll一并拷到Bin目录下;到编译生成的src目录下,选择”文件搜索”工具,输入”*.dll”,选出生成providers和Plugins,拷贝到plugins目录下)。
注意事项:
(1)根据情况选择是否允许以下工具一起编译:
WITH_BINDINGS-------- Python
WITH_GRASS-------------Grass
WITH_INTERNAL_SQLITE3-----是否使用QGIS源文件提供的Sqlite3,在此要取消该项的选择,设置自己下载的最新版本的Sqlite3源文件,编译生成.dll和.lib 文件。否则编译生成的QGIS的lib库对Sqlite3的使用会报错(可能是QGIS源文件的Sqlite3有问题)。
WITH_POSTGRESQL---Postgresql
(2)GDAL的LIBRARY要使用gdal_i.lib文件,这是一个动态链接库文件(本人也不太懂),
Proj的LIBRARY也应该如此。我在编译时使用的是proj.lib文件,目前还没遇到什么错误,等下次重新编译时我尝试以下。
3. QGIS的使用例子
在使用QGIS时,要注意加上
#define CORE_EXPROT
#define GUI_EXPROT

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

AI Hentai Generator
AI Hentai를 무료로 생성하십시오.

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

뜨거운 주제











C++로 프로그래밍할 때 선언되지 않은 식별자 문제에 자주 직면합니다. 이는 일반적으로 정의되지 않은 변수, 함수 또는 클래스를 사용할 때 발생하며, 이로 인해 컴파일러가 이러한 식별자를 인식하지 못해 컴파일 오류가 발생합니다. 이 문서에서는 선언되지 않은 식별자 문제의 일반적인 원인과 해결 방법을 설명합니다. 일반적인 원인 선언되지 않은 식별자 문제는 일반적으로 다음과 같은 이유로 발생합니다. 변수, 함수 또는 클래스가 올바르게 선언되지 않았습니다. 변수, 함수 또는 클래스를 사용하기 전에 선언해야 합니다. 변수가 선언되지 않았거나 함수에 포함되지 않은 경우

Windows 11에는 더 많은 macOS 스타일 UI 요소가 도입되었습니다. 중앙에 시작 메뉴가 있는 새롭게 디자인된 작업 표시줄이 나타납니다. 예, 위치를 변경할 수 있지만 기본적으로 중앙에 배치됩니다. 제어 센터에도 일부 디자인이 변경되었습니다. 다음 업데이트에서는 새롭게 디자인된 메모장 및 미디어 플레이어와 함께 Android 앱에 대한 지원도 제공될 예정입니다. 이러한 모든 기능으로 인해 Windows 11은 Windows 10에 비해 훌륭한 업그레이드가 되었지만 사용자의 마음 속에는 어떤 의구심이 생기고 있습니다. Windows 11이 레거시 응용 프로그램과 기술을 지원할지, 뒤처져 있는지 여부에 대해 우려하는 사용자와 개발자 부문이 있습니다. 뷔 이후

VCRUNTIME140.dllismissing 오류는 Windows의 Visual C++ 재배포 가능 파일에 문제가 있습니다. 이 튜토리얼을 사용하여 문제를 해결할 수 있습니다. Windows 응용 프로그램과 소프트웨어를 실행하려면 DLL 파일이 필요합니다. DLL 파일이 없으면 완전히 작동이 중지될 수 있습니다. 예를 들어 VCRUNTIME140.dllismissing 오류가 표시되면 PC에 이 파일이 없어 애플리케이션이 실행되지 않는다는 의미입니다. 이는 응용 프로그램 설치가 실패했기 때문일 수 있습니다. Windows 업데이트를 실행한 후에도 나타날 수 있습니다. 다행히도 쉽게 할 수 있어요

이유: 1. Linux에는 여러 버전이 있지만 각 버전마다 다른 소프트웨어나 커널 버전을 사용하고, 바이너리 패키지가 의존하는 환경이 반드시 정상적으로 실행되지 않을 수 있으므로 대부분의 소프트웨어는 컴파일 및 설치를 위한 소스 코드를 직접 제공합니다. 2. 다양한 요구 사항을 충족하도록 쉽게 사용자 정의할 수 있습니다. 3. 운영 및 유지관리가 편리하고, 개발자 유지관리가 편리합니다. 소스코드를 바이너리로 패키징할 수 있지만, 이 소프트웨어를 패키징하려면 유지관리를 포함한 비용이 많이 드는 추가 작업이 필요하므로 소스코드인 경우 소프트웨어 제조업체가 직접 유지관리합니다. .

최근 몇 년 동안 Go 언어는 점점 더 많은 개발자의 선택이 되었습니다. 그러나 다른 프로그래밍 언어에 비해 Go 언어의 컴파일 속도는 충분히 빠르지 않습니다. 많은 개발자들이 Go 프로그램을 컴파일할 때 다음과 같은 문제에 직면하게 됩니다. Go 프로그램을 컴파일하는 데 시간이 더 오래 걸리는 이유는 무엇입니까? 이 기사에서는 이 문제를 여러 측면에서 살펴볼 것입니다. Go 언어의 컴파일러 아키텍처 Go 언어의 컴파일러 아키텍처는 프론트엔드, 미들 레이어, 백엔드의 3단계 설계를 채택합니다. 프론트 엔드는 소스 코드를 Go 언어의 중간 코드로 변환하는 역할을 담당하며 중간 계층은

Java는 다양한 유형의 소프트웨어를 개발하는 데 널리 사용되는 매우 인기 있는 프로그래밍 언어입니다. Java 개발에서 컴파일과 디컴파일 기술은 매우 중요한 연결고리입니다. 컴파일 기술은 Java 코드를 실행 파일로 변환하는 데 사용되는 반면, 디컴파일 기술은 실행 파일을 다시 Java 코드로 변환하는 데 사용됩니다. 이 기사에서는 Java의 컴파일 및 디컴파일 기술을 소개합니다. 1. 컴파일 기술 컴파일은 자바와 같은 고급 언어 코드를 기계어로 변환하는 과정이다. 자바에서

너무 많은 사용자가 응용 프로그램을 실행하려고 할 때마다 CONCRT140.dll을 찾을 수 없기 때문에 코드 실행을 계속할 수 없다는 오류 메시지가 발생한다고 보고했습니다. Adobe 응용 프로그램, Halo, ForzaHorizon5 등을 열 때 CONCRT140.dll을 찾을 수 없는 경우가 있습니다. 따라서 이는 응용 프로그램별 문제가 아닙니다. 올바른 DLL을 설치하지 않으면 해당 코드가 이러한 라이브러리에 작성된 코드에 의존하기 때문에 애플리케이션이 제대로 작동하지 않습니다. 이 기사에서는 CONCRT140.dll이 무엇인지, 왜 누락되었는지, 다운로드하고 오류를 수정하는 방법에 대해 알아봅니다. 무엇인가요

Microsoft Visual C++는 가장 일반적인 응용 프로그램을 실행하는 데 필요한 Windows 운영 체제의 필수적인 부분이 되었습니다. 이제 일부 사용자는 최근 2015용 Visual C++ 재배포 가능 패키지 또는 2013용 Microsoft Visual Studio 재배포 가능 패키지를 설치하는 동안 발생한 문제에 대해 불만을 제기했습니다. 이러한 사용자에 따르면 설치 프로그램이 중간에 중지되고 "0x80240017 - 지정되지 않은 오류"가 표시되었다고 합니다. 이 오류에는 여러 가지 이유가 있을 수 있습니다. 그러니 이러지 마세요
