make modules_install returns script?
Afternoon -
long time reader, first time poster. :) Got Slack X up and running, and then recompiled my kernel with 2.6.8. Read through a number of tutorials up on the forums (thank you Shilo & DaOne *ever* so much). With the stock kernel, alsa support was up and running just fine, after simply running alsaconf. Since the recompile, however, I can't for the life of me get sound support back. A few couple things concern me at the moment, which I can't seem to get resolved. First, "make modules_install" seems to go just fine. It does, however, return a script line at the end which the more I look at it, doesn't look right, and looking at it now, it happens while it's making the sound support (it only finishes through virmidi, snd-dummy, and snd-virmidi, leaving the rest out, which might explain problem two). The script is as follows - Code:
if [ -r System.map ], then /sbin/depmod -ae -F System.map 2.6.8, fi And secondly, Alsaconf (this may be because of problem a, maybe someone can confirm this?) returns errors of "No supported PnP or PCI card found.". After running the snddevices script from the drivers 1.0.6a (from alsa-project.org), it created the mixer devices, but alsaconf still returns the error. I know it got built into the kernel, because when trying to install the drivers manually, they kick back saying "kernel support found, aborting", or something to that effect. If it's neccessary, the system is my Sony Vaio notebook (PCG-FXA49) 1.2ghz Athlon, with 512mb Ram, running Slack X and KDE 3.2.3. Again, kernel is up to 2.6.8, but the stock 2.4 kernel is still loaded into lilo. In advance, I greatly appreciate *any* suggestions you might have, but at the very least, thanks for taking the time to read this. :) Cheers, -- John-Luke |
Let me attack your first question.
That script will always run after make modules_install. You want it to run. Here is what it means. IF System.map exists and is readable (if [ -r System.map ]) THEN run /sbin/depmod -ae -F System.map for kernel 2.6.8, END if statement. In English. Modules sometimes have dependences. For instance, loading the usb_storage module would be useless if I had not loaded the usb module first. Depmod will look at all the modules being installed and determine what their dependeces are if they exist. It all ties into a program called modprobe which can be used to load modules. If I say modprobe usb_storage then modprobe will know that usb must be loaded first and load it, then load usb_storage. Modprobe knows about the dependeces because depmod created a text file for modprobe to look at. The alternative way would be to type insmod usb_storage. However this will bitch and complian about missing symbols because usb must be loaded first. I would have to know that usb must be loaded first and do insmod usb, then insmod usb_storage. What seems easier? |
Beautiful. Makes sense. I guess I just would've expected it to do it quietly. as it is, it looks to me (on first glance, not being anywhere remotely knowledgable about scripting beyond "if" and "fi") as if it tries to do something it can't, or theres a bug so it spits out script. But as long as it's supposed to run, works for me. Thank you. :)
Know much about alsa? |
This statement confuses me.
Quote:
When your system is up and running, type uname -r. That will return your kernel version number. Also lets make sure that all the proper modules are loading since you have been compiling some. Type lsmod to list every module currently loaded. You can use modprobe -l to list all modules on your system that CAN be loaded. Then use modprobe to actually load what ever modules might be missing. |
What i mean by that is that i can still boot into 2.4 if i want to (i left it in lilo and in /boot). But it's definitely loading into 2.6.8.
lsmod returns nothing. It shows the data fields where there *should* be entries (Module, Size, Used By), but no data within it. Modprobe -l returns a number of different modules i'll skip detailing here, but for sound, only lists three: /lib/modules/2.6.8/kernel/sound/drivers/snd-virmidi.ko /lib/modules/2.6.8/kernel/sound/drivers/snd-dummy.ko /lib/modules/2.6.8/kernel/sound/core/seq/snd-seq-virmidi.ko I have the sneaking suspicion there should be more sound modules..? |
Modules are 100 percent optional. You don't need them, drivers and such can be compiled directly into your kernel. If modprobe -l is only returning 3 sound modules than in your kernel config you only selected 3 things to compile as a module.
Personally I keep my kernel as small as possible and compile everything I can as a module. I'm running 2.6.7 and have a built in Intel based sound card. I'm also using ALSA. Here is the output of my lsmod for reference: Code:
snd_pcm_oss 50600 0 |
I'll give that a shot here in a minute (compiling them as modules). What I can tell you right now though, is that they're being compiled into the kernel. Alsa support, sequencer support, and the OSS Mixer/PCM/Sequencer APIs are all being compiled (as is the AC'97 codec). Should I still be getting things like "no card detected" and "can't load snd module"? Or is my problem that they're *not* modules?
|
So, i followed the advice of this compile guide, which outlined a few steps not mentioned in the one I'd been using. Alongside that I chose a number of options as modules. That, combined with the detalis in the link above, a little bit of experience, and perhaps a bit of luck and fortune, came together to give me relative sound card support. Alsaconf picks it up, but the mixers still aren't being detected. There's a step somewhere involving running a script to creat /dev/dsp and /dev/mixer that I haven't followed yet, but i'm getting there.
At the very least, i'm closer than I was before. Thanks guys, for your time explaining. Hope i can return the favour sometime. :) Cheers, John-Luke |
All times are GMT -5. The time now is 02:26 PM. |