【问题标题】:Linking netcdf library with Qt将 netcdf 库与 Qt 链接
【发布时间】:2014-07-17 11:39:54
【问题描述】:

我有一个从 Unidata 网站下载的 netcdf 库的预构建版本, 现在我正在尝试将此库链接到 Qt 5,以便在我的 Qt 项目中使用它。所以我在互联网上寻找了一些解决方案,我发现我应该将这些行添加到我的 Project.pro 中:

LIBS += -LC:/netcdf/lib -lnetcdf

INCLUDEPATH += C:/netcdf/include

但是运行项目后,它不起作用,所以我用调试器重新运行它,它显示了这个消息框
(titled "executable Failed") : During startup program exited with code 0xc0000135

请帮忙!

【问题讨论】:

    标签: qt dll netcdf


    【解决方案1】:

    预建库是使用 Microsoft Visual Studio 构建的。我记得,Qt SDK 在 Windows 上使用的 C/C++ 编译器是 gcc 的mingw-variant。我不确定预构建的 netcdf 库是否与 mingw 运行时兼容,但无论如何混合 C 运行时通常不是一个好主意。

    我假设您使用的是Qt Creator;如果是这样,那么自己编译 netcdf-c 库可能比您想象的要容易。因为netcdf-c项目使用CMake,所以可以在Qt Creator中将其作为项目打开。

    先决条件

    您将需要以下物品:

    NetCDF 依赖项

    请注意,您需要先安装以下依赖项,具体取决于您希望从 netcdf 库中获得的功能。

    • NetCDF4 支持需要 libhdf5 和 libhdf5_hl,两者均由 hdf5 软件包提供,可从 http://www.hdfgroup.org 获得。
    • DAP 支持需要libcurl。 Google 应该能够帮助您找到这一点。

    如果您不需要这些功能,直接安装netcdf-classic 即可。

    在 Qt Creator 中将 netcdf-c 作为项目打开

    1. 启动 Qt Creator
    2. 转到文件->打开项目
    3. 导航到netcdf-c 源目录并打开CMakeLists.txt 文件。

    这会将 netcdf 源代码加载为 Qt Creator 中的新项目。此时,编译 netcdf 并将其安装在系统上的某个位置以与您的项目一起使用应该非常简单。

    不正确的假设

    如果我对您使用Qt Creator 的假设是错误的,这仍然可以通过命令行进行;然而,它会涉及更多一点。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-02-01
      • 1970-01-01
      • 2016-05-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多