• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:lunuxでコンパイル)

LinuxでのC++プログラムのコンパイルに関する問題

このQ&Aのポイント
  • 普段はLinuxの環境を使っているが、特定のプログラムがWindowsでしか動かないため、切り替えが不便。
  • Linuxでhttp://prefixspan-rel.sourceforge.jp/のC++ファイルをコンパイルしたいが、エラーが発生。
  • 具体的なエラーメッセージが'atoi was not declared in this scope'で、修正方法は不明。

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

  • ベストアンサー
回答No.3

直せます。 prefixspan.cppをemacsなどのエディタで開き、 #include <set> の下に、 #include <cstdlib> を追加しましょう。

noname#182748
質問者

お礼

回答ありがとうございます。ものすごい労力の節約になりました。本当に助かりました。

その他の回答 (2)

  • Tacosan
  • ベストアンサー率23% (3656/15482)
回答No.2

プログラムは読んでないから知らんけど, 本当に strstream を #include してるならそれは時代遅れなので sstream に変更すべし. あと atoi については stdlib.h (もしくは, あるいはむしろ cstdlib).

noname#182748
質問者

お礼

回答ありがとうございました。

  • alwen25
  • ベストアンサー率21% (272/1253)
回答No.1

私もC、C++の初心者で詳しいことは分かりませんが、 atoiについては、C++ではなくCのエラーだということが 分かります。 ascii to integerという関数です。 インクルードファイルを宣言しておけばいいのではないでしょうか。 #include <string.h>でしょうか。 最近のlinuxのソースはmakeによる、依存関係指定 自動コンパイルを使っているものが多くて、開発環境が 変わるとMakefileを書き換えなければならず 私もうまくコンパイルできません。 また、URLをクリックしても文字化けして読めません。 的外れだったら済みません。

noname#182748
質問者

お礼

回答ありがとうございました。