LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 924|回复: 13

我的猫pctel -0.9.6 驱动还是没装上蛙!

[复制链接]
发表于 2003-4-23 14:18:54 | 显示全部楼层 |阅读模式
我的猫的驱动还是没装上呀!
我下载 的 pctel -0.9.6 驱动还是没装好
老是有个error:modversion not include in/usr/src/linux
发表于 2003-4-24 09:30:18 | 显示全部楼层
说一下系统环境,系统,版本,内核。多谢。

这样提问,谁也帮不了你。

对于硬件,应该看一下如何针对硬件问题发帖,多谢。

http://www.linuxsir.cn/forum.php?mod=viewthread&tid=3007

其实应该这样做,要把kernel-source的包安装上。然后到/usr/src目录看一下有没有linux-2.4之类的文件夹。
如果有,就要做一下链的接。比如我的系统是这样的。
[root@Linsir01 root]# cd /usr/src/
[root@Linsir01 src]# ls
debug   linux-2.4  linux-2.4.20-8    redhat

然后我们进入/usr/src目录中做一个链接。
#ln -s linux-2.4.20-8 linux

然后再来安装,明白了???

此帖要合并到有关pctel的帖子后面,是否能行????

能否看一下我的签名,要学会跟帖。多谢。
 楼主| 发表于 2003-4-24 16:10:02 | 显示全部楼层

关于pctel !

我的linux是redhat8.0  kernel :2.4.18-14
我的主板是jp的 声卡是:avance ac97
modem: pctel Hsp56 micro modem
安装redhat8的时候没有全部安装!
发表于 2003-4-25 01:10:19 | 显示全部楼层
#cd /usr/src
#ln linux-2.4.18-14  linux
然后再来按照帖子中说的来安装驱动。
要先看一下kernel-source有没有安装,如果/usr/src目录里没有linux-2.4.18-14这样的文件夹,就是没有安装上,找出安装盘把kernel-source安装上
#rpm -ivh kernel-source*.rpm
另外得安装编译工具。用包管理工具来把所有的开发类工具都安装上

#redhat-config-packages

然后参考一下这帖,不要急,这个问题能解决。加油!!!!

http://www.linuxsir.cn/forum.php?mod=viewthread&tid=20852
发表于 2003-4-25 01:46:30 | 显示全部楼层

已经解决

当然,是在MDK 9.0

redhat8.0有很多莫名其妙的限制
我试验了,可以驱动上没问题,但是浏览时就不行,不知在哪里改默认网络接入的配置
mdk就很方便,在控制中心里设置一下就行了
发表于 2003-4-25 02:51:16 | 显示全部楼层

Re: 我的猫驱动还是没装上蛙!

最初由 ministerwuxi 发布
我的猫的驱动还是没装上呀!
我下载 的 pctel -0.9.6 驱动还是没装好
老是有个error:modversion not include in/usr/src/linux


如果你已经安装了内核源码,,你最好先到内核源码的目录里运行 make xconfig 这后..什么也不用动..
按Save and Exit这个键...再去编译你的猫驱动...
 楼主| 发表于 2003-4-28 14:44:37 | 显示全部楼层

谢谢 北南南北 !

我明天在试试!如果不行的话在把具体的错误发上来 求助!
 楼主| 发表于 2003-4-29 14:22:07 | 显示全部楼层

pctel modem驱动安装??

[roothost1 pectel-0.9.6]#./configure --with-hal=pct789 --with-kernel-includes=/usr/src/linux-2.4.18-14
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 build driver for... HAL_PCT789
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 style of include used by make... GNU
checking dependency style of gcc... none
checking whether make sets ${MAKE}... (cached) yes
checking for a BSD-compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for gawk... (cached) gawk
checking how to run the C preprocessor... gcc -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 /usr/src/linux-2.4.18-14/linux/modversions.h usability... no
checking /usr/src/linux-2.4.18-14/linux/modversions.h presence... no
checking for /usr/src/linux-2.4.18-14/linux/modversions.h... no
configure: error: modversions.h is missing - you should configure your kernel first!
[root@localhost1 pctel-0.9.6]# make
Making all in src
make[1]: Entering directory `/tmp/pctel-0.9.6/src'
Making all in module
make[2]: Entering directory `/tmp/pctel-0.9.6/src/module'
rm -f *~ \#* .*~ .\#*
rm -f ptmodule.o
rm -f ptmodule.o
rm -f ../../modules/pctel.o
gcc    -D__KERNEL__ -Werror -Wno-trigraphs -fno-common -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -DMODULE -DMODVERSIONS -DEXPORT_SYMTAB -DHAL_PCT789  -I../../include -I/usr/src/linux-2.4.18-14/include -include /usr/src/linux-2.4.18-14/include/linux/modversions.h -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"pctel\" -DVERSION=\"0.9.5\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1   -c -o ptmodule.o ptmodule.c
In file included from /usr/src/linux-2.4.18-14/include/linux/prefetch.h:13,
                 from /usr/src/linux-2.4.18-14/include/linux/list.h:6,
                 from /usr/src/linux-2.4.18-14/include/linux/module.h:12,
                 from ptmodule.c:8:
/usr/src/linux-2.4.18-14/include/asm/processor.h:258:1: "EISA_bus" redefined
In file included from /usr/src/linux-2.4.18-14/include/linux/modversions.h:128,
                 from <command line>:1:
/usr/src/linux-2.4.18-14/include/linux/modules/i386_ksyms.ver:88:1: this is the location of the previous definition
make[2]: *** [ptmodule.o] Error 1
make[2]: Leaving directory `/tmp/pctel-0.9.6/src/module'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/pctel-0.9.6/src'
make: *** [all-recursive] Error 1
[root@localhost1 pctel-0.9.6]# make install
Making install in src
make[1]: Entering directory `/tmp/pctel-0.9.6/src'
Making install in module
make[2]: Entering directory `/tmp/pctel-0.9.6/src/module'
make[3]: Entering directory `/tmp/pctel-0.9.6/src/module'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/tmp/pctel-0.9.6/src/module'
make[2]: Leaving directory `/tmp/pctel-0.9.6/src/module'
Making install in ptserial
make[2]: Entering directory `/tmp/pctel-0.9.6/src/ptserial'
make[3]: Entering directory `/tmp/pctel-0.9.6/src/ptserial'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/tmp/pctel-0.9.6/src/ptserial'
make[2]: Leaving directory `/tmp/pctel-0.9.6/src/ptserial'
make[2]: Entering directory `/tmp/pctel-0.9.6/src'
make[3]: Entering directory `/tmp/pctel-0.9.6/src'
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
make[3]: Leaving directory `/tmp/pctel-0.9.6/src'
make[2]: Leaving directory `/tmp/pctel-0.9.6/src'
make[1]: Leaving directory `/tmp/pctel-0.9.6/src'
Making install in lib
make[1]: Entering directory `/tmp/pctel-0.9.6/lib'
make[2]: Entering directory `/tmp/pctel-0.9.6/lib'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/tmp/pctel-0.9.6/lib'
make[1]: Leaving directory `/tmp/pctel-0.9.6/lib'
Making install in modules
make[1]: Entering directory `/tmp/pctel-0.9.6/modules'
make[2]: Entering directory `/tmp/pctel-0.9.6/modules'
if ! test -f pctel.o; then \
  cd ../src/module && make; \
fi
make[3]: Entering directory `/tmp/pctel-0.9.6/src/module'
rm -f *~ \#* .*~ .\#*
rm -f ptmodule.o
rm -f ptmodule.o
rm -f ../../modules/pctel.o
gcc    -D__KERNEL__ -Werror -Wno-trigraphs -fno-common -Wall -Wstrict-prototypes -O2 -fomit-frame-pointer -fno-strict-aliasing -pipe -fno-strength-reduce -DMODULE -DMODVERSIONS -DEXPORT_SYMTAB -DHAL_PCT789  -I../../include -I/usr/src/linux-2.4.18-14/include -include /usr/src/linux-2.4.18-14/include/linux/modversions.h -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\" -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\" -DPACKAGE=\"pctel\" -DVERSION=\"0.9.5\" -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1   -c -o ptmodule.o ptmodule.c
In file included from /usr/src/linux-2.4.18-14/include/linux/prefetch.h:13,
                 from /usr/src/linux-2.4.18-14/include/linux/list.h:6,
                 from /usr/src/linux-2.4.18-14/include/linux/module.h:12,
                 from ptmodule.c:8:
/usr/src/linux-2.4.18-14/include/asm/processor.h:258:1: "EISA_bus" redefined
In file included from /usr/src/linux-2.4.18-14/include/linux/modversions.h:128,
                 from <command line>:1:
/usr/src/linux-2.4.18-14/include/linux/modules/i386_ksyms.ver:88:1: this is the location of the previous definition
make[3]: *** [ptmodule.o] Error 1
make[3]: Leaving directory `/tmp/pctel-0.9.6/src/module'
make[2]: *** [pctel.o] Error 2
make[2]: Leaving directory `/tmp/pctel-0.9.6/modules'
make[1]: *** [install-am] Error 2
make[1]: Leaving directory `/tmp/pctel-0.9.6/modules'
make: *** [install-recursive] Error 1
下面是 这个驱动自带的说明:
FAQ - Frequently Asked Questions
   --------------------------------


Table of Contents:
------------------
1. Will my modem XXX work with this driver?
2. What is needed to compile this driver?
3. How do I install this driver?
4. How do I load the driver in the boot-up?
5. Do you work for PCTEL?
6. Module options
7. Country Code selection
8. Compile error: no modversions.h
9. Unresolved Symbols
10. Modem not responding

1. Will my modem XXX work with your driver?
-------------------------------------------
Go to "Linux/Modem Compatibility Knowledge Base" at
http://www.idir.net/~gromitkc/winmodem.html
and follow the instructions to find your modem.
If you don't know, just try it!


2. What is needed to compile this driver?
-----------------------------------------
* kernel-sources
* a working compiler (preferably gcc)
* development tools (make, awk, ...)


3. How do I install this driver?
--------------------------------
Please read the INSTALL file.


4. How do I load the driver in the boot-up?
--------------------------------------------
If you have sucessfully done "make install", the driver is located
in /lib/modules/"your-kernel-number"/misc/

The driver consists of two parts:
pctel.o
ptserial.o

You insert these drivers with the command
insmod pctel
insmod ptserial

You have to make sure, that these two commands are run every time you
reboot your machine, by adding these two commands to an init script,
according to your distribution.

If you want to enable autoloading of the modules,
the following lines in /etc/modules.conf would suffice:

# for pctel modem
alias char-major-62 ptserial
below ptserial pctel
# country code for pctel modem
options ptserial country_code=13

Make sure, you run "depmod -a" after you changed your /etc/modules.conf.

Then starting ppp would autoload the modules,
or "modprobe ptserial" will insert them.


5. Do you work for PCTEL?
-------------------------
I don't work for PCTEL, i am maintainig this driver in my free time.


6. Module options
-----------------
You can add some module parameters in you /etc/modules.conf or at
insmod/modprobe time:

For all HALs:
   - country_code: Country code (see below).
   - irq: Force to using irq #.
   - iobase: Force to use iobase for modem detection.

Only for I8XX/VAI686A HALs:
   - iobase1: Force the iobase 1
     NOTE: if you want to set iobase or iobase1, you should use
           irq/iobase/iobase1 at same time.

Only for CM8738/PCT789 HALs:
   - vendor_id: vendor ID of the modem
   - device_id: device ID of the modem.
     NOTE: vendor_id and device_id should be used at the same time,
      but you cannot combinate this two options with
           iobase, iobase prevail to (vendor/device)_id detection.


7. Country Code selection
-------------------------
The PCTEL modem has the possibility to select a country code.
If the country code is not selected, the default country code,
which is USA, will be used and it should work for most countries.
However, there is a way that you can select the country code for
better performance.

To select the country code, instead of "insmod ptserial.o" do:
insmod ptserial.o country_code=X

Table of country codes:

country_code  country_name

1            USA
2            FRANCE
3            GERMANY
4            ITALY
5            SWEDEN
6            UK
7            JAPAN
8            AUSTRALIA
9            SPAIN
10            TAIWAN
11            SINGAPORE
12            KOREA
13            SWITZERLAND
14            NORWAY
15            NETHERLANDS
16            BELGIUM
17            CANADA
18            IRELAND
19            PORTUGAL
20            POLAND
21            HUNGARY
22            FINLAND
23            DENMARK
24            AUSTRIA
25            S.AFRICA
26            CTR21 COUNTRIES
27            CHINA
28            MALAYSIA
29            LUXUMBURG
30            GREECE
31            ICELAND
32            NEW ZEALAND
33            BRAZIL


8. Compile error: no modversions.h
----------------------------------
If you see something like:
configure: error: modversions.h is missing - you should configure
your kernel first!

then, you either have:
a) not installed your kernel sources --> install them

b) your kernel sources at a different path --> specify the path with:
   ./configure --with-kernel-includes=DIR

c) no "modversions.h" in your kernel sources -->
   create the modversions.h by running
   $ cd [...] (where you have your kernel sources, default is
               /usr/src/linux)
   $ make dep

   this should make you a modversions.h in [...]/linux/include/

   If this did not work, an ugly hack is to create an empty file there:
   $ mkdir -p [...]/linux/include/linux
   $ touch [...]/linux/include/linux/modversions.h


9. Unresolved Symbols
---------------------
The unresolved symbols arise when there is a mismatch between the
versions of the running kernel & the kernel-headers used to compile the
driver.

These symbol differences can often be masked across flavor differences
and even some larger differences through use of Mark Speith's fixscript,
available at: www.medres.ch/~jstifter/linux/pctel.html (links section).

Of course, the robust cure (and much better)
is too use the same kernel-headers as were used
in the compile of the running kernel.  Unfortunately the kernel-header
packages provided by some Linux distros are not exactly version matched
with the stock kernels.

If you do a
  depmod -e pctel.o
or
  depmod -e ptserial.o
you can generate an "unresolved symbols" report.

If you have unresolved symbols:

1) download fixscript.gz
2) unpack it with "gzip -d fixscript.gz"
3) make it executable with "chmod +x fixscript"
4) install all modules, needed for your system
5) run fixscript with

./fixscript old_module.o new_module.o

this will create you the new module, which you can try to insert
with "insmod new_module.o"

If fixscript reports an error like
objcopy: --redefine-sym: Symbol "" is target of more than one redefinition
then, fixscript can not help you.

In this case, you have to compile yourself a kernel. Ask the linmodems
mailing list if you have problems - it is not that hard!


10. Modem not responding
------------------------
If wvdial reports that the modem is not responding, pppd locks up, or
minicom blocks keyboard input, this could be due to a conflict with
the sound driver (this problem has been observed in an on-board sound
system involving the SiS7018 audio controller, but may affect other
systems too). Unfortunately in this situation sound and modem support
are mutually exclusive. To use the modem it is necessary to disable
the kernel sound driver. Either use a kernel without built in sound
support, or in the case of a modularised kernel, disable loading of
the sound driver module. This can be done by editing the file
/etc/modules.conf and commenting out the line associating a sound
slot with the sound driver module, ie.

#alias sound-slot-0 trident


---
Jan Stifter, 2001-10-29
j.stifter@[no-spam]medres.ch
http://www.medres.ch/~jstifter/pctel
      PCTEL Linux PCI driver, version 0.9.6
      -------------------------------------

Description
-----------
This package contains the PCTEL driver for various PCTEL modems for linux.
It is meant for kernel 2.4.x, up to 2.4.18 so far.

Installation
------------
0) Unpack the tarball by typing "tar zxvf pctel-0.9.6.tar.gz"

1) Go into that directory by typing "cd pctel-0.9.6"

2) Find out what chipset you have in your board:

3) ./configure
Options:

--with-hal=hal
Select one of: pct789, cm8738, i8xx, sis, via686a

--with-kernel-includes=/path/to/my/kernel-sources/include
If you don't have your kernel sources at /usr/src/linux, specifiy
your includes

4) Compile the modules by typing "make"

5) If everything went fine, get root by typing "su"

7) Install the drivers by typing "make install"

8) You are now ready to use your modules.
  Type "insmod pctel" and "insmod ptserial".

You should see in your logs ("tail /var/log/messages") something like:
May 16 23:28:17 suba kernel: PCTel initialization. Country code is 2.
May 16 23:28:17 suba kernel: PCTel device[00:11.0](0x88) found "CTel Inc HSP MicroModem 56 (rev 01)" IOBASE 0xe800 IRQ 9.
May 16 23:28:17 suba kernel: PCTel driver version 0.9.6 [5.05c-4.27.215 (09-14-2001)]] (PCT789) (2001-08-18) with MANY_PORTS SHARE_IRQ SERIAL_PCI enabled.
May 16 23:28:17 suba kernel: PCTel driver built on [Linux 2.4.8 i686 unknown] with [2.95.3].
May 16 23:28:17 suba kernel: ttyS15 at 0xe800 (irq = 9) is a PCtel

Notes:
You can always uninstall the modules by typing "make uninstall". If you
need to recompile the modules, "make clean" and "make" are your friends.

Questions, Infos, Support
-------------------------
see README



---
Jan Stifter, 2002-03-04
j.stifter@[no-spam]medres.ch
http://www.medres.ch/~jstifter/pctel/

2001-08-05: Updated for Linux 2.4.7.
- Daniel Caujolle-Bert <segfault@club-internet.fr>

2001-08-08: Some bugs fixes/cleanups.
- Daniel Caujolle-Bert <segfault@club-internet.fr>

2001-10-29: some fixes/cleanups.
- JS
发表于 2003-4-29 14:27:44 | 显示全部楼层
系统是完全安装还是自定义安装,感觉是少点东西?可能少库文件之类的。
 楼主| 发表于 2003-4-30 08:49:13 | 显示全部楼层

系统没有完全安装的!

系统没有完全安装的!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表