Debian squeezeのカーネルソースの場所

このQ&Aのポイント
  • Debian squeezeのカーネルソースの場所を調べる方法
  • Debian squeezeのカーネルソースの場所を特定するための手順
  • Debian squeezeのカーネルソースの場所確認方法
回答を見る
  • ベストアンサー

Debian squeezeのカーネルソースの場所

現在、Debian squueze(kernel:2.6.32-5-amd64)を入れたPCに 無線LAN(RaLink RT2860)のドライバをインストール(コンパイル)するため、 付属のReadmeを読みながらMakefileの設定を行っています。 しかし、肝心のカーネルソースが自分のPCのどこにあるか分からず、 Makefile内のカーネルソース(LINUX_SRC)をどう指定すればよいのか分かりません。 どのように設定、もしくはどのようにして調べたら良いのでしょうか? Makefile内の該当箇所を以下に抜粋します。 (このままmakeを実行してもエラーが出ます。) =================================================== ifeq ($(PLATFORM),PC) # Linux 2.6 LINUX_SRC = /lib/modules/$(shell uname -r)/kernel/build # Linux 2.4 Change to your local setting #LINUX_SRC = /usr/src/linux-2.4 LINUX_SRC_MODULE = /lib/modules/$(shell uname -r)/kernel/drivers/net/wireless/ CROSS_COMPILE = endif =================================================== Linuxを始めてまだ一週間程度で右も左も分からないので、 変な質問の仕方をしているかもしれませんが、 是非ご教授、アドバイス等を頂きたいと思います。 よろしくお願いします。

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

  • ベストアンサー
  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.2

そのエラーで検索するといくつか見つかりますが、要はカーネル2.6.29での変更によりソースに互換がなくなったということのようです。 最新のソースをralinkから入手し直すとか、ソースにパッチを当てるとかいくつか解法らしきものは見当たりましたが……

shibacoco09
質問者

お礼

返事が遅くなり申し訳ありません。 実は未だにMakeが上手くいっておりませんが、 ソースの入手も含めて、もう少し自力で調べてみようと思います。 ご丁寧にありがとうございました。

その他の回答 (1)

  • D-Matsu
  • ベストアンサー率45% (1080/2394)
回答No.1

そのシェルスクリプトなら、動作中のカーネルバージョンに応じて勝手にLINUX_SRCは決まります。 単にカーネルソースパッケージを入れてないか、動作中カーネルと同じバージョンのものが入っていないかのどちらかでしょう。

shibacoco09
質問者

お礼

ありがとうございます。 kernelのheaderパッケージをインストールしたら上記エラーは出なくなりました。 ただし、代わりの以下のエラー(一部抜粋)が出てしまいました。 [..../] In function ‘RTMPReadParametersHook’: 808:error: ‘struct task_struct’ has no member named ‘fsuid’ make[4]: *** [/../os/linux/rt_profile.o] エラー 1 make[3]: *** [/os/linux] エラー 2 make[2]: *** [sub-make] エラー 2 make[1]: *** [all] エラー 2 make[1]: ディレクトリ `/usr/src/linux-headers-2.6.32-5-amd64' から出ます make: *** [LINUX] エラー 2 どのような原因で上記エラーが出ているか、もしくはその解決法等分かりますでしょうか?

関連するQ&A

  • Debian Linux lenny のカーネルソースはどこにあるので

    Debian Linux lenny のカーネルソースはどこにあるのでしょうか? 以下のようなコマンドを叩いてみたのですが、/usr/src 以下にカーネルソースが展開されないのですが、よかったら、相談に乗ってください。 # uname -a Linux hogehoge 2.6.26-2-686 #1 SMP Wed Nov 4 20:45:37 UTC 2009 i686 GNU/Linux # apt-get build-dep linux-source-2.6.26-2-686 パッケージリストを読み込んでいます... 完了 依存関係ツリーを作成しています 状態情報を読み取っています... 完了 E: linux-source-2.6.26-2-686 のソースパッケージが見つかりません

  • 今使用しているカーネルのディレクトリはどこ?

    VirtualBoxでCentOS5.4をゲストOSにして、guest additionを入れようとしました。 インストールを始めると以下のようにエラーがでました。 Uninstalling old VirtualBox DKMS kernel modules [ OK ] Building the VirtualBox Guest Additions kernel modules [失敗] Your system does not seem to be set up to build kernel modules. Look at /var/log/vboxadd-install.log to find out what went wrong. ↑vboxadd-install.logでしらべろということなので、catで↓その内容を下に記します Makefile:23: *** Error: unable to find the sources of your current Linux kernel. Specify KERN_DIR=<directory> and run Make again.. 中止. Creating user for the Guest Additions. Creating udev rule for the Guest Additions kernel module. あなたの現在のlinuxカーネルが見つからないということですよね Specify KERN_DIR=<directory> これはカーネルのディレクトリをしっかり、示せということ?だと思いましたので uname -r をして 2.6.18-164.el5 これが今のカーネルのバージョンでこれを export KERN_DIR=/usr/src/kernels/2.6.18-164.el5 と思ったのですが、kernelsディレクトリには2.6.18-164.el5ではなく 2.6.18-194.26.1.el5-PAE-i686と2.6.18-194.26.1.el5-iしかありませんでした。 今現在使用しているカーネルのバージョンの場所はどこにあるのでしょうか? まだlinux初心者ですので、根本的に勘違いしているとこも多いと思いますが、よろしくお願いします。 もしくはどなたか、Linuxカーネルのことなどが勉強できるようなサイトを教えていただけるととても助かります。

  • Debian+カーネル3.0.1での起動時のエラー

    DebianSqueeze(i386)を使用しています。 先日、カーネルを2.6.39.3から3.0.1に変更しました。 そしたら起動時に省電力機能のモジュール読み込みで次のようなエラーが出るようになりました。 Loading cpufreq kernel modules... FATAL: Error Inserting cpufreq_nforce2 (/lib/modules/3.0.1/kernel/drivers/cpufreq/cpufreq-nforce2.ko) No such Device FATAL: Error Inserting longhaul (/lib/modules/3.0.1/kernel/drivers/cpufreq/longhaul.ko) No such Device FATAL: Error Inserting longrun (/lib/modules/3.0.1/kernel/drivers/cpufreq/longrun.ko) No such Device FATAL: Error Inserting p4_clockmod (/lib/modules/3.0.1/kernel/drivers/cpufreq/p4_clockmod.ko) No such Device FATAL: Error Inserting gx_suspmod (/lib/modules/3.0.1/kernel/drivers/cpufreq/gx_suspmod.ko) No such Device FATAL: Error Inserting speedstep_ich (/lib/modules/3.0.1/kernel/drivers/cpufreq/speedstep-ich.ko) No such Device FATAL: Error Inserting speedstep_centrino (/lib/modules/3.0.1/kernel/drivers/cpufreq/speedstep-centrino.ko) No such Device FATAL: Error Inserting speedstep_smi (/lib/modules/3.0.1/kernel/drivers/cpufreq/speedstep-smi.ko) No such Device FATAL: Error Inserting acpi_cpufreq (/lib/modules/3.0.1/kernel/drivers/cpufreq/acpi-cpufreq.ko) No such Device modprobeでacpi-cpufreqを読み込もうとすると FATAL: Error inserting acpi_cpufreq (/lib/modules/3.0.1/kernel/drivers/cpufreq/acpi-cpufreq.ko): Device or resource busy とのエラーが出ますが、p4-clockmodは正常に読み込めます。 このままでも使用には問題がないのですが、なにかすっきりしないので解決できないでしょうか。 ちなみにPCはCPU Core2Duo E4400、M/B P35T-A、メモリ 4GBでEISTはオフです。 同じくDebianSqueezeでPentium4のPCでは3.0.1でも上のようなエラーは出ませんでした。 カーネルの設定はデバイスドライバをある程度削ってるぐらいです。 よければ御知恵をお貸し下さい。お願い致します。

  • LANアダプターを認識させたいのですが・・・

    Linux初心者です。 OS:Red Hat Linux9です。 eth1にcorega CG-LAPCIGTを認識させたいのですが、 以下http://www.corega.co.jp/product/os/redhatj9.txtより ----------------------------------------------- ●CG-LAPCIGT 使用時の設定方法 本PCIカードはChip RT8169S-32(RealTek)を使っております。 本ボードでは、r8169 driverを利用します。 * /tmp配下で構築することを想定しています。 a. Driverの入手(pcigt.tar.gz) http://www.corega.co.jp/product/os/source/pcigt.tar.gz b. cd /usr/src/linux c. cp configs/kernel-2.4.20-ix86.config .config ix86=i386,i586,i686のいずれか d. make oldconfig dep e. cd /tmp f. tar xvfz pcigt.tar.gz g. cd 8169 h. Makefile修正 NEW_INCLUDE_PATHとversion.hの位置を修正 全て、/usr/src/linux-2.4とすること。 i. make j. mv /lib/modules/`uname -r`/kernel/drivers/net/r8169.o \ /lib/modules/`uname -r`/kernel/drivers/net/r8169.org k. cp r8169.o /lib/modules/`uname -r`/kernel/drivers/net/ l. depmod -ae エラーが発生する場合がありますが、無視しても問題ありません。 m. 再起動 n. kudzuで認識するので、設定 ----------------------------------------------- を参考に設定しています。 b. cd /usr/src/linuxなのですがそのようなフォルダがありません。作成するのでしょうか? それとも/usr/src/にはlinux-2.4というフォルダがありますので cd /usr/src/linux-2.4/ とするのでしょうか? linux-2.4で進めたところ 上記 i. makeのところで make: *** 'r8169.o'に必要なターゲット '/usr/src/linux-2.4/version.h'をmakeするルールがありません. 中止。 となってしまいます。 宜しくお願いします。

  • RHEL ES 4のkernel-source

    RedHat Enterprise Linux ES 4のインストール中です。 SMP対応のカーネルソースをダウンロードしたいのですが、FTPサイトには 通常のカーネルソースしか見当たりません。 ftp://updates.redhat.com/enterprise/4ES/en/os/SRPMS/kernel-2.6.9-11.EL.src.rpm どこでダウンロードすることができるのでしょうか? ちなみに、このサーバで「uname -r」を実行した結果は下記のとおりです。 2.6.9-11.ELsmp

  • Linuxカーネル sampleプログラムについて

    現在、linuxのsysfsについて勉強中です。 kernel/samples/kobjectの下にある、 kobject-example.c をカーネルにbuilt-inさせ、 ビルドを行い、uImageを作成しました。 具体的な手順は以下のとおりです。 make ARCH=arm CROSS_COMPILE=../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi- menuconfig Kernel hacking ---> [*] Sample kernel code ---> <M> Build kobject examples -- loadable modules only make ARCH=arm CROSS_COMPILE=../prebuilt/linux-x86/toolchain/arm-eabi-4.4.3/bin/arm-eabi- uImage サンプルソースの説明に * This module shows how to create a simple subdirectory in sysfs called * /sys/kernel/kobject-example In that directory, 3 files are created: * "foo", "baz", and "bar". If an integer is written to these files, it とあったので、 カーネルを起動させ、/sys/kernelの下をみにいったのですが、 存在していませんでした。 そこで、kobject-example.cをkernel/drivers/miscの下に移動させ、 カーネルモジュール(kobject-example.ko)を作成し、insmodしたところ、 下記のようにちゃんとフォルダkobject_exampleが生成されていました。 /sys/kernel # /sys/kernel # ls -l kobject_example/ total 0 -rw-rw-rw- 1 0 0 4096 Jan 1 00:00 bar -rw-rw-rw- 1 0 0 4096 Jan 1 00:02 baz -rw-rw-rw- 1 0 0 4096 Jan 1 00:00 foo ここで質問です。 kernel/samplesの下におかれているサンプルソースは、 このフォルダ直下においていては動作テストをすることができないのでしょうか? 上記のように、わざわざkernel/drivers/miscの下などに移動させて、モジュールの 作成を行わないといけないのでしょうか? ご教示のほどよろしくお願いします。

  • カーネルアップグレード後、unameでバージョンが変わってない

    カーネルアップグレード後、unameでバージョンが変わってないという状況になっています。 uname -r uname -r で表示されるカーネルのバージョンは、そもそもどこの情報を表示してるのでしょうか? 実際にカーネルはバージョンアップしてるけど、uname では古いバージョンが表示されるってことがあるのでしょうか? [OS]TurboLinux 6 Advanced Server [Kernel]2.2.18-1 から 2.4.19 へアップグレード

  • カーネルのインストールがうまくいかない

    Redhat9.0を使っていて,カーネルは2.4.20でしたが, カーネル2.4.18が必要となって,バージョンダウンする必要がありました. そこで,カーネルのtar.gzファイルを /usr/src/linux-2.4.18以下に展開し, make mrproper make menuconfig make dep make bzImage make modules make modules_install を行いました. しかし再起動し,grubでlinux-2.4.18を選んで起動しようとすると途中で kernel Panic :I have no root and I want to scream とエラーが出ます. どのようにしたら起動できるようになるでしょうか?

  • redhatのkernelのrpmは必須?

    redhat7.1を使用していますが、kernelがアップグレードされたときに、souceのrpmなどは結構なサイズになっていますよね。そこで、他の早い回線を使用しているマシンで、コンパイルしたものをCD-Rか何かで持って帰って、コピーするとした場合、不具合は起きるのでしょうか? 具体的に何をコピーするかと言うと、vmlinuz, System.map, initrdの3つと、/lib/modules/以下のモジュール(tarで固めます)です。 kernelのrpm(kernel,kernel-headers,kernel-source)だと30MB近くありますが、この方法だと3MB程度になりますが、不具合が起きそうで不安です。

  • Debian(woody)のカーネルのソースを取得したい

    /usr/src/配下にDebian(woody)のカーネルのソースを配置したいのですがどうしたらよいでしょうか?? 現在は空っぽです。 私のDebianの知識もほとんどありません。 apt-getしたらいいのかなと思いいろいろ検索し情報収集してるのですが、なかなか該当する情報を得られず質問させていただきました。 用途としてはlinux-wlan-ngのmake config時の"Linux source directory"参照先にしたいのです。 どうぞよろしくおねがいいたします。