centos6でbind9をソースからインストールしたら、
checking for gcc… no
checking for cc… no
checking for cl.exe… no
というエラーがでたので、gccが必要だと思い、
gccをソースからインストールしたところ、
checking for gcc… no
checking for cc… no
checking for cl.exe… no
同様のエラーがでました。
どうすればgccをインストールできるのでしょうか。
・インターネットに繋げたくないのでyum以外の方法をたのみます。
サーバー構築のためには事前にgccをインストール必要があるのでしょうか。
気になる質問をクリップする
クリップした質問は、後からいつでもMYページで確認できます。
またクリップした質問に回答があった際、通知やメールを受け取ることができます。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
回答4件
0
yumやrpmのバイナリを用いずに、ソースからコンパイルしてインストールするほとんどの場合でGCCは必要です。BINDやGCCを含め、LinuxでのアプリケーションのほとんどはC/C++で作られています。ソースコードはC/C++のただのテキストであり、そのままでは動作しません。コンパイラを使ってC/C++をコンパイルし、実行可能なバイナリにする必要があります。GCCはLinuxでもっとも一般的で広く使われているコンパイラであり、ほとんどの場合はGCCを使うことになります。
※ GCC以外にもLinuxで動作するC/C++のコンパイラは存在します。ただし、ほとんどのアプリケーションがGCCを想定しているため、場合によっては一部修正する必要があります。(C/C++の知識が無いと修正は不可能です)
※ GCCもC/C++で作られてるため、同様にGCCが必要です。
※ PythonやRubyのみで書かれたアプリケーションのように、GCCが無くてもソースからそのまま使えるものも一部あります。
逆に言うとバイナリのrpmだけを使う場合はGCCは不要です。yumはバイナリのrpmをインターネットから自動的に落として、インストールする仕組みです。バイナリのrpmを直接インストールすることも可能です。
どうしても直接インターネットに繋ぎたくない場合の手段を書きます。
- 全てのrpmが含まれたインストーラDVDを用いる。
インターネットに繋がっているパソコンでhttps://wiki.centos.org/Downloadからフル版のインストーラDVDを落とします。i386かx86_64かは現在のアーキテクチャにあわせてください。
CentOS-6.8-x86_64-bin-DVD1.iso
CentOS-6.8-x86_64-bin-DVD2.iso
または
CentOS-6.8-i386-bin-DVD1.iso
CentOS-6.8-i386-bin-DVD2.iso
DVDに焼いてLinuxにセットします。DVDをレポジトリに登録する方法を使って、yumでGCCをインストールできるようになります。
- 必要なrpmを落とす。
同じくCentOSのダウンロードページからGCCのrpmパッケージを落とします。依存関係を含めて全て落とします。落としたファイルをUSBメモリやDVDに入れて、Linuxにセットします。あとは、rpm -Uvh ファイル名
でrpmをインストールします。一気に入れる場合は*
などを用いてください。依存関係で足りない場合は、その都度落として持ってきてください。
- 専用レポジトリサーバを立てる。
同じネットワーク内でインターネットに繋いでも良いサーバを一台用意します。レポジトリのミラーサーバを構築する方法を使って、専用のレポジトリサーバを立てます。Linux側でレポジトリがそのサーバを見に行くように設定します。
いずれにしても、LinuxやCentOSに関するそれなりの知識が無いと難しいです。どれもよくわからないというのであれば、1.で作成したフルパッケージ版のインストーラDVDを用いて、全てのパッケージをフルでインストールしなおしてください。GCCもBINDも全てインストールされますので、何も悩む必要は無くなります。
投稿2016/07/09 14:55
編集2016/07/09 14:57総合スコア21733
0
gccは確かにその他のモジュールのインストールに必要な場合が多いです。
ソースコンパイルになってくると、やったことはないですが
gccをインストールするためのモジュールなども必要になってくるのではないかと思います。
サーバのバージョンやモジュールのバージョンの依存関係なども全て調べて行わないといけないので
短期間で行いたいならお勧めはできません。
一時的に80ポートを開放してyumで入れることをお勧めします
yumで入れる場合、その他必要なモジュールはすべて入れてくれるのですぐに終わると思います。
ご検討ください
投稿2016/07/09 14:12
総合スコア151
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
0
ベストアンサー
インターネットに繋げたくないとのことは、centos6は dvd からや iso ファイルを使ってインストールしたのだと想像されます。
DVD / iso イメージのなかに Packages というフォルダがあり、そこに rpm がたくさんあります。
それをつかってインストールをするとよいです。
Packages 以下には 標準のパッケージをインストールするのに必要なものはすべて揃っているはずです。
参考情報:
- オフラインのCentOS6にインストールメディアからyumでパッケージをインストールする http://qiita.com/tamamius/items/35a1b593be45ef1e7c33
↑では yum を使う方法が説明されていますが、
rpm コマンドをつかったり、 srom を自分で展開して 自分で ソースから build するといったことも Package/ 以下のファイルをつかって ネットワークに接続せずに 出来ます。
投稿2016/07/10 01:43
総合スコア22324
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
あなたの回答
tips
太字
斜体
打ち消し線
見出し
引用テキストの挿入
コードの挿入
リンクの挿入
リストの挿入
番号リストの挿入
表の挿入
水平線の挿入
プレビュー
質問の解決につながる回答をしましょう。 サンプルコードなど、より具体的な説明があると質問者の理解の助けになります。 また、読む側のことを考えた、分かりやすい文章を心がけましょう。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。