【问题标题】:wild errors after loading cURL libraries into Qt5将 cURL 库加载到 Qt5 后出现错误
【发布时间】:2014-07-18 08:14:45
【问题描述】:

我正在使用来自 http://curl.haxx.se/download.html v7.34.0 的 cURL for MinGW64 以及来自 https://github.com/JosephP91/curlcpp 和 Qt 5.2.1 的 cURL 包装器 一旦我在 .pro 中加载库,大量与语法相关的错误就会出现 http://i.imgur.com/dLM68Nd.png 我真的怀疑它与版本有关,但我不知道解决方案。

示例代码部分:

template<class T> class CurlError : public exception {
public:
    CurlError(const string error, const T code) : error(error), code(code) {}
    ~CurlError() throw() {};
    pair<string,T> what() noexcept;
private:
    string error;
    T code;
};

错误输出:

C:\Users\Brad2\Documents\GitHub\curlcpp\include\CurlError.h:25: error: expected ';' at end of member declaration
     pair<string,T> what() noexcept;
                         ^

【问题讨论】:

  • 启用 C++11 -std=c++11
  • @Brandon 如何在 Qt5 中启用 c++11 支持?
  • 那是 MinGW64 的东西吗?我是否要重新编译具有 c++11 支持的 MinGW?
  • 我找到了这个 -> stackoverflow.com/questions/19425482/… 如何检查我的构建是否使用 std::thread ??
  • 我确实尝试使用 Qt5 默认安装中包含的 msvc 库中的 qmake 来查看它们是否有 c++11 但收到了一个不相关的错误i.imgur.com/yTEJzU1.png

标签: c++ qt curl


【解决方案1】:

以下内容来自我在 qt 中的.pro 文件。您需要根据需要替换目录($$PWD 是项目根目录的 qmake 变量,我在名为第三方的文件夹中将 curlcpp 作为 git-submodule)

QMAKE_CXXFLAGS = -std=c++11
QMAKE_LFLAGS = -std=c++11

INCLUDEPATH     += "$$PWD/thirdparty/curlcpp/include/"
LIBS            += -L"$$PWD/thirdparty/curlcpp/build/src/" \
                    -lcurlcpp \
                    -lcurl

【讨论】:

    【解决方案2】:

    我永远无法解决这个问题。我选择了 QNetworkAccessManager 而不是 curl

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2019-12-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-09-17
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多