2016-01-12 3 views
0

Так что мой текущий код, который я пытаюсь скомпилировать:Повысьте Network Library не распознается на MAC OSX

#include <boost/network/protocol/http/client.hpp> 

int main() 
{ 
    boost::network::http::client client; 

    boost::network::http::client::request request("http://www.example.com"); 
    request << boost::network::header("Connection", "close"); 
    boost::network::http::client::response response = client.get(request); 

    std::cout << body(response); 

    return 0; 
} 

Всего код заготовленного от [этого поста] (How can I fetch data from a website inside a C++ program). Поэтому я попытался запустить эту вещь сам по себе с несколькими различными сценариями, но никто не работал. Вот некоторые из сценариев, которые я пробовал:

g++ -I. -I$BOOST_ROOT -L$BOOST_ROOT/stage/lib -lboost_system 
g++ -I. -I/usr/local/include/boost -lboost_thread -lboost_system 
-lcppnetlib -client -connections -lcppnetlib -server -parsers 
-lcppnetlib -uri -pthread main.cpp 
./a.out 

Я также пробовал:

g++ -I. -I$BOOST_ROOT -L$BOOST_ROOT/stage/lib -lboost_system -pthread main.cpp 

А также пытались:

g++ -I. -I/usr/local/Cellar/boost/1.59.0/include/boost -L/usr/local/Cellar/boost/1.59.0/lib -lboost_system pthread main.cpp 

Но я заметил, прочитав еще несколько постов, -I используется для обозначения файлов заголовков для повышения в их корневом каталоге, а -L используется для поиска библиотек для корневого каталога boost. Поэтому я не уверен точно, что я загрузил, потому что у меня теперь есть 2 копии, и я не уверен, работает ли какой-либо из них, и я стараюсь, чтобы каждая комбинация попыталась запустить эту вещь. По-видимому, у меня есть несколько копий сидения, которые сидят повсюду. Так/USR/местные/Cellar каталог содержит и до даты те ..

/usr/local/Cellar/boost/1.59.0/include/boost

/USR/местный/Подвал/усиление/1.59.0/включать/Библиотека

Кроме того,/USR/местные/хранит как ..

/USR/местные/я NCLUDE/повышение/

/USR/местные/Библиотека

И снова

/USR/местные/Opt/импульс/включить

/USR/local/opt/boost/include/lib

Имеет ли с несколькими c опия нарушают этот процесс или что-то еще? Я так растерялся.

Это моя структура каталогов:
directory structure

Так мой я пытался выяснить это, и я просто озадачен .. Я не очень хорошо с помощью сценариев (только недавно узнал, большинство из них от этого вопроса) , и я просто не знаю, как скомпилировать эту вещь. Любая помощь в любом случае, форма или форма не оценена. Заранее благодарим любого, кто помогает.

+0

Независимо от того, какую библиотеку вы используете, это, безусловно, _not_ часть Boost ... – ildjarn

+0

Такое большое понимание. Мой вопрос для вас - «тогда какая библиотека должна быть включена для правильной работы с повышением?» – bmc

+0

Если вы ищете предлагаемую и впоследствии отклоненную библиотеку Boost.Http, которую можно найти здесь (https://github.com/BoostGSoC14/boost.http). Единственной официальной библиотекой Boost, которая занимается сетью, является [Boost.Asio] (http://www.boost.org/libs/asio/). Обратите внимание, что Boost.Http был отклонен как официальная библиотека Boost, но она по-прежнему активно работает. Код, который вы указали, представляется для cpp-netlib, который можно найти здесь (http://cpp-netlib.org/) и снова не является официальной библиотекой Boost. – ildjarn

ответ

1

Пример был предоставлен для cpp-netlib, который не является частью Boost C++.

Но его можно построить и установить в дополнение к вашей установке Boost, как описано в README.

Смежные вопросы