gpt4 book ai didi

c++ - 无法在Windows上构建PROJ-sqlite3的链接器错误

转载 作者:行者123 更新时间:2023-12-02 10:38:30 25 4
gpt4 key购买 nike

我真正想要的是构建GDal,但这需要PROJ,而这需要SQLite3。在构建时,这些都不是特别用户友好的。 4小时后,我被卡住了。到目前为止,我做了什么:

  • 下载PROJ源代码
  • 下载SQLite sqlite-amalgamation-3290000.zip
  • 下载sqlite-dll-win64-x64-3290000.zip .exe和.dll
  • 在PROJ目录中mkdir buildcd build
  • 使用预设的SQLite路径运行CMAKE:
    cmake -DSQLITE3_INCLUDE_DIR=D:\sqlite3\src -DSQLITE3_LIBRARY=D:\sqlite3\bin\sqlite3.dll ..
  • 然后运行构建: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中没有任何记录。

    最佳答案

    我也遇到了-PROJ文档在Windows部分中显示了Linux信息!

    在适当的MSVC控制台中,从带有sqlite3.dll和sqlite3.def的目录运行:

    lib /def:sqlite3.def

    生成导入库,并将其作为SQLITE3_LIBRARY定义的cmake。

    关于c++ - 无法在Windows上构建PROJ-sqlite3的链接器错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57611051/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com