RedHat6.2と7.0をつかっているのですが、tar.gz形式のソフトをダウンロードして、解凍するところまでは出来るのですが、makeコマンドを使ってコンパイルしようとすると、始めは、makeなんてない!って言われてこりゃいかんと思い、インストールディスクに入ってたmakeのRPMパッケージをインストールしてやってみたところ、今度はgccがないぞ!と言われて、「へ?それもいるの?」という感じで、パッケージを探したところ、入ってなくて仕方なくネット上を捜し歩いたら、rpmパッケージを発見したので、それをインストールしたのですが、それで実行すると、最後の最後で、エラーが出て、結局コンパイルできませんでした。これではなんにもソフトがインストールできません。どなたかアドバイスをお願いします。因みに今は、自宅ではないのでエラーメッセージがわかりません。帰ってからコメントしておきます。

このQ&Aに関連する最新のQ&A

A 回答 (4件)

さっぱり分りません。

ギブアップです。

???????のところは、さっきも書いた通り、
エラーメッセージが出るべき所なんで、何か、
gccのインストールに問題があるような気がします。

ところで、

> RedHat6.2と7.0をつかっているのですが、

とありますが、どっちで問題が起こってるんでしょう。

まさかとは思いますが、最初RH6.2をインストールし、
7.0のCD-ROMでOSのアップグレードをしないままに
7.0のCD-ROM内のRPMをインストールしたり
してないですよね?

もしそうしたとしても、カーネルバージョン2.2.14と
2.2.16だしそんなにクリティカルな問題にはならなさそう
ですがね。なんとなくですが。

あとは、????のところでstdio.hが無いとか言ってるとしたら、
glibc-devel-が入ってるか調べるんでしょうかね。

どうもシステムの挙動が妙な感じですから、まだアプリをあまり
入れてないようでしたら、OSの再インストールも考えても
良いかも知れません。
    • good
    • 0
この回答へのお礼

了解です。
上の方も再インストールをすすめてくれらので、再インストールしてみます。
ほんとうに今回はいろいろと勉強になりました。
重ね重ね、ありがとうございました。

お礼日時:2001/08/23 17:16

なぜか、たまに make や gccなどがインストールされていないときがある。


それだけじゃなくて、その他開発系やライブラリ系のパッケージがデフォルトでインストールされるはずのものが、入ってないときがある。
うちはKondaraとRedHat7.0であった。
 もし、どの開発系かライブラリ系のパッケージが必要かわかれば、それを入れればいいんだけど、わかんない場合はしょうがないので、とりあえずOS入れなおしが手っ取り早いかも。入れなおすときはカスタムインストールで注意してパッケージを選べば大丈夫でしょう
 
    • good
    • 0
この回答へのお礼

そちらも同じ現象があったんですね?
それならご推薦の再インストールやってみます。

大変参考になりました。

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

お礼日時:2001/08/23 17:18

いろいろ疑問な点があります。



1.naturalさんのおっしゃっている通り、gccとmakeが最初から
  入っていなかったということはちょっと考えにくいです。
  さらにはインストールCDにも入っていなかったというのは
  あり得ないです。gccは、"gcc-?.?.?...."みたいな名前の
  パッケージじゃなく、"egcs-?.?.?-..."という名前の
  パッケージに入っていることが多いです。ネット上で
  取ってきたgccのパッケージを独自にインストールされた
  ようですが、このインストールが中途半端だった可能性は
  ないですか?インストールCDからegcsを捜し出し、
  もう一度インストールされた方がいいかも?

  makeやgccに限らず、入っているはずのコマンドが見付からない
  場合、大抵はパスが通っていないことが原因です。
    echo $PATH
  とやって、
    /bin:/sbin:/usr/bin:/usr/sbin:/usr/X11R6/bin:/usr/local/bin:/usr/local/sbin
  (:で区切られたディレクトリ名(パス)の順序は不同)が出ないと、
  パスが足りません。パスの定義方法を調べてパスを増やしてください。

2.コンパイルに際して、解凍→makeとされているように見受けられますが、
  それは正しいコンパイル方法ですか?解凍してできたディレクトリ内の
  READMEとかINSTALLといった名前のファイルを読みましたか?
  詳しいインストール方法はそれらのなかに書かれています。
  一般的なインストール方法は、
    ./configure
    make
    su
    make install
  です。しかし、例外はいくらでもありますので、READMEやINSTALL
  を読んでください。
  
3.makeのエラーメッセージをもっと詳しく調べてください。
  「make:*** {ソフト名} エラー1」の直前のメッセージこそ原因が書かれて
  いるところです。
  例えば、手元のソースコードをちょっと変更してコンパイルエラーを
  つくってみたら、下のようになりました。
  ...
  make[1]: ディレクトリ `/home/fukayama/Gaze/Agent2/src/tester' に入ります
  g++ -Wall -g -o ../../bin/tester_clnt tester_clnt.cc
  tester_clnt.cc: In function `int main (int, const char **)':
  tester_clnt.cc:33: `socket' undeclared (first use this function)
  tester_clnt.cc:33: (Each undeclared identifier is reported only once
  for each function it appears in.)
  make[1]: *** [../../bin/tester_clnt] エラー 1
  make[1]: ディレクトリ `/home/fukayama/Gaze/Agent2/src/tester' から出ます
  make: *** [make_tester] エラー 2

  エラー1の直前の3行に、まさにエラーの原因が書かれています。
  この場合、「tester_clnt.ccの33行目で、socketとという訳の分からん
  言葉が出て来てるぞ」というエラーです。その上の、g++ -Wall ...は、
  これからg++(gccみたいなもの)を使ってコンパイルしますよ、
  という意味です。

4.?がたくさん出てうまく行っているみたい、ってどういうことなんでしょう?
  コンパイルがうまく行っているときに?が出るというのは見たことない
  です。うまく行ってないときでも、?が出るというのはちょっと見たことが…。
  もしかして、最後のエラー1が出るまでの時間って、ほんの一瞬(1秒とか)
  じゃないですか?もしそうなら、何一つうまく行ってないのかも知れませんね。
  そんなに大きなプログラムでなくても、コンパイルは結構時間のかかる作業で、
  最低でも数秒程度は要します。自作なら別ですが、特に一般に公開されてる
  ようなプログラムなら。

最近はRPMではい、インストール終了、って感じですが、こうやってコンパイルに
悩むのも結構、勉強になって良いと思いますよ。頑張ってください。

この回答への補足

実行後の画面は、
gcc -02 -g Dlinux noip.c -o noip
noip.c:51:19: stdio.h: ???????????????????

この?が#の変わりにでてるのかな?とおもったんですが・・・。?が右にどんどん増えていって、一つ一つのファイルごとに量がちがいます。
ちなみにあとこのような行が10行くらい続いた後、
突然例の エラー1という文字がでます。
ちなみに、確かに、makeと最初にコマンドを打ったら
そんなコマンドありませんと表示がでました。
RPMって二重にインストールしようとすると、確かエラーがでるはずですが、makeを入れたときは普通に完了してしましました。このredhatは、パッケージの製品なのですが、普通の雑誌とかのとどっか違うのでしょうか?(ちなみにパッケージには10枚近くインストールディスクがついてきまいた。)インストール自体は1枚目でおわってしまうのですが・・・。
それと、確かめてみたら、
gcc-2.96-54.i386.rpmってのがCDにはいっててこれをインストールしてました。(^^;すみません。

補足日時:2001/08/22 23:52
    • good
    • 0

make時のエラーメッセージをもう一度よく御覧になった方が良いかもしれません。


RedHatLinuxにはgccもmakeも入っていたはずですので原因は別のところにあるのではないかと・・・。
例えばmakeの際に必要なconfigファイルが作成されていないとか。
その場合はmake configとか行ってからmakeしたような記憶があるのですが・・・。(うろ覚えですみません。(^_^;)
とりあえずインストールしようとしているソフトのREADMEやエラーメッセージをもう一度確認してみることをお勧めします。

この回答への補足

コンパイルを開始すると、
行端に
make:*** {ソフト名} エラー1
と出ます。
途中までは、?がたくさん出てうまくいってるみたいなんですが・・・。
ちなみにどのソースを使ってもこうなります。

補足日時:2001/08/22 20:37
    • good
    • 0
この回答へのお礼

丁寧なご説明ありがとうございます。
さっそくやってみましたが、
make conf
と、入力すると、
make:*** ターゲット ’conf’をmakeするルールがありません
と表示されてしまいました。

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

お礼日時:2001/08/22 20:42

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aと関連する良く見られている質問

QLinux 6.2 でパッケージインストール RPM コマンドを使用した時にエラーがでる

OS Linux6.2 で rpm コマンドを使用した時にエラーになる

# rpm -Uvh bind-8.2.2_P7-1.i386.rpm をすると以下のエラーが出る

メジャー番号<=3のパッケージのみこのバージョンのRPMはサポートされています
エラー:bind-8.2.2_P7-1.i386.rpm cannot be installed

以上のメッセージが出てパッケージをインストールできないので
教えてください

Aベストアンサー

bind-8.2.2_P7←これが7なのが気になるのですが
RedHat7J用のRPMなんでしょうか?

redhat系だと 6.xと7以上でRPMのバージョンがかわり
6.x系のRPMでは新しいrpmがほどけなかった気がします。

先に、rpmのバージョンを最新の物に上げてみてください。

QCコンパイラ(RPMパッケージ)のインストール方法を教えてください

リナックスを最小インストールにしたから、だと思うのですが
僕のマシンにCコンパイラが入っていないようです。
これが無いとソースを拾ってきてもインストール出来ないんですよね。
リナックスのCDの中にgcc-3.2-7.i386.rpmというのを発見しました。
gccというのを調べてみますと何かコンパイラのパックみたいなもののようで、これをインストールしようと思ったのですが
# rpm -ihv /mnt/cdrom/RedHat/RPMS/gcc-3.2-7.i386.rpm
警告: /mnt/cdrom/RedHat/RPMS/gcc-3.2-7.i386.rpm: V3 DSA signature: NOKEY, key ID
db42a60e
エラー: Failed dependencies:
cpp = 3.2-7 is needed by gcc-3.2-7
binutils >= 2.12.90.0.7-1 is needed by gcc-3.2-7
glibc-devel >= 2.2.90-12 is needed by gcc-3.2-7
#
と何やら訳の分からん横文字が、ずらずらと出てきてインストール出来ませんでした。
どなたか、やり方を詳しく教えてくれませんか。
Cコンパイラをインストールするには、このgccってヤツでいいのですか、それとも他のrpmがあるのですか。

リナックスを最小インストールにしたから、だと思うのですが
僕のマシンにCコンパイラが入っていないようです。
これが無いとソースを拾ってきてもインストール出来ないんですよね。
リナックスのCDの中にgcc-3.2-7.i386.rpmというのを発見しました。
gccというのを調べてみますと何かコンパイラのパックみたいなもののようで、これをインストールしようと思ったのですが
# rpm -ihv /mnt/cdrom/RedHat/RPMS/gcc-3.2-7.i386.rpm
警告: /mnt/cdrom/RedHat/RPMS/gcc-3.2-7.i386.rpm: V3 DSA signature: NOKEY,...続きを読む

Aベストアンサー

>>cpp = 3.2-7 is needed by gcc-3.2-7
これはcppのインストールにgccが必要ですという意味です。メッセージ類は中学英語で読める英文が殆どですから苦手意識を持たず読むようにしてください。

コンパイラ類は依存関係があり他にもライブラリなどが必要になりますので初回インストール時にイントールしておくべきです。
もし面倒でなければインストーラCDからアップデートで開発環境のパッケージを追加する(念のため必要なデータのバックアップはとっておく)のがよいかと思います。もしくはいっそのことクリーンインストール。
もう一つの方法はCD-ROMのRPMSディレクトリから
rpm -Uvih *.rpm とコマンドを打ち全てのrpmパッケージをインストールする方法です。
しかし大量にHDDを消費する可能性がありますしマシンによってはイントールをやり直した方が早いかも…。とりあえず最初の方法が無難だと思います。

QRPMパッケージのアップグレードについて

APACHEをRPMパッケージの最新版(apache-1.3.22-5.7.1)にアップグレードしたいのですが、
現在下記の様な状態で悩んでいます。

# rpm -Fvh apache*.rpm
でアップグレードしようとすると、

エラー:依存性の欠如
mod_bandwidthは apache-1.3.22-5.7.1 に必要とされています
mod_putは apache-1.3.22-5.7.1 に必要とされています
mod_throttleは apache-1.3.22-5.7.1 に必要とされています

というエラーが出ます。

次に、依存性の欠如で指摘されたファイルも一緒にアップグレードしようと、
以下のコマンドを入力しました。

# rpm -Fvh apache-*.rpm mod_bandwidth-2.0.3-2.i386.rpm mod_throttle-3.1.2-3
.i386.rpm mod_put-1.3-2.i386.rpm

そしたら、またしても

エラー: 依存性の欠如:
mod_bandwidthは apache-1.3.22-5.7.1 に必要とされています
mod_putは apache-1.3.22-5.7.1 に必要とされています
mod_throttleは apache-1.3.22-5.7.1 に必要とされています

と表示されてしまいました。

インストールされているか、rpm -q で確認すると、
インストールされていません と返ってきました。

じゃあ、インストールしよう、と思って

#rpm -ivh mod_bandwidth-2.0.3-2.i386.rpm mod_throttle-3.1.2-3.i386.rpm mod_put-1.3
-2.i386.rpm

と入力したら

エラー: 依存性の欠如:
apache < 1.3.22-1 mod_bandwidth-2.0.3-2 と競合します
apache < 1.3.22-1 mod_throttle-3.1.2-3 と競合します
apache < 1.3.22-1 mod_put-1.3-2 と競合します

と、返ってきました。


一体、どのようにしたら無事アップグレードできるのでしょうか?
それとも、現バージョンのAPACHEを削除してから新バージョンのインストールを
するしかないのでしょうか?


使用OS:Redhat Linux 7.1J

APACHEをRPMパッケージの最新版(apache-1.3.22-5.7.1)にアップグレードしたいのですが、
現在下記の様な状態で悩んでいます。

# rpm -Fvh apache*.rpm
でアップグレードしようとすると、

エラー:依存性の欠如
mod_bandwidthは apache-1.3.22-5.7.1 に必要とされています
mod_putは apache-1.3.22-5.7.1 に必要とされています
mod_throttleは apache-1.3.22-5.7.1 に必要とされています

というエラーが出ます。

次に、依存性の欠如で指摘されたファイルも一緒にアップグレードしようと、
以下の...続きを読む

Aベストアンサー

apacheのパッケージと、mod_bandwidthなどのモジュール類とを
一緒にインストールするのが(たぶん)正解だろうと思いますが、
エラーが出るってわけですね。
でも、それは、rpmのオプションがいけないんではないでしょうか?

rpm -Uvh

でリトライしてみてください。

rpm -Fvh は、「現在インストールされている」パッケージを
アップグレードしますが、mod_bandwidth等は、
現在インストールされていないわけですよね?
だからダメなんだろうと思いますよ。

QS-Jog Rpmパッケージ

いつもお世話になります

sjog-0.6-2.i586.rpmをインストール時に下記エラーとなりました。
Failed dependencies:
libgtk+1.2 >= is needed by sjog-0.6.2

gtk+-1.2が必要かなと思いgtk+-1.2.10-25.i386.rpmをインストールし
再度sjog-0.6-2.i586.rpmのインストールを試みるとまた同じエラーとなります。

これは何か別の設定やインストールしないといけないRPM等
あるのでしょうか?
超初心者ですがよろしくお願いします。

環境:
vaio Z505GR/K RedHatLinux9

Aベストアンサー

エラーメッセージは正確に

libgtk+1.2 >= 1.2 is needed by ....

ですね.

sjog のSPECには確かに上記パッケージへの依存関係が設定されていますが,RedHatのlibgtk+ は,単に gtk+ というパッケージ名なので,依存関係を壊さずにそのRPMをインストールすることはできません.

ソースから,おきまりの configure, make, make install の手順で簡単にインストールできると思いますが,それではダメなんでしょうか?

QRPMのインストールに関して

RedHat7.2を使用しています。
bindをRPMでインストールしようとしているのですが、
libdns.so.4などのファイルがなくて、依存性の問題により
インストールできない状態です。
このファイルはどこで手に入りますでしょうか。
そしてこのファイルはどういうものなのか教えていただけませんでしょうか。
宜しくお願いします。

Aベストアンサー

redhat7.3やredhat8.0では、

rpm --redhatprovides libdns.so.4

のようにやると、そのファイルを提供するパッケージが分かります。
7.2でこのオプションが使えるかどうかはわかりませんが、

rpm --help

で調べられると思います。
また、この機能を使うには rpmdb パッケージがインストールされている
必要があります


人気Q&Aランキング

おすすめ情報