Need to fix bugs causes compiling error. One is related to Open Sound System Emuration. The other is caused by patches.

Bug #832137 reported by Takashi Sakamoto
40
This bug affects 8 people
Affects Status Importance Assigned to Milestone
alsa-driver (Ubuntu)
Expired
Undecided
Unassigned

Bug Description

This source cannot be used with module-assistant
because this source includes some bugs causes compiling error.
You can see this error in the process below.

1. $ sudo apt-get install module-assistant;
2. $ sudo module-assistant prepare;
3. $ sudo module-assistant update;
4. $ sudo module-assistant auto-install alsa;
5. failed.

The bugs in this source are classified two parts below.

1. Open Sound System Emulation issue
2. troubles by modification when creating package

1. Open Sound System Emulation issue
Ubuntu's generic kernel has no options related to Open Sound System.
You can see the kernel configuration in /boot/config-2.6.38-11-generic
if you use 2.6.38-11-generic kernel.

$ cat /boot/config-2.6.38-11-generic;
# CONFIG_SOUND_OSS_CORE is not set
# CONFIG_SND_MIXER_OSS is not set
# CONFIG_SND_PCM_OSS is not set
# CONFIG_SND_SEQUENCER_OSS is not set

So Open Sound System Emuration should be disabled in ALSA, too.
But as a default, this source enable it.

As a result, even if we are success to compile the source and install them,
then modprobe reject to call them with errors.

For example:
$ dmesg;
[ 3.015889] snd: Unknown symbol unregister_sound_special (err 0)
[ 3.016859] snd: Unknown symbol register_sound_special_device (err 0)
[ 3.019419] snd_timer: Unknown symbol snd_info_register (err 0)
[ 3.019473] snd_timer: Unknown symbol snd_info_create_module_entry (err 0)
[ 3.019556] snd_timer: Unknown symbol snd_info_free_entry (err 0)
[ 3.019697] snd_timer: Unknown symbol __snd_printk (err 0)
[ 3.019750] snd_timer: Unknown symbol snd_iprintf (err 0)
[ 3.019827] snd_timer: Unknown symbol snd_ecards_limit (err 0)
[ 3.019908] snd_timer: Unknown symbol snd_oss_info_register (err 0)
[ 3.019961] snd_timer: Unknown symbol snd_unregister_device (err 0)
[ 3.020049] snd_timer: Unknown symbol snd_device_new (err 0)
[ 3.022230] snd_timer: Unknown symbol snd_register_device_for_dev (err 0)

To avoid this, it's good to enable --with-oss=no option in configure script
or put some equivalent codes into configure script.
The latter is good to use this with module-assistant.

2. troubles by modification when creating package
I generated diff between this source and original ALSA source and realized two modification.

2-1. half-finished replacement of macros
In this source, @CONFIG_SND_KERNELSRC@ is rewrited as @CONFIG_SND_KERNELDIR@ but it's half-finished.
Two files still include @CONFIG_SND_KERNELSRC@ and this causes error
because @CONFIG_SND_KERNELSRC@ is not extracted.

Files:
/include/linux/pci_ids_compat.h
/include/linux/i2c_id.h

To avoid this, it's good to modify the lines in these two files of this source.

(I've already reported this but it was expired
Compile error with "@CONFIG_SND_KERNELSRC@/include/linux/pci_ids.h: No such file or directory".
https://bugs.launchpad.net/ubuntu/+source/alsa-driver/+bug/778887)

2-2. Some files are removed because of debian packaging policy.
Some files related to five modules are removed. But as a default,
they are compile target although missing makefile.

modules:
 - cs46xx
 - cs46xx-new-dep
 - maestro3
 - ymfpci
 - korg1212

To solve this, it's to good to exclude these modules by configure option
or disable some codes related to them in configure script.
The latter is good to use this source with module-assistant.

This source makes no sence and currently we need to use the original alsa source.
I hope you to put high priority to this bug and release modified package as soon as possible.

Regards

ProblemType: Bug
DistroRelease: Ubuntu 11.04
Package: alsa-source 1.0.24+dfsg-0ubuntu1
ProcVersionSignature: Ubuntu 2.6.38-8.42~ppa2-lowlatency 2.6.38.2
Uname: Linux 2.6.38-8-lowlatency i686
AlsaVersion: Advanced Linux Sound Architecture Driver Version 1.0.23.
Architecture: i386
ArecordDevices:
 **** List of CAPTURE Hardware Devices ****
 card 0: Intel [HDA Intel], device 0: AD198x Analog [AD198x Analog]
   Subdevices: 2/2
   Subdevice #0: subdevice #0
   Subdevice #1: subdevice #1
AudioDevicesInUse:
 USER PID ACCESS COMMAND
 /dev/snd/controlC0: mocchi 1625 F.... pulseaudio
Card0.Amixer.info:
 Card hw:0 'Intel'/'HDA Intel at 0xfe020000 irq 44'
   Mixer name : 'Analog Devices AD1984'
   Components : 'HDA:11d41984,17aa20d6,00100400'
   Controls : 31
   Simple ctrls : 19
Card29.Amixer.info:
 Card hw:29 'ThinkPadEC'/'ThinkPad Console Audio Control at EC reg 0x30, fw 7MHT25WW-1.03'
   Mixer name : 'ThinkPad EC 7MHT25WW-1.03'
   Components : ''
   Controls : 1
   Simple ctrls : 1
Card29.Amixer.values:
 Simple mixer control 'Console',0
   Capabilities: pswitch pswitch-joined penum
   Playback channels: Mono
   Mono: Playback [on]
CurrentDmesg:
 [ 34.525939] e1000e 0000:00:19.0: eth0: 10/100 speed: disabling TSO
 [ 34.526147] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
 [ 38.614492] EXT4-fs (sda1): re-mounted. Opts: errors=remount-ro,commit=0
 [ 38.706488] EXT4-fs (sda2): re-mounted. Opts: commit=0
 [ 44.706066] eth0: no IPv6 routers present
Date: Wed Aug 24 00:55:29 2011
InstallationMedia: Ubuntu-Studio 11.04 "Natty Narwhal" - Alpha i386 (20110112)
PackageArchitecture: all
ProcEnviron:
 LANGUAGE=ja_JP:ja:en_GB:en
 LANG=ja_JP.UTF-8
 SHELL=/bin/bash
SourcePackage: alsa-driver
UpgradeStatus: No upgrade log present (probably fresh install)
dmi.bios.date: 10/09/2009
dmi.bios.vendor: LENOVO
dmi.bios.version: 7NETC1WW (2.21 )
dmi.board.name: 7675A63
dmi.board.vendor: LENOVO
dmi.board.version: Not Available
dmi.chassis.asset.tag: No Asset Information
dmi.chassis.type: 10
dmi.chassis.vendor: LENOVO
dmi.chassis.version: Not Available
dmi.modalias: dmi:bvnLENOVO:bvr7NETC1WW(2.21):bd10/09/2009:svnLENOVO:pn7675A63:pvrThinkPadX61:rvnLENOVO:rn7675A63:rvrNotAvailable:cvnLENOVO:ct10:cvrNotAvailable:
dmi.product.name: 7675A63
dmi.product.version: ThinkPad X61
dmi.sys.vendor: LENOVO

Revision history for this message
Takashi Sakamoto (mocchi) wrote :
description: updated
summary: Need to fix bugs causes compiling error. One is related to Open Sound
- System Emuration. The other is caused by modification when creating
- package.
+ System Emuration. The other is caused by patches.
Changed in alsa-driver (Ubuntu):
status: New → Confirmed
Revision history for this message
Maarten (n8ws) wrote :

Your bug report does not entirely correspond to my experience, using the Alsa-Ubuntu source available available below.

At point 2-1 you mention the files below are to be edited. However, the first does not seem to exist in that directory but only in the one below. The second is only created after the package is configured.
/include/linux/pci_ids_compat.h
/include/linux/i2c_id.h

Your cure does correspond to my experience. However, it needs to be applied to the files mentioned below. Thereafter the compile fails as described in your bug-report at 2-2 which does correspond to my experience.
include/pci_ids_compat.h.in
include/i2c-id_compat.h.in

Source package Alsa-Ubuntu:
http://www.voyage.hk/dists/0.7/alsa-driver/alsa-source_1.0.24+dfsg-0ubuntu1_all.deb

Regards

Revision history for this message
Takashi Sakamoto (mocchi) wrote :

Maarten,
Yes. You're right. The two files are generated by running configure script from templates which you mentioned.

This week I review the patch and find the bug. It's in distinguish_kernel_makefile_and_source_dirs.patch in line 45 to 55.

+echo "\$(warning KBUILD_SRC=\$(KBUILD_SRC))" > "$dir"/Makefile
+kernelsrc=$(make -C "$CONFIG_SND_KERNELDIR" M="$dir" 2>&1 >/dev/null | \
+ sed -n "s#^$dir/Makefile:.*: KBUILD_SRC=\(.*\)\$#\1#; T; p; q")
+rm -rf "$dir"
+if test -z "$kernelsrc"; then
+ AC_MSG_RESULT(failed)
+ exit 1
+else
+ CONFIG_SND_KERNELSRC="$kernelsrc"
+ AC_MSG_RESULT($kernelsrc)
+fi

With configure script generated by autoconf, we fail to set $CONFIG_SND_KERNELSRC into $kernelsrc in Ubuntu environment.
I cannot generate fix patch with my poor skills... I hope this may help you.

Revision history for this message
Marcus Tomlinson (marcustomlinson) wrote :

This release of Ubuntu is no longer receiving maintenance updates. If this is still an issue on a maintained version of Ubuntu please let us know.

Changed in alsa-driver (Ubuntu):
status: Confirmed → Incomplete
Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for alsa-driver (Ubuntu) because there has been no activity for 60 days.]

Changed in alsa-driver (Ubuntu):
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.