• ベストアンサー

macportsなどに詳しい方へ質問です

https://okwave.jp/qa/q9364404.html この質問について、最新のclangならコンパイルできた、とありますが、その方法がよくわかりません。新しいコンパイラーをインストールする必要があるのでしょうか。

質問者が選んだベストアンサー

  • ベストアンサー
  • trapezium
  • ベストアンサー率62% (276/442)
回答No.1

参考 URL では gcc 7.1 をインストールしてたようですが、gcc ではコンパイルできなかったのですか? 自分は gcc と clang で一応 usi, isready までは確認しました。環境は FreeBSD 10.3 g++7 --version g++7 (FreeBSD Ports Collection) 7.1.1 20170615 clang++40 --version clang version 4.0.1 (tags/RELEASE_401/final) Target: x86_64-unknown-freebsd10.3 どちらにしても -std=c++14 を要求するので、あまり古いバージョンのコンパイラでは上手くいかないでしょう。 また若干 Makefile を修正してますが、ここに貼り付けるとスペースが圧縮されるので、 https://paiza.io/projects/zSb6MSLUlVIs7tWff7zhAw から makefile.diff として cd YaneuraOu/source patch < makefile.diff make sse42 COMPILER=g++7 LTOFLAGS=-flto mv YaneuraOu-by* ../exe/ make clean make sse42 COMPILER=clang++40 .... みたいにしてます。

shitumon631
質問者

お礼

何度もありがとうございました。詳しい方に聞いて解決してもらいました。

shitumon631
質問者

補足

何度も回答ありがとうございます。 申し訳ありませんが、私は初心者です、「gccではコンパイルできなかったのですか?」の意味がよく分かっておりません。どのようにgccでコンパイルすればいいのでしょうか?コマンドが分かりません。 cd YaneuraOu/source make sse42 とすれば、エラーが出ます。 gccのバージョンは7.1.1でした。 また、貼ってくださったURLをコピーしてmakefile.diffというファイルをつくり、 cd YaneuraOu/source patch < makefile.diff でyとし、 make sse42 COMPILER=g++7 LTOFLAGS=-flto としてもエラーがでました。これは修正前のmakefileファイルのままで成功するはずなのでしょうか?

その他の回答 (1)

  • trapezium
  • ベストアンサー率62% (276/442)
回答No.2

>「gccではコンパイルできなかったのですか?」の意味がよく分かっておりません。どのようにgccでコンパイルすればいいのでしょうか?コマンドが分かりません。 始めの質問が正にこの内容ですし、参照 URL の Web ページも、GCC を先にインストールして、Makefile を書き換えて使うような主旨です。 > cd YaneuraOu/source > make sse42 > とすれば、エラーが出ます。 初心者と言えども、状況に応じて Makefile やコンパイラのオプション修正、多少のコンパイルエラーの対処くらいは出来ないと、この手のソフトウェアのインストールは難しいと思います。 > また、貼ってくださったURLをコピーしてmakefile.diffというファイルをつくり、 これは OS も違いますし、あくまで参考程度のつもりでしたが、分る範囲で補足すると、 > make sse42 COMPILER=g++7 LTOFLAGS=-flto > としてもエラーがでました。これは修正前のmakefileファイルのままで成功するはずなのでしょうか? COMPILER= 指定は使用するコンパイラに合わせなければなりません。上でバージョン 7.1.1 でしたと書かれた g++ を指定します。パスが通っていれば名前のみ、通してなければフルパスで書きます。 LTOFLAGS= もコンパイラによってはそもそも使えなかったり、実行時に core dump するようですから、試して駄目なら指定を外します。 なお make の引数で指定しても、同様の内容に Makefile を修正しても同じ効果です。 また sse42 も CPU に合せて変更が必要でしょう。Makefile 内にターゲットが並んでいますから、自身のマシンの CPU に適合する最高のものを選びます。

関連するQ&A

  • 質問一覧に現れない質問?

    カテゴリ内に質問あるのに一覧に出てないのはバグでしょうか? https://mori.nc-net.or.jp/qa9484703.html https://okwave.jp/qa/q9484703.html

  • 質問の意図

    この質問をどう思いますか? http://mobile.okwave.jp/qa/q6408037.html

  • 心のお優しい方よろしくお願いします

    昔悩んでたのもあるんですが、興味本位でマルチポストをしていました。 教えてgoo質問内だけだったらいいんですが、検索しましたら色んな所に掲載されてました。 今ではすごく後悔しておりますし回答してくださった人には申し訳ないんですが 違反通報してくれませんか? よろしくお願いします。 http://okwave.jp/qa/q6943687.html http://okwave.jp/qa/q6907776.html http://okwave.jp/qa/q6907874.html http://okwave.jp/qa/q6802273.html http://okwave.jp/qa/q6750837.html http://okwave.jp/qa/q6750753.html http://okwave.jp/qa/q6742943.html http://okwave.jp/qa/q6647344.html

  • okwaveでの質問が他の質問サイトに

    少し前、okwaveで「firefox4.0のツールバー」というタイトルで質問しました。 (http://okwave.jp/qa/q6619283.html) その質問がこれらの他のサイトにも掲載されていました。 http://kaiketsu.athome.jp/qa6619283.html http://qa.jiji.com/qa6619283.html http://qa.cyzo.com/qa6619283.html http://okwave.jp/qa/q6619283.html http://qa.itmedia.co.jp/qa6619283.html URLの”qa6619283.html”という部分が同じ点が少々気になります。 これらのサイトで同じID、パスワードを使ってログインできるのかと思ってやったらできませんでした。 いったいどのような仕組みなのでしょうか。

  • 質問番号は一致しないのでしょうか?

    okwaveの質問番号と、教えてgooの質問番号は一致しないのでしょうか? 例えば、 http://okwave.jp/qa/q8908916.htmlという質問ページにたいして、 「http://okwave.jp/qa/q」の部分を「http://oshiete.goo.ne.jp/qa/」に変えて、 http://oshiete.goo.ne.jp/qa/8908916.html で、表示させた場合、 違う内容の質問が表示されます。 http://okwave.jp/qa/q8908916.htmlのページを見ると 質問番号は「質問No.8908916 」と記載されています。 http://oshiete.goo.ne.jp/qa/8908916.html のページ内では質問番号はありませんでした。 提携サイトは質問番号以外のURLを変えれば、違うサイトで閲覧できると思ってたのですが、gooは違うのですか?

  • 「その他」を投票してくれたミナさんへ

    その他とはいったい何だったんですか? https://okwave.jp/qa/q10126437.html https://okwave.jp/qa/q10133507.html https://okwave.jp/qa/q10138442.html https://okwave.jp/qa/q10141307.html https://okwave.jp/qa/q10143479.html https://okwave.jp/qa/q10145059.html https://okwave.jp/qa/q10147123.html https://okwave.jp/qa/q10151700.html よろしくお願いします、ペコリンm(*μ_μ)m

  • OKWaveからのメルマガに質問が載ったのですが

    OKWaveからのメルマガに質問が載ったのですが http://okwave.jp/qa/q5978214.html?mailmagazine なんかもらえたりするのでしょうか。

  • 質問への回答について?

    質問の問題について間違ったのを回答したとき。こんな場合はどうすればよいでしょうか? よ~く考えると難しい問題だったなと思いました。 https://okwave.jp/qa/q9381021.html

  • long long型について

    long long型を使用したいのですが、 コンパイルすると『未サポート』の警告がでます。 ※以前、下記質問をさせてもらいました。  http://okwave.jp/qa3407843.html​  http://okwave.jp/qa3425683.html OS:Vine Linux3.1 コンパイラ:gcc-3.2.2 になります。 また、__STDC_VERSION__が199901Lに定義もされていました。 以上、宜しく御願い致します。

  • 化物語、現在放送していますか。

    https://okwave.jp/qa/q9919857.html https://okwave.jp/qa/q9918769.html の質問から、放送しているらしいのですが、見つけれませんでした。

専門家に質問してみよう