|
发表于 2005-1-31 02:04:02
|
显示全部楼层
firefox
回复 rr19xx兄 :
大哥谢谢你,经过昨晚到3:45的努力,终于听到了优美的声音,原来,这并非红旗,内核和alsa的问题,经过网上查找,
发现与IBM TP600E 的BIOS有关,如有上述原因的可到网上下载PS2.EXE程序,在DOS起动后,运行PS2.EXE PCIBUSPOWER DISABLE后
从起,再用红旗自带的声卡检测程序,要用内核的,选CS4232,IRQ:5,IO:0X530,DMA:1,DMA2:0,MPU IRQ:9,MPU IQ:0X330.
终于听到了老牛的声音,哈,哈,高兴,谢谢你!!!!
我的笔记本也是IBM thinkpad 600e,但是不明白上面这位大侠说的到网上下载PS2.EXE程序究竟如何使用(我已经下了,放在windows下,
但不会用,“在DOS起动后,运行PS2.EXE PCIBUSPOWER DISABLE后
从起,再用红旗自带的声卡检测程序,要用内核的,选CS4232,IRQ:5,IO:0X530,DMA:1,DMA2:0,MPU IRQ:9,MPU IQ:0X330.”不会做,而且
不知是不是这个原因,所以把步骤都发上来,请大家帮帮我,看看问题出在哪里。先谢谢大家了!!!)
我是下载的alsa-1.0.7 都是filename.tar.tar文件,请问如何在linux
下解压?我在windows下把它们解压成 fielname.tar.tar.out文件后,
在回到linux下 用 tar xvf file.tar.tar.out,生成 file.tar,再用
tar解压的。
我的笔记本是IBM thinkpad 600e, 不知道声卡类型,好象是后来检测出cs42XX,cs46xx,ISA三种,不太肯定对不对,用什么方法可以确定
查到吗?
使用redhat 9
内核 linux-2.4.20-8
#ln -s linux-2.4.20-8 linux
#cd /usr/src/linux
#make xconfig
在sound card support 选择M
save and exit
#make dep
[root@localhost alsa-driver-1.0.7]# ./configure --with-cards=cs46xx
[root@localhost root]# cd alsa-utils-1.0.7/
[root@localhost alsa-utils-1.0.7]# ./alsaconf
bash: ./alsaconf: is a directory
[root@localhost alsa-utils-1.0.7]# cd alsaconf/
[root@localhost alsaconf]# ./alsaconf
bash: ./alsaconf: 权限不够
[root@localhost alsaconf]# ./alsaconf.in
到这为止
,操作是否正确?
之后,检测到为thinkpad 600e 选择驱动cs46xx,(其他的都不支持似乎)因为开始在alsa-driver-1.0.7中./configure --with-cards=cs46xx
运行的。
我用的
Loading driver...
Starting sound driver: snd-cs46xx /lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol __write_lock_failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol kernel_flag_cacheline
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol __read_lock_failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd-cs46xx failed
done
Setting default volumes...
Saving the mixer setup used for this in /etc/asound.state.
./alsaconf.in: line 681: @sbindir@/alsactl: 没有那个文件或目录
===============================================================================
Now ALSA is ready to use.
For adjustment of volumes, use your favorite mixer.
Have a lot of fun!
[root@localhost alsaconf]# lsmod
Module Size Used by Not tainted
ide-cd 35708 0 (autoclean)
cdrom 33728 0 (autoclean) [ide-cd]
lp 8996 0 (autoclean)
parport 37056 0 (autoclean) [lp]
autofs 13268 0 (autoclean) (unused)
ds 8680 2
yenta_socket 13472 2
pcmcia_core 57216 0 [ds yenta_socket]
ipt_REJECT 3928 6 (autoclean)
iptable_filter 2412 1 (autoclean)
ip_tables 15096 2 [ipt_REJECT iptable_filter]
keybdev 2944 0 (unused)
mousedev 5492 1
hid 22148 0 (unused)
input 5856 0 [keybdev mousedev hid]
usb-uhci 26348 0 (unused)
usbcore 78784 1 [hid usb-uhci]
ext3 70784 1
jbd 51892 1 [ext3]
[root@localhost alsaconf]# lspci
00:00.0 Host bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX Host bridge (rev 03)
00:01.0 PCI bridge: Intel Corp. 440BX/ZX/DX - 82443BX/ZX/DX AGP bridge (rev 03)
00:02.0 CardBus bridge: Texas Instruments PCI1251A
00:02.1 CardBus bridge: Texas Instruments PCI1251A
00:06.0 Multimedia audio controller: Cirrus Logic CS 4610/11 [CrystalClear SoundFusion Audio Accelerator] (rev 01)
00:07.0 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ISA (rev 02)
00:07.1 IDE interface: Intel Corp. 82371AB/EB/MB PIIX4 IDE (rev 01)
00:07.2 USB Controller: Intel Corp. 82371AB/EB/MB PIIX4 USB (rev 01)
00:07.3 Bridge: Intel Corp. 82371AB/EB/MB PIIX4 ACPI (rev 02)
01:00.0 VGA compatible controller: Neomagic Corporation NM2200 [MagicGraph 256AV] (rev 12)
[root@localhost alsaconf]# cat /etc/modules.conf
alias usb-controller usb-uhci
# --- BEGIN: Generated by ALSACONF, do not edit. ---
# --- ALSACONF verion @VERSION@ ---
alias char-major-116 snd
alias char-major-14 soundcore
alias sound-service-0-0 snd-mixer-oss
alias sound-service-0-1 snd-seq-oss
alias sound-service-0-3 snd-pcm-oss
alias sound-service-0-8 snd-seq-oss
alias sound-service-0-12 snd-pcm-oss
alias snd-card-0 snd-cs46xx
alias sound-slot-0 snd-cs46xx
# --- END: Generated by ALSACONF, do not edit. ---
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd failed
[root@localhost alsaconf]# modprobe snd
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol __write_lock_failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol kernel_flag_cacheline
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol __read_lock_failed
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: unresolved symbol schedule_work
/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod /lib/modules/2.4.20-8/kernel/sound/acore/snd.o failed/lib/modules/2.4.20-8/kernel/sound/acore/snd.o: insmod snd failed
[root@localhost alsaconf]# sndconfig
bash: sndconfig: command not found
[root@localhost gamix-1.99.p14]# ./configure
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output... 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 ANSI C... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking build system type... i686-pc-linux-gnu
checking host system type... i686-pc-linux-gnu
checking for ld used by GCC... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for /usr/bin/ld option to reload object files... -r
checking for BSD-compatible nm... /usr/bin/nm -B
checking for a sed that does not truncate output... /bin/sed
checking how to recognise dependent libraries... pass_all
checking command to parse /usr/bin/nm -B output... ok
checking how to run the C preprocessor... gcc -E
checking for egrep... grep -E
checking for ANSI C header files... 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 dlfcn.h usability... yes
checking dlfcn.h presence... yes
checking for dlfcn.h... yes
checking for ranlib... ranlib
checking for strip... strip
checking for objdir... .libs
checking for gcc option to produce PIC... -fPIC
checking if gcc PIC flag -fPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.lo... yes
checking if gcc supports -fno-rtti -fno-exceptions... yes
checking whether the linker (/usr/bin/ld) supports shared libraries... yes
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking dynamic linker characteristics... GNU/Linux ld.so
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... yes
checking whether -lc should be explicitly linked in... no
creating libtool
checking for strerror in -lcposix... no
checking for dirent.h that defines DIR... yes
checking for library containing opendir... none required
checking for ANSI C header files... (cached) yes
checking for ALSA CFLAGS...
checking for ALSA LDFLAGS... -lasound -lm -ldl -lpthread
checking for libasound headers version >= 0.5.0... found.
checking for snd_ctl_open in -lasound... yes
checking for pkg-config... /usr/bin/pkg-config
checking for pkg-config... /usr/bin/pkg-config
checking for gtk+ > 1.2.0... yes
checking GTK_CFLAGS... -I/usr/include/gtk-1.2 -I/usr/X11R6/include -I/usr/include/glib-1.2 -I/usr/lib/glib/include
checking GTK_LIBS... -L/usr/X11R6/lib -lgtk -lgdk -lXi -lXext -lX11 -lm -lglib
checking for mkdir... 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 ranlib... (cached) ranlib
checking for an ANSI C-conforming const... yes
checking for inline... inline
checking for off_t... yes
checking for size_t... yes
checking for working alloca.h... yes
checking for alloca... yes
checking for stdlib.h... (cached) yes
checking for unistd.h... (cached) yes
checking for getpagesize... yes
checking for working mmap... yes
checking whether we are using the GNU C Library 2.1 or newer... yes
checking whether integer division by zero raises SIGFPE... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unsigned long long... yes
checking for inttypes.h... yes
checking whether the inttypes.h PRIxNN macros are broken... no
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 argz.h usability... yes
checking argz.h presence... yes
checking for argz.h... yes
checking limits.h usability... yes
checking limits.h presence... yes
checking for limits.h... yes
checking locale.h usability... yes
checking locale.h presence... yes
checking for locale.h... yes
checking nl_types.h usability... yes
checking nl_types.h presence... yes
checking for nl_types.h... yes
checking malloc.h usability... yes
checking malloc.h presence... yes
checking for malloc.h... yes
checking stddef.h usability... yes
checking stddef.h presence... yes
checking for stddef.h... yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking sys/param.h usability... yes
checking sys/param.h presence... yes
checking for sys/param.h... yes
checking for feof_unlocked... yes
checking for fgets_unlocked... yes
checking for getc_unlocked... yes
checking for getcwd... yes
checking for getegid... yes
checking for geteuid... yes
checking for getgid... yes
checking for getuid... yes
checking for mempcpy... yes
checking for munmap... yes
checking for putenv... yes
checking for setenv... yes
checking for setlocale... yes
checking for stpcpy... yes
checking for strcasecmp... yes
checking for strdup... yes
checking for strtoul... yes
checking for tsearch... yes
checking for __argz_count... yes
checking for __argz_stringify... yes
checking for __argz_next... yes
checking for iconv... yes
checking for iconv declaration...
extern size_t iconv (iconv_t cd, char * *inbuf, size_t *inbytesleft, char * *outbuf, size_t *outbytesleft);
checking for nl_langinfo and CODESET... yes
checking for LC_MESSAGES... yes
checking for bison... bison
checking version of bison... 1.35, ok
checking whether NLS is requested... yes
checking whether included gettext is requested... no
checking for GNU gettext in libc... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating gamix/Makefile
config.status: creating gamix2/Makefile
config.status: creating m4/Makefile
config.status: creating intl/Makefile
config.status: creating po/Makefile.in
config.status: creating config.h
config.status: config.h is unchanged
config.status: executing depfiles commands
config.status: executing default-1 commands
[root@localhost gamix-1.99.p14]# make
make all-recursive
make[1]: Entering directory `/root/gamix-1.99.p14'
Making all in intl
make[2]: Entering directory `/root/gamix-1.99.p14/intl'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/gamix-1.99.p14/intl'
Making all in m4
make[2]: Entering directory `/root/gamix-1.99.p14/m4'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/gamix-1.99.p14/m4'
Making all in po
make[2]: Entering directory `/root/gamix-1.99.p14/po'
make[2]: *** No rule to make target `all'. Stop.
make[2]: Leaving directory `/root/gamix-1.99.p14/po'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/gamix-1.99.p14'
make: *** [all] Error 2
make为什么会出错呢?
[root@localhost gamix-1.99.p14]# make clean
Making clean in gamix2
make[1]: Entering directory `/root/gamix-1.99.p14/gamix2'
rm -f gamix gamix
rm -rf .libs _libs
rm -f *.o core *.core
rm -f *.lo
make[1]: Leaving directory `/root/gamix-1.99.p14/gamix2'
Making clean in po
make[1]: Entering directory `/root/gamix-1.99.p14/po'
make[1]: *** No rule to make target `clean'. Stop.
make[1]: Leaving directory `/root/gamix-1.99.p14/po'
make: *** [clean-recursive] Error 1
[root@localhost gamix-1.99.p14]# make
make all-recursive
make[1]: Entering directory `/root/gamix-1.99.p14'
Making all in intl
make[2]: Entering directory `/root/gamix-1.99.p14/intl'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/gamix-1.99.p14/intl'
Making all in m4
make[2]: Entering directory `/root/gamix-1.99.p14/m4'
make[2]: Nothing to be done for `all'.
make[2]: Leaving directory `/root/gamix-1.99.p14/m4'
Making all in po
make[2]: Entering directory `/root/gamix-1.99.p14/po'
make[2]: *** No rule to make target `all'. Stop.
make[2]: Leaving directory `/root/gamix-1.99.p14/po'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/root/gamix-1.99.p14'
make: *** [all] Error 2
[root@localhost gamix-1.99.p14]# make install
Making install in intl
make[1]: Entering directory `/root/gamix-1.99.p14/intl'
if test "gamix" = "gettext" \
&& test '' = 'intl-compat.lo'; then \
/bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/lib /usr/include; \
/usr/bin/install -c -m 644 libintl.h /usr/include/libintl.h; \
/bin/sh ../libtool --mode=install \
/usr/bin/install -c -m 644 libintl.la /usr/lib/libintl.la; \
else \
: ; \
fi
if test 'no' = yes; then \
test yes != no || /bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/lib; \
temp=/usr/lib/t-charset.alias; \
dest=/usr/lib/charset.alias; \
if test -f /usr/lib/charset.alias; then \
orig=/usr/lib/charset.alias; \
sed -f ref-add.sed $orig > $temp; \
/usr/bin/install -c -m 644 $temp $dest; \
rm -f $temp; \
else \
if test yes = no; then \
orig=charset.alias; \
sed -f ref-add.sed $orig > $temp; \
/usr/bin/install -c -m 644 $temp $dest; \
rm -f $temp; \
fi; \
fi; \
/bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/share/locale; \
test -f /usr/share/locale/locale.alias \
&& orig=/usr/share/locale/locale.alias \
|| orig=./locale.alias; \
temp=/usr/share/locale/t-locale.alias; \
dest=/usr/share/locale/locale.alias; \
sed -f ref-add.sed $orig > $temp; \
/usr/bin/install -c -m 644 $temp $dest; \
rm -f $temp; \
else \
: ; \
fi
if test "gamix" = "gettext"; then \
/bin/sh `case "./mkinstalldirs" in /*) echo "./mkinstalldirs" ;; *) echo ".././mkinstalldirs" ;; esac` /usr/share/gettext/intl; \
/usr/bin/install -c -m 644 VERSION /usr/share/gettext/intl/VERSION; \
/usr/bin/install -c -m 644 ChangeLog.inst /usr/share/gettext/intl/ChangeLog; \ dists="COPYING.LIB-2.0 COPYING.LIB-2.1 Makefile.in config.charset locale.alias ref-add.sin ref-del.sin gmo.h gettextP.h hash-string.h plural-exp.h eval-plural.h os2compat.h libgnuintl.h loadinfo.h bindtextdom.c dcgettext.c dgettext.c gettext.c finddomain.c loadmsgcat.c localealias.c textdomain.c l10nflist.c explodename.c dcigettext.c dcngettext.c dngettext.c ngettext.c plural.y plural-exp.c localcharset.c localename.c osdep.c os2compat.c intl-compat.c"; \
for file in $dists; do \
/usr/bin/install -c -m 644 ./$file \
/usr/share/gettext/intl/$file; \
done; \
chmod a+x /usr/share/gettext/intl/config.charset; \
dists="plural.c"; \
for file in $dists; do \
if test -f $file; then dir=.; else dir=.; fi; \
/usr/bin/install -c -m 644 $dir/$file \
/usr/share/gettext/intl/$file; \
done; \
dists="xopen-msg.sed linux-msg.sed po2tbl.sed.in cat-compat.c COPYING.LIB-2 gettext.h libgettext.h plural-eval.c"; \
for file in $dists; do \
rm -f /usr/share/gettext/intl/$file; \
done; \
else \
: ; \
fi
make[1]: Leaving directory `/root/gamix-1.99.p14/intl'
Making install in m4
make[1]: Entering directory `/root/gamix-1.99.p14/m4'
make[2]: Entering directory `/root/gamix-1.99.p14/m4'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/root/gamix-1.99.p14/m4'
make[1]: Leaving directory `/root/gamix-1.99.p14/m4'
Making install in po
make[1]: Entering directory `/root/gamix-1.99.p14/po'
make[1]: *** No rule to make target `install'. Stop.
make[1]: Leaving directory `/root/gamix-1.99.p14/po'
make: *** [install-recursive] Error 1 |
|