• ベストアンサー

include の場所

Fedora10でvmwareを使っていましたが、定期的なupdate systemで環境が変わったみたいで、使用できなくなりました。 どうやら、kernelの C header files がないようです。 /usr/src/linux/include の場所が変わったのでしょうか? どの場所に変わったか?教えていただけませんか? kernel 2.6.27.29 gcc 4.3.2

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

  • ベストアンサー
  • notnot
  • ベストアンサー率47% (4848/10262)
回答No.1

ホストOSがFedora10でその上でVMwareServerを動かしていると言うことですか? >使用できなくなりました。 具体的な現象はなんでしょう?なにをしたらどうなったという、現象、メッセージを具体的に。

kurosansan
質問者

補足

言葉足らずで、すいません。 ホストOSがFedora10で、その上で、VMwareServer1.0.9を動かしていました。 VMwareserverが立ち上がらなくなったので、 またFedoraのkernelのバージョンがあがったと思い、vmware-config.plを動かし、VMwareのコンフィグを再作成しようとしたところ、 What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] のところで、ヘッダーファイルの場所が変わったようで、デフォルトでは進まなくなりました。 なので、このincludeの場所を探しています。 ヘッダーファイルはどこに行ったのかを知りたいのです。 よろしくお願い致します。

関連するQ&A

  • CentOS5にvmware-toolsのインストール

    vmwareにCentOSでデスクトップ環境を作っています。ホストとゲスト間のコピー&ペーストがしたいのですが、vmware-toolsのインストールで困っています。 環境は以下の通りです。 Host OS:Windows XP + VMware5.5.1 Guest OS:CentOS 5および5.1 vmware-toolsをインストールする際にkernel-headerの要求で詰まってしまいます。ネットで調べると定番の問題のようでkernel-source またはkernel-develのインストールでよいとのことで、確認すると既にインストールされています。しかしdefaultで聞かれる[/usr/src/linux/include] は存在しません。 現在のカーネルのバージョンは > uname -a Linux hostname 2.6.18-53.1.4.el5 #1 SMP Fri Nov 30 00:45:16 EST 2007 i686 i686 i386 GNU/Linux となっており、この番号を元に検索すると以下のディレクトリがありました > find / -name 2.6.18-53* -print /usr/src/kernels/2.6.18-53.1.4.el5-i686 /lib/modules/2.6.18-53.1.4.el5 そこでこれらをpathに与えてみました。defaultのpathにリンクを張っても見ましたが What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] /lib/modules/2.6.18-53.1.4.el5/build/include The directory of kernel headers (version @@VMWARE@@ UTS_RELEASE) does not match your running kernel (version 2.6.18-53.1.4.el5). Even if the module were to compile successfully, it would not load into the running kernel. What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] となり堂々巡りです。 インストールの方法は、rpmとtarball両方試しました。 ネット上では皆さんkernel-develをいれて解決されている用なのですが、いったい何が間違っているのでしょうか?

  • PCI-EXpressのLANボード増設方法について

    PCI-EXpress版LANボードの増設に伴い、ドライバーのインストール方法がわかりません。 何かわかる方がいましたら教えて下さい。 宜しくお願い致します。  (環境)  LANボード:SysKonnect SK-9E21D  マシン:4700C(DELL)  OS:linux(フェドラコア3)  カーネルVer:2.4.20-8  (現状)  install.sh起動  カーネルのソースが無い事が原因でエラー  となっていたので  redhatのサイトよりダウンロードした  カーネルのソースを/usr/src/redhatに  コピーしました。(kernel-2.4.20-8.src.rpmのみ)  結果は変わりません。  (includeファイルが見つかりません。)  (エラー内容)  Check kernel header files (not found)  Kernel header not found. Please install  the linux header files  development package or crate asymbolic link  from the /usr/src/KERNEL_VERSION  directory to linux   Example:   ln -s /usr/src/KERNEL_VERSION /usr/src/linux

  • Knoppix5.3.1のmakefileについて教えてください。

    VMware Server1.6でKNOPPIX5.3.1CD日本語版をHDDインストールしました。 引き続き、VMware Toolsをインストールしたいのですが、途中で止まってしまいます。 カーネルのバージョンは2.6.24.4です。 ■止まった箇所 What is the location of the directory of C header files that match your running kernel?[/usr/src/linux/include]でEnterを実行 ■エラーコメント The path "/usr/src/linux/include" is not an existing direcrory. おそらく、include pathを指定していないことが原因だと思い、debian リファレンスの7.1.2 「Kernelヘッダ」を参考にしたところ、makefileを変更するようです。 http://www.debian.org/doc/manuals/reference/ch-kernel.ja.html そのmakefileの変更方法がわかりません。ご教授お願いします。 また、私の原因予想事態が間違っているならば、ご指摘ください。 よろしくお願いします。

  • Linux C言語開発 インクルードについて

    C言語開発初心者です。 LinuxでC言語開発をするにあたり、どのディストリビューションにしても インクルードしたいヘッダファイルが既定の場所には無く別の場所にカーネルのバージョンごとに保存されているようなのです。 このままコンパイルを試みるとインクルードファイルが存在しませんとエラーが返ります。 既定のヘッダファイルの保存場所にはC言語開発に必要なヘッダファイルが存在しませんので、この問題を皆さんはどのように解決しておりますか?どなたかご教授お願いいたします。 C言語でincludeする場所は<>でくくった場合 /usr/include/ 以下を参照する設定になっていると思うのですが、 例えばmodule.h やinit.h などの開発用ヘッダファイル?を探してみると /usr/include/linux/ には存在せず、 find / -name module.h と入力して検索してみると /usr/src/kernels/2.6.32-131.21.1.el6.i686/include/linux/module.h と別な場所にあります。 ネットであれやこれや調べてみても コンパイル時にincludeの参照先を指定する方法はあるようなのですが、 コンパイルする度にいちいち指定するのは面倒だと思います。(gcc -I) かといって開発しているカレントディレクトリにヘッダファイルをコピーしても includeするヘッダファイルが別のヘッダファイルを参照することもあるようなので、 あまり現実的ではないようです。 一番安全な方法としてincludeする参照先が環境変数か何かで追加及び変更するのではないかと思います。 試してみましたがenvコマンドで表示されるOSの環境変数とは別のもののようなのです。 環境変数 C_INCLUDE_PATH とはどのようにして変更・追加するのでしょう? また、上記の方法以外で良い方法がございましたらそれでもかまいません。 よろしくお願いいたします。 開発環境 ・OS centos6 ・以下のパッケージはインストール済み kernel-headers-2.6.32-131.21.1.el6.i686 kernel-devel-2.6.32-131.21.1.el6.i686 make-3.81-19.el6.i686 gcc-4.4.5-6.el6.i686 ・GUI開発環境 netbeans ・uname -r 実行結果 2.6.32-131.21.1.el6.i686

  • Centos5.3にVmwareインストール

    できません。VMをrpmでインすトールし、コンフィグ設定のため以下コマンドを打つと下記メッセージが出ます。 [root@localhost vm]# vmware-config.pl What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] カーネルソースとRunning kernelに相違があるのですか? 解決策をご教授願います。 p.s. 現在のrunning kernel↓ [root@localhost ~]# uname -r 2.6.18-128.el5

  • Linux7.3のカーネルのある場所

    Linux7.3をインストールしました。 VMwareを使用したいと思い、インストール使用とした ところ、VMwareが言うてる場所にはカーネルは ありませんでした。 どなたか、カーネルのあるパスを教えて 頂けないでしょうか。

  • centos5.4をvmwareserver上で使っています。 vmware-install.plがうまくいきません。

    gccはインストールされています。 [root@localhost vmware-tools-distrib]# ./vmware-install.pl A previous installation of VMware software has been detected. The previous installation was made by the rpm installer (version 3). Converting the rpm3 installer database format to the tar3 installer database format. Installing the content of the package. In which directory do you want to install the binary files? [/usr/bin] What is the directory that contains the init directories (rc0.d/ to rc6.d/)? [/etc/rc.d] What is the directory that contains the init scripts? [/etc/rc.d/init.d] In which directory do you want to install the daemon files? [/usr/sbin] In which directory do you want to install the library files? [/usr/lib/vmware-tools] The path "/usr/lib/vmware-tools" does not exist currently. This program is going to create it, including needed parent directories. Is this what you want? [yes] The path "/usr/src/linux/include" is not an existing directory. What is the location of the directory of C header files that match your running kernel? [/usr/src/linux/include] これの繰り返しですすみません。 何が問題なのかわかるかたお教えください 補足ホストOSがvistaでゲストOSがcentosです。

  • linux/module.h インクルードできない

    もう自力ではわからず、検索しても解決できなかったので、わかる方、力を貸してください。 まず環境は Ubuntu 12.10 をVirtualBoxで動かしています。 そして、以下のパッケージをインストールしました。 linux-source-3.5.0 linux-header-3.5.0-19-generic その後、以下のソースをコンパイルしようとしました。 1 #include <linux/module.h> /* module 作成には必須 */ 2 #include <linux/kernel.h> /* printk */ 3 4 MODULE_LICENSE( "GPL" ); 5 6 static char* msg = "module [message.o]"; 7 8 9 /* 10 * モジュールの初期処理 11 * insmod 時に呼ばれる 12 */ 13 int 14 init_module( void ) 15 { 16 printk( KERN_INFO "%s : loaded into kernel\n", msg ); 17 18 /* モジュール初期化に成功したので 0 を返す 19 0 以外の値を返せば初期化失敗とみなされモジュールは 20 カーネルには組み込まれない */ 21 return 0; 22 } 23 24 25 /* 26 * モジュールの解放処理 27 * モジュールの参照数が 0 であれば、rmmod 時に呼ばれる 28 */ 29 void 30 cleanup_module( void ) 31 { 32 printk( KERN_INFO "%s : removed from kernel\n", msg ); 33 } 34 35 36 /* End of message.c */ このソース自体はネットで公開されていたもののコピペです。 これを解説を読んで、いざコンパイルというときに、 linux/module.h そのようなファイルやディレクトリはありません 上のエラーが出ます。 でも、/usr/src/linux-source-3.5.0/include/linuxの中に、module.hは確かにありました。 あったのにもかかわらず、そのようなファイルやディレクトリがありませんというのは、いったいどのような原因が考えられるのでしょうか。 自力では解決できなかったので、わかるかた教えてください。

  • macでカーネルのディレクトリはどこにありますか

    linuxカーネル用のディレクトリはたいてい/usr/src/linuxにあると本に書いてあったのですが、macではどこに置いてあるのですか。/usrのしたにはには/srcはありません。 ご回答よろしくお願いします。

  • GCCの#includeパスの設定方法?

    RedHat Linux 8.0をインストールしています。adaptec社のAHA1542を使いたいのですが、自動認識してくれません。 色々調べた結果、/etc/modules.confに alias scsi_hostadapter aha1542.o を記述する事で、使用可能と言う事がわかりました。 しかし私のシステムでは、aha1542のソースとヘッダーファイルはありますが、オブジェクトがありません。 GCCにてコンパイルさせたら、大量のエラーメッセージが出力されます。ソースを見ると、 1) #include <linux/******.h> 2) #include <asm/*****.h> 3) #include "*****.h" と3種類の#include文があります。 3)は、ソースと同一ディレクトリーでOKだと思いますが、他の2種類のパスの設定方法がわかりません。 <linux/ <asm/ の部分を自分のシステムに合ったパスに置き換える(GCCに認識させる)には、どうすれば良いのでしょうか? どうか、宜しくお願い致します!