我想要包含名为URDL的C ++ Libary。我正在使用Boost 1.56使用Clang Compiler在Xcode上开发一个程序。
作为示例项目,我在此处使用此代码,并在我的Xcode项目的设置中包含Boost Libaries-和Include-Paths。
#include <iostream>
#define URDL_HEADER_ONLY 1
#include <boost/array.hpp>
#include <urdl/http.hpp>
#include <urdl/istream.hpp>
int main(int argc, const char * argv[])
{
urdl::istream is;
return 0;
}
然后我编译我得到以下错误:
来自URDL的http.ipp中的
/Users/maximilian/XcodeProjects/Libaries/urdl-0.1/include/urdl/impl/http.ipp:25:23: Exception specification of overriding function is more lax than base version
和来自URDL的handler_invole_helpers.hpp
/usr/local/Cellar/boost/1.56.0/include/boost/asio/detail/handler_invoke_helpers.hpp:37:3: Call to 'asio_handler_invoke' is ambiguous
我的建议是URDL与此版本的Boost(1.56)不兼容。
先谢谢
勒克斯_
PS:我必须使用URDL或至少使用boost :: asio(URDL基于它,但URDL使我的工作更简单)因为它是大学课程的作业。
答案 0 :(得分:3)
问题解决了! :)像以前一样从Github而不是网站think-async.com下载URDL版本。