だから私がコンパイルしようとしている私の現在のコード:
#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;
}
[この投稿] から取得したすべてのコード ( C++ プログラム内の Web サイトからデータを取得するにはどうすればよいですか)。そのため、提供されたいくつかの異なるスクリプトを使用して、このことを単独で実行しようとしましたが、どれも機能しませんでした. 私が試したスクリプトのいくつかを次に示します。
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 はブースト ルート ディレクトリのライブラリを見つけるために使用されることに気付きました。そのため、現在 2 つのコピーがあり、どちらかが機能するかどうかわからないため、何をダウンロードしたか正確にはわかりません。このことを実行するためにあらゆる組み合わせを試しています。どうやら私はあちこちに座っているブーストのコピーをいくつか持っています。 したがって、/usr/local/Cellar ディレクトリには両方の最新のものが保持されます。
/usr/local/Cellar/boost/1.59.0/include/boost
/usr/local/Cellar/boost/1.59.0/include/lib
また、/usr/local/ ディレクトリには両方が保持されます。
/usr/local/include/boost/
/usr/local/lib
そしてまた、
/usr/local/opt/boost/include
/usr/local/opt/boost/include/lib
複数のコピーを使用すると、プロセスまたは何かが中断されますか? 私はとても混乱しています。
それで、私はこれを理解しようとしましたが、単に困惑しています..私はスクリプトが苦手です(最近、この問題からそのほとんどを学びました)、そして単にこのことをコンパイルする方法がわかりません..いずれにせよ、形、または形は高く評価されていません。助けてくれた人に前もって感謝します。