Upgrade Alsa (1.0.23) on Ubuntu Karmic Koala 9.10
![]() |
Ubuntu Karmic Koala 9.10 is coming by default with the version 1.0.20 of Alsa so I decided to upgrade to the last version wich is 1.0.23. |
What is Alsa (Advanced Linux Sound Architecture) ?
According to Wikipedia, Alsa is a Linux kernel component intended to replace the original Open Sound System (OSS) for providing device drivers for sound cards. Some of the goals of the ALSA project at its inception were automatic configuration of sound-card hardware, and graceful handling of multiple sound devices in a system, goals which it has largely met.
Installation :
To do this, we must begin by determining our version of alsa as follows :
cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version 1.0.20.
To avoid problems during the upgrade of Alsa-utils, we need to stop it with the following command :
sudo /sbin/alsa-utils stop
sudo apt-get -y install build-essential ncurses-dev gettext xmlto libasound2-dev
sudo apt-get -y install linux-headers-`uname -r` libncursesw5-dev
Then, we go in our personal folder and download alsa-driver, alsa-lib and alsa-utils :
cd ~
rm -rf ~/alsa* ~/.pulse*
wget ftp://ftp.alsa-project.org/pub/driver/alsa-driver-1.0.23.tar.bz2
wget ftp://ftp.alsa-project.org/pub/lib/alsa-lib-1.0.23.tar.bz2
wget ftp://ftp.alsa-project.org/pub/utils/alsa-utils-1.0.23.tar.bz2
After that, we create a new folder for the compilation and installation of the 3 files. Then, we move the 3 tar files that we just downloaded in this folder :
sudo rm -rf /usr/src/alsa
sudo mkdir -p /usr/src/alsa
cd /usr/src/alsa
sudo cp ~/alsa* .
Unpack the 3 tar files :
sudo tar xjf alsa-driver*
sudo tar xjf alsa-lib*
sudo tar xjf alsa-utils*
We compile and install alsa-driver :
cd alsa-driver*
sudo ./configure
sudo make
sudo make install
We compile and install alsa-lib :
cd ../alsa-lib*
sudo ./configure
sudo make
sudo make install
We compile and install alsa-utils :
cd ../alsa-utils*
sudo ./configure
sudo make
sudo make install
Then, we remove the 3 tar files in our personal folder that are not anymore necessary :
rm -f ~/alsa-driver*
rm -f ~/alsa-lib*
rm -f ~/alsa-utils*
Then, just restart your computer and your alsa version should be 1.0.23!
You can verify that you have now indeed have this version of alsa :
cat /proc/asound/version
dvanced Linux Sound Architecture Driver Version 1.0.23.
Compiled on Apr 17 2010 for kernel 2.6.31-21-generic (SMP).
Just to be sure everything is well configured, execute this command :
sudo alsaconf
and reboot again!

April 17th, 2010 at 8:31 pm
I’m getting an error from alsa-project.org site about expired dns.
So sad, I just bought a VAIO and ran into this bug: https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/537448
I was happy to see your post, but with not working web site it just add frustration.
April 18th, 2010 at 11:42 am
Kernel crash !
I followed these upgrade steps and successfully created alsa-1.023 on my Ubuntu-9.10 with kernel 2.6.31-20 on a 64bit AcerAspire-1810TZ.
But when I plug in my EMU 0202 USB sound device, I see error messagees in /var/log:
ALSA pcm.c:174: 4:1:1: endpoint lacks sample rate attribute bit, cannot set.
and subsequently kernel crashes with:
Pid: 2203, comm: modprobe Not tainted (2.6.31-20-generic #58-Ubuntu) Aspire 1810TZ
EIP: 0060:[] EFLAGS: 00000282 CPU: 0
EIP is at snd_usb_find_desc+0xc/0×80 [snd_usb_audio]
EAX: f0eae81a EBX: f0c9fd84 ECX: 00000000 EDX: f0eae880
ESI: 00000004 EDI: f0c9fc8c EBP: f0c9fbf0 ESP: f0c9fbe0
DS: 007b ES: 007b FS: 00d8 GS: 00e0 SS: 0068
CR0: 8005003b CR2: b590300c CR3: 30988000 CR4: 000406d0
DR0: 00000000 DR1: 00000000 DR2: 00000000 DR3: 00000000
DR6: ffff0ff0 DR7: 00000400
Call Trace:
[] find_audio_control_unit+0×22/0×60 [snd_usb_audio]
[] check_input_term+0×28/0×230 [snd_usb_audio]
[] parse_audio_unit+0x40c/0xd00 [snd_usb_audio]
[] ? lock_timer_base+0×27/0×50
[] ? ifind_fast+0x8a/0×90
[] ? ifind_fast+0x8a/0×90
[] build_audio_procunit+0x7c/0x4b0 [snd_usb_audio]
[] parse_audio_unit+0xb2/0xd00 [snd_usb_audio]
[] ? __sysfs_add_one+0x1f/0xc0
[] ? iput+0×20/0×60
[] ? __blocking_notifier_call_chain+0x4f/0×60
[...]
How to fix this or trace it further down ?
Any ideas welcome
Joachim
April 19th, 2010 at 3:48 pm
Maybe you should try this http://www.dd-wrt.com/phpBB2/viewtopic.php?p=432457#432457
April 22nd, 2010 at 5:29 am
Installation on Linux Mint 8 no problem, sound ok, thanks.
April 25th, 2010 at 3:55 pm
Have you tried the Lucid Beta/RC yet? It’s sporting 1.0.21 and seems to do a good job of detecting the best sound configuration, even the bass seems to work.
April 27th, 2010 at 3:53 am
so sad i run all the steps, my lenovo m58 sff desktop still have no sound, glad to have a try here.
April 27th, 2010 at 3:58 am
@Sam Fong
This posts here on this blog tend to be specific towards Acer Aspire 6920g laptop users, but the upgrading of ALSA should have worked for anyone using Ubuntu 9.10. If your sound isn’t working, it implies an issue with either your driver/driver configuration, hardware or needs some tweaking/work in Ubuntu to get working right. Unless the ALSA team had specifically addressed the specific issue you were having in this newest release, it’s doubtful it would have solved your problem.
I do feel your pain though, before this blog, I had a lot of trouble with my sound too.
I reccommend searching the Ubuntu Forums for help with getting sound to work on a Lenovo m58, if there aren’t any, create a new thread. The people there are very friendly and will get you listening to music. =]
May 3rd, 2010 at 5:02 am
Thanks… it worked for Ubunto 9.10 – the Karmic Koala…
May 11th, 2010 at 7:27 am
it works for me! thx a lot
May 12th, 2010 at 7:13 pm
thx man u are the best here
May 13th, 2010 at 10:40 am
After many failures and frustrations from other websites, these instructions worked…Thanks!!!
June 1st, 2010 at 12:19 am
Hi Stephane,
I appreciate you sharing your knowledge and from the reactions of others I do understand that your code is working well. Alas, I am not very happy after I tried your installation guide. My computer is now out of business having the bug ‘soft lockup – CPU#1 etc..’. It must have to do something with the loading of modules as it is always the function modprobe which causes the soft lockup. Soft lockup ‘sounds’ like a kind of memory leak causing the CPU to be used 100%, isn’t it? At least a strange phenomena is that the /proc directory is totally empty.
Is your installation really only useful for an Acer like David says? I did not understand that from your blogpost. I have an AMD 64 bits desktop and Lucid Lynx installed. Do you know any possible solution?
With kind regards,
Loek
June 1st, 2010 at 2:39 pm
when i compile and install alsa-utils i get an error:
chuck@desktop:/usr/src/alsa/alsa-utils-1.0.23$ cd ../alsa-utils*
chuck@desktop:/usr/src/alsa/alsa-utils-1.0.23$ sudo ./configure
checking for a BSD-compatible install… /usr/bin/install -c
checking whether build environment is sane… yes
checking for gawk… no
checking for mawk… mawk
checking whether make sets $(MAKE)… yes
checking whether NLS is requested… yes
checking for msgfmt… /usr/bin/msgfmt
checking for gmsgfmt… /usr/bin/msgfmt
checking for xgettext… /usr/bin/xgettext
checking for msgmerge… /usr/bin/msgmerge
checking for style of include used by make… GNU
checking for gcc… gcc
checking for C compiler default output file name… a.out
checking whether the C compiler works… yes
checking whether we are cross compiling… no
checking for suffix of executables…
checking for suffix of object files… o
checking whether we are using the GNU C compiler… yes
checking whether gcc accepts -g… yes
checking for gcc option to accept ISO C89… none needed
checking dependency style of gcc… gcc3
checking build system type… x86_64-unknown-linux-gnu
checking host system type… x86_64-unknown-linux-gnu
checking for ld used by GCC… /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld… yes
checking for shared library run path origin… done
checking for CFPreferencesCopyAppValue… no
checking for CFLocaleCopyCurrent… no
checking for GNU gettext in libc… yes
checking whether to use NLS… yes
checking where the gettext function comes from… libc
checking for cross-compiler… gcc
checking for gcc… (cached) gcc
checking whether we are using the GNU C compiler… (cached) yes
checking whether gcc accepts -g… (cached) yes
checking for gcc option to accept ISO C89… (cached) none needed
checking dependency style of gcc… (cached) gcc3
checking for a BSD-compatible install… /usr/bin/install -c
checking whether ln -s works… yes
checking for ALSA CFLAGS…
checking for ALSA LDFLAGS… -lasound -lm -ldl -lpthread
checking for libasound headers version >= 1.0.16… found.
checking for snd_ctl_open in -lasound… yes
checking for alsa/pcm.h… yes
checking for alsa/mixer.h… yes
checking for alsa/rawmidi.h… yes
checking for alsa/seq.h… yes
checking for librt… checking for clock_gettime in -lrt… yes
checking for xmlto… yes
checking how to run the C preprocessor… gcc -E
checking for grep that handles long lines and -e… /bin/grep
checking for egrep… /bin/grep -E
checking for ANSI C header files… yes
checking for ncursesw5-config… yes
checking for curses library… ncursesw
checking for curses header name…
checking for curses compiler flags… -I/usr/include/ncursesw
checking for curses NLS support… yes
checking for sys/types.h… yes
checking for sys/stat.h… yes
checking for stdlib.h… yes
checking for string.h… yes
checking for memory.h… yes
checking for strings.h… yes
checking for inttypes.h… yes
checking for stdint.h… yes
checking for unistd.h… yes
checking panel.h usability… yes
checking panel.h presence… yes
checking for panel.h… yes
checking menu.h usability… yes
checking menu.h presence… yes
checking for menu.h… yes
checking form.h usability… yes
checking form.h presence… yes
checking for form.h… yes
checking for new_panel in -lpanelw… no
configure: error: panelw library not found
chuck@desktop:/usr/src/alsa/alsa-utils-1.0.23$ sudo make
make: *** No targets specified and no makefile found. Stop.
chuck@desktop:/usr/src/alsa/alsa-utils-1.0.23$ sudo make install
any help would be greatly appreciated.
chuck
June 1st, 2010 at 3:14 pm
issue resolved after some research. still haven’t been able to get sound over hdmi but i feel like i’m making progress:
http://monespaceperso.org/blog-en/2009/10/29/upgrade-alsa-1-0-21-on-ubuntu-karmic-koala-9-10/
used code:
sudo ln -s libpanelw.so.5 /usr/lib/libpanelw.so
sudo ln -s libformw.so.5 /usr/lib/libformw.so
sudo ln -s libmenuw.so.5 /usr/lib/libmenuw.so
sudo ln -s libncursesw.so.5 /lib/libncursesw.so
June 16th, 2010 at 8:26 am
I have a Dell mini 10 running Ubuntu 9.10. The sound pretty much works with the exception of the internal mic. which does work in XP but not in Ubuntu.(external mic does work in Ubuntu) I found a post that encouraged me to add linux-backports-modules-alsa-karmic-generic which I did. The internal mic is still not working. Currently I have Alsa version 1.0.22.1 with library 1.0.20 and utilities 1.0.20. Alsamixer says that i have HDA Intel MID card with Silicon Image SiI1392 HDMI chip. I am wondering if I go through the upgrade to 1.0.23 alsa can I expect the audio to work with the internal mic? Do my present differing alsa version and library versions present a problem to getting the mic working as I am? Thanks a bunch.
June 24th, 2010 at 3:53 am
Hi thanks it works om my laptop DELL XPS M1730, Ubuntu Carmic Koala
July 2nd, 2010 at 10:35 am
Worked like a charm. Thank you!!!
August 2nd, 2010 at 4:28 pm
What a wonderful ‘how-to’. The clearest one I’ve seen. You tell us step-by-step exactly what we are going to do and give the commands for each step. And at the end all alsa sound problems have gone. Brilliant. Thanks.
August 10th, 2010 at 2:13 am
After attempting different solutions, this is the Bible to fix ALSA issues.
August 15th, 2010 at 3:06 pm
I found the post & script here very helpful, easy, and trouble-free with regard to upgrading ALSA:
http://ubuntuforums.org/showthread.php?p=6589810
if you upgrade your kernel, etc., just re-run the upgrade script to get everything in sync.
September 5th, 2010 at 1:20 pm
the second command to install tools is not working:
sudo apt-get -y install linux-headers-`uname -r` libncursesw5-dev
I get only > in response.
any ideas are appreciated.
September 5th, 2010 at 1:28 pm
after re-booting I got this response:
sudo apt-get -y install linux-headers-’uname -r’ libncursesw5-devReading package lists… Done
Building dependency tree
Reading state information… Done
E: Couldn’t find package linux-headers-uname -r