質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
cURL

cURLはHTTP, FTPやTelnetなど複数のプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

Q&A

解決済

1回答

3363閲覧

Windows10 WSLのubuntuでlibcurlを使用したい

chess

総合スコア12

cURL

cURLはHTTP, FTPやTelnetなど複数のプロトコルを用いてデータを転送するライブラリとコマンドラインツールを提供します。

C++

C++はC言語をもとにしてつくられた最もよく使われるマルチパラダイムプログラミング言語の1つです。オブジェクト指向、ジェネリック、命令型など広く対応しており、多目的に使用されています。

0グッド

0クリップ

投稿2019/05/29 04:16

編集2019/05/29 04:21

windows10のWSLでubuntuを導入し、libcurl-devをインストールしてC++で用いようとしています。

環境は以下となります

  • Windows10 Pro(1809), OS Build 17763.529
  • Ubuntu 18.04.2 LTS

導入時にsudo apt-get install libcurl-devとしたらopenssl版、gnutls版、nss版の選択肢が出たので、openssl版(libcurl4-openssl-dev)をインストールしました。

そこで以下のコードをビルドしようとしたらエラーとなりました
g++ -Wall -lcurl -g -o test test.cpp

c++

1#include <curl/curl.h> 2 3int main( void ) { 4 curl_easy_init( ); 5}

errcode

1/tmp/ccVcuFmy.o: In function `main': 2/home/user/work/test/test.cpp:4: undefined reference to `curl_easy_init' 3collect2: error: ld returned 1 exit status

"#include <curl/curl.h>"

ビルド時の-lcurl
で怒られていないので、libcurl-devはインストールされて、ヘッダやライブラリのパスも通じていると思うのですが、問題の箇所がわかりません。

ちなみに同様の方法で素でdebianをインストールした機器では問題なくビルドが成功し、実行もされています。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

g++ -Wall -lcurl -g -o test test.cpp

bash

1g++ test.cpp -Wall `pkg-config --cflags --libs libcurl` -o test

でどうでしょうか?

ようするにgccのオプションでtest.cpp-lcurlより前にないとだめです

ref:

投稿2019/05/29 18:08

yumetodo

総合スコア5850

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

chess

2019/05/30 02:33

ご回答ありがとうございます! サンプルのコマンドでも、おっしゃるように単純に-lcurlを末尾に持って行っても正常にビルドすることができました。 ただ、OSがdebianの時には-lcurlが前でも後でもビルドが通ってしまうことがわからないというか気になる点ではあります。これはシステムの構成によるということなのでしょうかね。 が、今後もリンクが通らないようなことが起きたら、リンクの順番を疑ってみようと思います。 助かりました、ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問