我真正想要的是构建GDal,但这需要PROJ,需要SQLite3。当涉及到构建时,这些都不是特别用户友好的。4小时后,我卡住了。到目前为止我所做的:
- 下载PROJ源码
- 下载SQLite
sqlite-amalgamation-3290000.zip
源码 - 下载
sqlite-dll-win64-x64-3290000.zip
.exe和.dll文件 - 在PROJ目录
mkdir build
和cd build
中 - 使用SQLite的预设路径运行CMAKE:
cmake -DSQLITE3_INCLUDE_DIR=D:\sqlite3\src -DSQLITE3_LIBRARY=D:\sqlite3\bin\sqlite3.dll ..
- 然后运行build:
cmake --build .
- 编译成功但链接失败
错误:
Building Custom Rule D:/proj-6.1.1/test/unit/CMakeLists.txt
main.cpp
proj_errno_string_test.cpp
Generating Code...
D:\sqlite3\bin\sqlite3.dll : fatal error LNK1107: invalid or corrupt file: cannot read at 0x360 [
D:\proj-6.1.1\build\test\unit\proj_errno_string_test.vcxproj]
我不知道是什么问题。也许.dll
不兼容?也许应该是.lib
?这些都没有在PROJ中记录。
1条答案
按热度按时间tjjdgumg1#
我也碰到了这个问题--PROJ文档在Windows部分显示Linux信息!
从相应MSVC控制台中的sqlite3.dll和sqlite3.def目录中运行:
生成导入库,并将其作为SQLITE3_LIBRARY定义提供给cmake。