Click to See Complete Forum and Search --> : 56k driver


nixnebie
01-28-2004, 01:09 AM
I have an Encore NetoDragon 56k modem that is not recognized by linux. I have the driver and the installation help file but I am lost.


..::INSTALL HELP FILE::..
1. Unpack tar.gz package file:
$ gzip -dc slmd.2.6.16_netodragon.tar.gz tar xf -

2. cd to package directory:
$cd slmdm.2.6.16_netodragon.tar.gz

3. Review and edit Makefile.

Note: probaly you will want to correct in Makefile path to your local linux kernel header files:

KERNEL_INCLUDES=/path/to/linux/include

Another way is to pass command line the parameter while running make:

$make KERNEL_INCLUDES=/path/to/linux/include


4. Run make command to compile package

5. Install

make install-amr


So far what I have done is used a GUI program to unpack the file to a folder on the desktop. Then through command prompt I opened Makefile with gedit, but I have no idea what to put after KERNEL_INCLUDES. I don't know where that should point to.

I am new to Linux so this is probally really simple to you folks but to me it is hard because in windows all I had to do was click on hardware manager.

Mandrake 9.2
Kernel 2.4.22.10

dalek
01-28-2004, 05:55 AM
KERNEL_INCLUDES=/path/to/linux/include

should be this

KERNEL_INCLUDES=/usr/src/linux/include

I guess that is what it wants. You may have to be root for it to access that file too. I'd try it as a regular user first.

Of course you can buy a external serial modem. No drivers needed then. If you use a laptop, I understand, install the drivers, say a prayer and hope it works well.

Later

:D :D :D :D

YeNotGuilty
01-29-2004, 12:42 PM
at least it isn't linuxant (14.4kbps connections unless I pay 15 bucks...hellz with that)

nixnebie
01-29-2004, 08:57 PM
Thanks for the help so far, but the problem still remains. I do not have this directory and when I go to make the file it errors. I do not have the linux/include folders in /usr/src/, all I have is an RPM folder in that directory.



This is what it says after I run a make command.

gcc -Wall -03 fomit-frame-pointer -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -I. -I/usr/src/linux/include -DMODVERSIONS --include /usr/src/linux/include/linux/modversions.h -o amrmo_init.o -c amrmo_init.c
make: gcc: Command not found
make: *** [amrmo_init.o] Error 127


I have tried with a user account as well as root.
Thanks again for the help.

dalek
01-30-2004, 12:42 AM
OK, here we go again. Another distro that won't install the kernel sources.

Go to a terminal/console, start thingy then terminal then console or Konsole and then type in this:

uname -r

You should get the EXACT version of your kernel. Then go to the Mandrake site and download the kernel version above and install it. It should be a RPM. Just save it to the Desktop and click on it. It will ask for root password and then install it for you. May want to save that puppy somewhere for future use, like when you make a boo boo and erase /etc or something. ;) Don't laugh, it happens. :rolleyes:

After you get that installed, install the driver. It should work fine.

NO, the CDs do not contain the kernel, at least mine didn't.

Key info here for future knowledge:

/usr/src/linux/include/linux/modversions.h

Don't exist huh? Can't find it, can't install.

I wish they would install the sources already, at least put them on the CD.

Later

:D :D :D :D

JusKickNit
01-30-2004, 01:08 AM
If you choose to install the devel packages the kernel-source would have goten installed. It's on cd3 by the way. You also need to install gcc the compiler. Since that command was not found. You'll need to install the devel tools section of the software of the cdrom. You probley need alot more than just gcc. Also once you install the kernel source package, look in the /usr/src/ dir there should be somthing like linux-2.4.22.10 dir and linux dir which just a link to linux-2.4.22.10.

dalek
01-30-2004, 01:53 AM
From what I have read, if you bought the CDs from Mandrake, it is on the CD. If you bought, like I did, from another distributor like cheapbytes, then it is not on the CDs. Mine was not. I looked. I just looked again, still no kernel, only docs. It would not let me install the drivers for my video card either.

I went back to Mandrake 9.1 then switched to Gentoo. At least you can get all the sources for Gentoo. You have to have the kernel for Gentoo since you compile your own.

Bottom line, get the sources from where ever you have to. If they are on the CD, install them. If not, download them and install them. You have to have them to install those, unless there is a rpm version of the driver, then you won't need the sources.

Make sure you get the exact version though.

Later

:D :D :D :D

nixnebie
01-31-2004, 12:08 PM
I could not find the kernel source on the mandrake site but I found something on this site. http://kitty.plala.jp/Asumi/kernel/2.4.22-10/
It is not from mandrake though. Does this matter?

I downloaded it from that site and installed it. I also installed gcc and yet I still get some errors. Once again could someone take the time to explain to me what my problem is? Thanks in advance.


gcc-Wall -03 -fomit-frame-pointer -D__KERNEL__ -DMODULE -DEXPORT_SYMTAB -I, -I/usr/src/linux-2.4.22-10/include -DMODVERSIONS --include /usr/src/linux-2.4.22-10/include/linux/modversions.h -o amrmo_init.o -c amrmo_init.c
In file included from /usr/include/linux/prefetch.h:13,
from /usr/include/linux/list.h:6,
from /usr/include/linux/module.h11,
from /amrmo_init.c:47:
/usr/include/asm/processor.h:55 error: 'CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in function)
/usr/include/asmprocessor.h:55: error: requested aligment is not a constant
In file included from /usr/include/linux/mm.h:12,
from /usr/include/linux/slab.h:14,
from /usr/include/asm/pci.h:37,
from /usr/inlclude/linux/pci.h:654,
from amrmo_init.c:50:
/usr/include/linux/mmzone.h:44 error: 'CONFIG_X86_L1_CACHE_SHIFT' undeclared here (not in a function)
/usr/include/linux/mmzone.h:44: error: requested aligment is not a constant
amarmo_init.c: In function 'amrmo_init':
amrmo_init.c:302: warning: implicit declaration of function 'pci_dev_driver_R58a96c85'
make: *** [amrmo_init.o] error 1

bwkaz
01-31-2004, 02:38 PM
Yep. Either your gcc is not operating the same way as everybody else's, or you're missing a couple of files inside the kernel source directory. Hopefully it's the latter, but it's possible that it's the former.

gcc has a standard set of include paths (/usr/lib/gcc-lib/$(gcc -dumpmachine)/$(gcc -dumpversion)/include, /usr/include, and /usr/local/include, in that order). If you pass -I on its command line, then the argument to the -I option goes at the start of this list -- or at least, it should go at the start of this list.

As you can see, the compilation command that the Makefile is trying to run is passing /usr/src/linux-whatever/include on the compilation command line, so that directory should be being searched first.

However, when amrmo_init.c includes <linux/module.h>, it's coming from /usr/include instead of the kernel sources (it needs to be coming from the kernel sources; the stuff in /usr/include/linux and /usr/include/asm are the kernel headers that glibc was compiled against, and they're for userspace to use, not kernel modules).

So, check to see if you have a /usr/src/linux-whatever/include/linux/module.h file. If you do, then your gcc is screwy (but fixable with some other command line options, like "-nostdinc -I/usr/lib/gcc-lib/*/*/include"). If you don't have that file, then maybe the kernel source installation failed? Or maybe you need to run make oldconfig dep after copying Mandrake's config file (look around in /boot maybe) to /usr/src/linux-whatever/.config to recreate some headers.

bsm2001
01-31-2004, 03:29 PM
you can get the kernel source from here
it is a mandrake mirror
MDK MIRROR (ftp://mirrors.usc.edu/pub/linux/distributions/mandrake/9.2/i586/Mandrake/RPMS)