在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

这篇具有很好参考价值的文章主要介绍了在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

  本文介绍在Visual Studio软件中配置、编译C++环境下GDAL库、SQLite环境与PROJ库的详细方法。

  GDAL库是一个非常方便的地理数据处理库,但其在C++环境下的配置与编译流程较为复杂;尤其是最新的GDAL 3及以上版本,其在C++环境中的配置更是首先需要满足许多其他的环境配置条件(包括SQLite环境、CMake软件与PROJ库),使得其配置变得更复杂一些。本文就详细介绍在Visual Studio软件中,配置GDAL库所需的环境,并最终配置、编译GDAL库的方法。

目录
  • 1 写在前面
  • 2 具体配置
    • 2.1 SQLite配置
    • 2.2 CMake配置
    • 2.3 PROJ配置
      • 2.3.1 方法一
      • 2.3.2 方法二
    • 2.4 GDAL配置
  • 3 配置测试

1 写在前面

  首先,本文是基于Visual Studio 2022软件进行的配置;其中,GDAL库版本为3.5.2SQLite环境版本为3.39.4PROJ库版本为9.1.0。此外,在配置过程中还需要用到跨平台编译工具CMake软件,其版本为3.24.2。如果大家安装的是以上库、环境或软件的其他版本,也可以参考本文,因为整体流程都是近似的;但可能部分操作的细节会稍微有一些差异。

  其次,在编译PROJ库时发现,可能是由于PROJ库最新的9.1.0版本的自身要求,只能编译Release版本的PROJ库;若编译Debug版本则会报错;而同时,SQLite环境、PROJ库与最终的GDAL库需要保持一致(即三者要么都是Release版本,要么都是Debug版本)。因此,本文最终选择了配置Release版本的GDAL库;但最终测试代码时发现,在Visual Studio软件中无论是Release模式还是Debug模式,都可以成功调用配置好的Release版本的GDAL库。所以,本文就主要介绍Release版本的GDAL库的配置方法,但也会在对应流程处注明如果想配置Debug版本的GDAL库,该如何设置。

2 具体配置

  配置GDAL库首先需要准备好PROJ库,而PROJ库的配置则需要准备好SQLite环境与CMake软件(这些似乎是GDAL 3及以上版本才需要的,网上很多GDAL 2版本的配置教程都没有这么麻烦的准备工作);因此我们首先逐一配置好上述这些额外需要的环境或软件。

2.1 SQLite配置

  首先,我们进行SQLite环境的配置。SQLite是一个由C语言撰写的数据库引擎,其为后续需要配置的PROJ库提供了数据支持,同时配置GDAL库也会用到这一环境。

  首先,我们进入SQLite的官方下载网站,并下载“Source Code”中的第一项sqlite-amalgamation-3390400,以及“Precompiled Binaries for Windows”中的第二项sqlite-dll-win64-x64-3390400与第三项sqlite-tools-win32-x86-3390400,一共是三个文件,如下图所示。这里需要注意,随着SQLite版本的更新,上述三个文件名称最后面的一长串数字会随着改变,大家只需要对照好文件名称前面的字样即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,将上述下载好的三个压缩包文件解压到同一个文件夹下(下图是我在配置完SQLite环境之后截的图,因此文件夹的个数与名称和大家的会有一些差异)。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,打开Visual Studio软件,新建一个项目。我这里因为Visual Studio软件原本就是开着的,所以就可以选择“文件”→“新建”→“项目...”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,选择“空项目”,并选择“下一步”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  配置好“项目名称”与“位置”。其中,“项目名称”我在这里配置为MySQLite,“位置”就选择刚刚我们解压缩三个文件的文件夹即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,分别在“头文件”与“源文件”处右键,通过“添加”→“现有项...”的方法,将刚刚解压缩得到文件中的sqlite3.hsqlite3ext.h文件放入“头文件”,并将sqlite3.csqlite3.def文件放入“源文件”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  完成后如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,选中项目名称MySQLite,并选择“属性”→“配置属性”→“常规”,选择“配置类型”,将其选择为静态库(.lib),并在上方的“配置”与“平台”中将二者选择为“所有配置”与“所有平台”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在“C/C++”→“预处理器”中,设置“预处理器定义”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在其中复制如下代码即可。

_USRDLL
SQLITE_ENABLE_RTREE
SQLITE_ENABLE_COLUMN_METADATA
SQLITE_ENABLE_FTS5
SQLITE_ENABLE_UNLOCK_NOTIFY

  复制后如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在“链接器”→“输入”中配置“模块定义文件”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  找到刚刚解压缩得到的sqlite3.def文件,按下Shift按钮并右键,选择“复制文件地址”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  并将其粘贴至“模块定义文件”中。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在Visual Studio软件中,打开sqlite3.def文件,在其最后一行添加如下的代码。

sqlite3_unlock_notify

  如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在上图最上方的红色方框处,将原来的Debug修改为Release,如下图所示;表示我们接下来将配置Release版本的SQLite环境。如果大家需要Debug版本,那么这里就还是保持选中Debug即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,选中项目名称,并右键选择“生成”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,Visual Studio软件将生成项目。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  此时,在前面提到的SQLite环境所下载的三个压缩包文件解压后所存放的文件夹中,我们新建三个文件夹,分别命名为includelibbin

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,首先在刚刚生成的项目的x64\Release文件夹中,找到MySQLite.lib文件。这里如果大家刚刚生成的是Debug版本的项目,那么就是在Debug文件夹中。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,将其复制到刚刚新建的lib文件夹中。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,将sqlite-amalgamation-3390400文件夹中的sqlite3.hsqlite3ext.h文件复制。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  将其粘贴至刚刚新建立的include文件夹中。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,将sqlite-tools-win32-x86-3390400文件夹中的sqlite.exe文件复制。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  粘贴至刚刚新建立的bin文件夹中。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  以上,即完成了SQLite环境的配置。

2.2 CMake配置

  接下来,我们开始对CMake软件进行配置。CMake软件是一个跨平台的编译软件,在后期进行PROJ库配置时需要用到。

  首先,我们还是在其官方下载网站进行软件的下载。这里我们下载其“Binary distributions”中的第一项即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  下载完毕后,可以看到其安装包。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  双击安装包,进行软件的安装即可。这里需要注意,安装过程中,在以下窗口中我们需要选择第三项,并勾选中最下方的勾选项,如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  以上,即完成了CMake软件的配置。

2.3 PROJ配置

  接下来,我们开始PROJ库的配置。PROJ库是一个地理坐标转换库,用以处理不同的地理坐标数据;因为我们要安装的GDAL库是一个地理数据处理库,因此其固然需要PROJ这一地理坐标转换库来完成各项地理数据操作。

  PROJ库的配置有两种方法——第一种是传统方法,即用库的源代码来进行编译;第二种是PROJ库官网比较推荐的新方法,即用OSGeo4W软件来进行PROJ库的下载与编译。尽管PROJ库官网目前推荐用第二种方法来配置,但是我一直没有找到第二种方法配置PROJ库完毕后其所生成的数据文件,导致没有办法进行后续GDAL库的配置;另一方面,若采用第二种方法,OSGeo4W软件在下载PROJ库时经常会出现网络问题导致的下载终止,且想要再下载还只能重新开始,非常耽误时间。因此,我个人还是建议大家用第一种方法(也就是下文中的方法一)来实现;虽然这种方法操作起来比较麻烦,但至少比较稳定,而且可以保证后续GDAL库的配置是可以实现的。同时,本文也将并不推荐的第二种方法的操作流程介绍一下,如果大家感兴趣可以研究一下第二种方法。

2.3.1 方法一

  首先,我们在PROJ库的官方下载网站中下载其源代码。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在官网,我们还可以看到官方将这种从源代码编译的方法称作“传统方法”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,将下载后的压缩包解压,并在解压后得到的文件夹中新建立一个build文件夹。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,打开我们刚刚下载、安装好的CMake软件,并在下图所示的两个编辑栏中,分别选定解压后的PROJ库文件夹与我们刚刚在其中新建的build文件夹;随后,点击“Configue”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,在弹出的窗口中配置我们的Visual Studio软件版本,并在第二个选项中选择处理器的架构,一般选择x64即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随即,CMake软件开始运行第一次配置。稍等片刻,一般会出现满屏幕的红色,如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  其中,我们需要修改一下上图中蓝色方框内的五条数据。首先,我们在解压后的PROJ库文件夹中,新建GTest文件夹。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  并将其作为GTest_DIR后所对应的数据。

  接下来,在CMAKE_INSTALL_PREFIX中,配置一个我们后期将要存放PROJ库的路径;接下来的三个数据,我们分别选择前面配置SQLite环境时,所得到的bin文件夹中的sqlite3.exe文件、include文件夹与MySQLite.lib文件的路径。具体配置如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,再点击一次“Configue”。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  稍等片刻,待其配置完成后,再点击“Generate”;如上图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  待其生成完毕后,我们可以在刚刚解压后的PROJ库文件夹中新建的build文件夹中,看到如下所示的.sln文件。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,在开始菜单中找到位于Visual Studio 2022软件下的“x64 Native Tools Command Prompt for VS 2022”软件。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  首先,cd进入PROJ库文件夹中刚刚新建的build文件夹。这里大家依据刚刚自己设定的文件夹路径来cd进入即可。

cd C:\proj-9.1.0\build

  接下来,输入如下的代码,并回车运行。

msbuild ALL_BUILD.vcxproj /p:Configuration="Release"

  其中,上述代码中="Release"表示我们将编译Release版本的PROJ库;如果大家需要编译Debug版本的库,则将其修改为="Debug"即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  这里我们提一句,本文开头之所以说最终只能编译Release版本的PROJ库,是因为一旦前面的代码我们选择编译Debug版本,则其运行后会报错,出现如下所示的情况。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  其中,这里不同的错误,都表明我们目前只能配置Release版本的PROJ库。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  因此,我在这里最终选择编译Release版本的PROJ库。虽然选择编译Release版本的PROJ库在这里也会有警告出现,但这并不影响最后的结果。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,我们继续输入如下所示的代码。

msbuild INSTALL.vcxproj /p:Configuration="Release"

  其中,如果我们需要编译Debug版本的库,则将其修改为="Debug"即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  运行代码,得到结果如下。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  此时,前面提到我们在CMake软件中设置了CMAKE_INSTALL_PREFIX所对应的文件夹路径。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在这个路径中,此时我们可以看到其已经自动生成了binincludelibshare等四个文件夹。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  以上,即完成了PROJ库的配置。

2.3.2 方法二

  这里我们介绍一下PROJ库的第二种配置方法。但前面我们也提到,并不推荐这种方法,大家如果有需要参考一下即可。如果前面已经通过方法一实现了PROJ库的配置,那么直接跳过这里,继续阅读本文2.4部分即可。

  首先,我们按照官方所给出的OSGeo4W软件下载路径,进行OSGeo4W软件的下载。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  或者也可以直接从这里进行下载:https://download.osgeo.org/osgeo4w/osgeo4w-setup.exe 。

  接下来,进行软件安装的过程中,在下图所示的界面中选择第二个选项。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在下图所示的界面中,选择第一个选项。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在下图所示的界面中,进行如下的配置。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在下图所示的界面中,进行如下的配置。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在下图所示的界面中,进行如下的配置。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  在下图所示的界面中,进行如下的配置。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,在下图所示的界面中,首先找到第一个选项。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  将其展开后,找到带有proj字样的那一行。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  这里要注意,只要确保带有proj字样的那一行的New列中,出现库的版本号即可,其他行的这一列都是显示为Skip即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,如果出现下图所示的提示,按照其推荐设置进行配置即可。当然,如果我们前面选择了只下载PROJ库的话一般并不会出现这个提示;如果下载时选中的库比较多,则可能会出现这个。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,即可开始下载。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  稍等片刻,将下载完毕。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  到这里,PROJ库的官网就说完成了这一库的配置。但是通过这样的方法,我一直没有办法找到库对应的数据文件或其路径(比如前述libbininclude文件夹等的路径)。所以最终还是选择用方法一来实现PROJ库的配置了。

2.4 GDAL配置

  完成了以上所有的操作,终于可以开始GDAL库的配置了。

  首先,依然是在其官方下载网站中进行源代码的下载。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,将下载得到的压缩包文件解压。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,找到其中的nmake.opt文件,并用Visual Studio软件打开。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,在其42行左右(具体行数可能会随着GDAL库版本的不同而不同)的位置,将等号后的数字修改为自己Visual Studio软件的_MSC_VER值。如果大家不知道自己Visual Studio软件的这一个值是多少,可以参考文章获取Visual Studio所用MSVC编译器版本:_MSC_VER数值。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在66行左右的位置,将这一路径设置为自己希望编译后GDAL库存放的路径。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,在130行左右的位置,如果大家需要编译的是Debug版本的GDAL库,则将等号后的数字修改为1即可;我们这里需要编译的是Release版本的GDAL库,就不用修改。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,在213行左右的位置,如果我们的电脑是64位的Windows系统,就将这一行的注释取消掉即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在245行左右的位置,如果需要动态编译就不用修改,如果需要静态编译就将等号后的数字修改为0。一般我们选择静态编译即可,因此将其修改为0

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  接下来,在265行左右,需要我们配置PROJ库的一些路径。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  其中,第一个路径是前面我们在CMake软件中设置了CMAKE_INSTALL_PREFIX所对应的文件夹路径下,include文件夹的路径;第二个路径是这一文件夹中,lib文件夹中proj.lib文件的路径。如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  这两行配置完毕,如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  最后,在638行左右,需要我们配置SQLite环境的一些路径。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  其中,这里所涉及的文件夹,是前面提到的SQLite环境所下载的三个压缩包文件解压后所存放的文件夹中,我们新建的、分别命名为includelibbin的那三个文件夹。其中,将include文件夹的路径放在第一个位置,将lib文件夹中的MySQLite.lib文件的路径放在第二个位置。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  配置完毕后,如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,保存当前nmake.opt文件,并再一次打开“x64 Native Tools Command Prompt for VS 2022”软件,cd进入刚刚解压得到的GDAL库文件夹(也就是nmake.opt文件所在的那个文件夹,这一文件夹下还有一个名为makefile.vc的文件,如下图所示)。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,对于我们需要的Release版本,输入如下代码并运行。

nmake /f makefile.vc

  运行后得到如下图所示的结果。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,输入如下所示的代码并运行。

nmake /f makefile.vc devinstall

  运行后得到如下图所示的结果。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  如果需要的是Debug版本的GDAL库,那么不用输入以上两句代码,直接分别输入并运行以下三句代码即可。

nmake /f makefile.vc WIN64=YES DEBUG=1
nmake /f makefile.vc install
nmake /f makefile.vc devinstall

  此时,在我们刚刚于nmake.opt文件66行左右处所设定的GDAL库存放路径(如下图所示)中,可以看到已经自动生成了相关的文件夹,如下下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  以上,即完成了GDAL库的配置。

3 配置测试

  接下来,我们需要检查一下GDAL库是否可以使用。

  我们在Visual Studio软件中新建一个项目,并写一段需要调用GDAL库的代码;本文就用下面这个很简单的一段代码来验证GDAL库是否可用。

#include <iostream>
#include <gdal.h>
#include <gdal_priv.h>
using namespace std;

int main() {
	GDALDataset* poDataset;
	GDALAllRegister();
	poDataset = (GDALDataset*)GDALOpen("pic.tif", GA_ReadOnly);
	if (poDataset == NULL)
	{
		cout << "找不到文件,但说明GDAL可以用了";
	}
	return 0;
}

  其中需要注意,如果我们需要调用GDAL库,就需要在代码开头通过以下代码引入相关的头文件。

#include <gdal.h>
#include <gdal_priv.h>

  随后,首先按照文章如何在Visual Studio新C++项目中调用之前配置过的库?中提到的方法,在Visual Studio软件中配置好相应的属性设置。

  接下来,将刚刚于nmake.opt文件66行左右处所设定的GDAL库存放路径中的bin文件夹,与PROJ库配置好后在其指定文件夹(即CMake软件中设置了CMAKE_INSTALL_PREFIX所对应的文件夹)中生成的share文件夹,分别放于系统变量的PATH中;具体方法可以参考文章Windows电脑环境变量(用户变量、系统变量)的修改。

  配置好后如下图最后两行所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  这里如果不配置环境变量的话,在运行调用GDAL库的代码时,会出现如下图所示的错误或类似错误。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  完成以上操作后,运行代码。此时,有可能出现找不到proj_9_1.dll文件的错误;如下图所示。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  针对这一情况,我们只需要将编译好后的PROJ库中的这一文件复制。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  并粘贴至当前调用GDAL库的项目的文件夹中即可。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  随后,运行程序,即可成功调用GDAL库。

在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)

  至此,大功告成~文章来源地址https://www.toymoban.com/news/detail-825007.html

到了这里,关于在Visual Studio中部署GDAL库的C++版本(包括SQLite、PROJ等依赖)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Visual Studio部署C++矩阵库Armadillo的方法

      本文介绍在 Visual Studio 软件中配置 C++ 环境下线性代数运算库 Armadillo 的方法。   首先,我们需要在 Armadillo 库官网下载其源代码,直接点击下图所示红色框内部分即可。   点击上图所示位置后,将弹出一个新的下载界面; Armadillo 库的源代码将随后自动下载。   

    2024年02月19日
    浏览(37)
  • Window中,Visual Studio 2022(C++)环境下安装OpenCV教程(不用Cmake版本)

    本教程主要为了方便小白安装C++版本的OpenCV。 1. 第一步:下载官方OpenCV 下载后,在本地安装即可,注意记住安装路径,后续需要! 2. 配置系统环境变量,Path中,新增变量。即opencv安装的路径,选到opencv中build/x64/vc15/bin 3. 安装visual studio 2022,官网 直接,按照C++配置安装即可

    2024年02月11日
    浏览(63)
  • Visual Studio 2022 17.5.0版本 c++ 存在太多错误,IntelliSense引擎无法正常运行

    Visual Studio 2022 17.5.0版本由于boost或者其它第三方库导致IntelliSense无法使用,临时解决方案:/Zc:preprocessor 微软已注意到该问题,原帖子:IntelliSense 报告了许多提升库的错误 - Visual Studio 反馈

    2024年02月11日
    浏览(57)
  • Visual studio代码提示(IntelliSense)的语言(包括汉化等)修改

    https://learn.microsoft.com/zh-cn/dotnet/core/install/localized-intellisense .net 之前的安装微软官方文档很详细 图文操作可参照 https://blog.csdn.net/weixin_44442366/article/details/125783336 脚本来源于 https://github.com/stratosblue/IntelliSenseLocalizer 中文说明 https://github.com/stratosblue/IntelliSenseLocalizer/blob/main/READ

    2024年02月07日
    浏览(39)
  • Visual Studio安装及无法打开包括文件: “crtdbg.h”问题解决

    目录 第一部分: Visual Studio安装参考文章 第二部分: Visual Studio无法打开包括文件: “crtdbg.h”问题解决参考文章 https://blog.csdn.net/ccSnown/article/details/120464479 https://blog.csdn.net/ccSnown/article/details/120464479 https://blog.csdn.net/yanchenyu365/article/details/122165277 https://blog.csdn.net/yanchenyu365/ar

    2024年02月05日
    浏览(58)
  • Android Studio App开发中数据库SQLite的解析及实战使用(包括创建数据库,增删改查,记住密码等 附源码必看)

    运行有问题或需要源码请点赞关注收藏后评论区留言~~~ SQLite是一种小巧的嵌入式数据库,使用方便,开发简单,如同mysql,oracle那样,SQLite也采用SQL语句管理数据,由于它属于轻型数据库,不涉及复杂的数据控制操作,因此App开发只用到数据定义和数据操纵两类SQL。 1:数据

    2024年02月03日
    浏览(86)
  • 【Visual Studio】无法打开包括文件: “dirent.h”: No such file or directory

    VS2017/2019 无法打开包括文件: “dirent.h”: No such file or directory 1 “dirent.h”: No such file or directory 在windows下的VS2017/2019编译器中,发现无法打开“dirent.h”,主要是MSVC并没有实现这个头文件,但是在Linux这个头文件肯定是有的。为此,有人已经写出了WIndows下可用的 “dirent.h”。

    2024年02月15日
    浏览(50)
  • visual studio编译出的exe执行时找不到vcrunime140d.dll库的解决办法

    有visual studio环境是不会出现这个异常的(我换电脑试过了),没有这个环境的,把vs的dll复制进C:WindowsSysWOW64的路径,会报新的异常。如果继续复制解决新异常 最后出现了这个报错 这个dll我自己库里都没有(当然可能路径没有找对),所以不推荐硬来,对用户体验很不友好

    2024年02月13日
    浏览(47)
  • 【Visual Studio 新手入门指导】包括项目创建、常用快捷键、美化、项目启动、添加文件等多种基础操作,图文详细,准确无误

    本文来自于作者在Visual Studio的使用过程中自己积累经验的总结,主要介绍一些比较实用的技巧,适合新手入门使用。 内容追求细致、有用、基础。 VS的每次运行的是一个一个的项目 (如果有多个项目,则每次执行选定启动项目,后文有所介绍),但是不同项目在一起构成一

    2024年02月08日
    浏览(59)
  • Visual Studio的各个历史版本下载

    最新版下载地址: https://visualstudio.microsoft.com/zh-hans/?rr=https://www.microsoft.com/zh-cn/ 或者 https://visualstudio.microsoft.com/zh-hans/ https://docs.microsoft.com/zh-cn/visualstudio/productinfo/vs-roadmap

    2024年04月14日
    浏览(46)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包