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

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

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

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

C++

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

Q&A

解決済

2回答

6798閲覧

ubuntu上でプログラムが動かない

hatana25

総合スコア13

Ubuntu

Ubuntuは、Debian GNU/Linuxを基盤としたフリーのオペレーティングシステムです。

C++

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

0グッド

0クリップ

投稿2017/08/18 08:56

Ubuntu上でプログラムがうまく動きません。

乱数生成のプログラムを作成しているのですが、

”In file included from /usr/include/c++/5/random:35:0,
from ../scratch/ns3-hello-world.cc:13:
/usr/include/c++/5/bits/c++0x_warning.h:32:2: error: #error This file requires compiler and library support for the ISO C++ 2011 standard. This support must be enabled with the -std=c++11 or -std=gnu++11 compiler options.
#error This file requires compiler and library support

と出力され、動きません。

C+11を有効にする方法を模索しましたが、うまくいきません。
ヴァージョンは最新です。

"./waf --run "ns3-hello-world" -std=c++11"

で実行すると、コマンドの種類が紹介され、

"waf: error: no such option: -s"

と出力されます。

どうかよろしくお願いいたします。

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

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

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

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

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

guest

回答2

0

ベストアンサー

こんにちは。

できれば、どんなコマンドでビルドしているのか示して頂いた方が良いのですが、分かる範囲で回答してみます。

ソース・ファイルのあるフォルダへ移動し、下記コマンドでビルドできないでしょうか?

$ g++ ns3-hello-world.cc -std=c++11

投稿2017/08/18 09:34

Chironian

総合スコア23272

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

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

hatana25

2017/08/18 11:09

ご丁寧な回答ありがとうございます。 " ./waf --run "ns3-hello-world" " というコマンドでビルドしていました。 エラーが出たのち、 "./waf --run "ns3-hello-world" -std=c++11" というコマンドでビルドし、 ”waf: error: no such option: -s" のエラーが出力されました。 g++ ns3-hello-world.cc -std=c++11 でビルドしてみましたが、 "そのようなファイルやディレクトリはありません" というエラーがでてきました。 ファイルの移動がややこしく、なるべく"waf"でビルドしたいのですが、、、 よろしくお願いいたします。
Chironian

2017/08/18 13:09

ごめんなさい。wafについては知らないのでお役にたてないようです。
guest

0

ubuntuもwafと言うツールも未使用なので間違ってたらすみません。

stackoverflowで[waf][c++11]での検索結果で出てきた感じだと、

wscriptの設定にCXXFLAGSを追加して

python

1def configure( conf ): 2 ... 3 conf.env.CXXFLAGS = [ '-std=c++11', '-stdlib=libc++' ] 4 conf.env.LINKFLAGS = [ '-std=c++11', '-stdlib=libc++' ] 5 ....

g++の場合、-stdlib=libc++は不要というか使えないかも?です
Macでclang++を使用した時にlibstdc++の代わりにlibc++を使用するためのフラグだと思うので。

wafを以下のように実行する

CXX=clang++ waf configure CXX=clang++ waf build

みたいな感じで説明されていました。

投稿2017/08/18 11:48

編集2017/08/18 11:52
退会済みユーザー

退会済みユーザー

総合スコア0

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

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

hatana25

2017/08/18 11:52

できました!!ありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問