LinuxQuestions.org

LinuxQuestions.org (/questions/)
-   Slackware (http://www.linuxquestions.org/questions/slackware-14/)
-   -   source tree modification not showing in 'make menuconfig' (http://www.linuxquestions.org/questions/slackware-14/source-tree-modification-not-showing-in-make-menuconfig-523294/)

dohpaz 01-27-2007 01:55 PM

source tree modification not showing in 'make menuconfig'
 
the instructions in the readme for my wireless nic seem straight forward enough:
Code:

Build instructions:

* Create drivers/net/wireless/acx subdirectory inside
  your kernel tree.
* Unpack tarball into drivers/net/wireless/acx directory.
* Add lines to drivers/net/wireless/Makefile:
        obj-$(CONFIG_ACX)              += acx/
        obj-$(CONFIG_ACX_PCI)          += acx/
        obj-$(CONFIG_ACX_USB)          += acx/
* Configure your kernel (perhaps "make oldconfig").
* Build your modules as usual ("make modules modules_install").

This will create acx* modules.


I followed the instructions explicitly up to the point of configuring the kernel. My problem is that when I try to configure my kernel with "make menuconfig" the module option doesn't show like I thought it would. Searching for "acx/ACX" turns up nothing.

I created the directory /usr/src/linux-2.6.19.1/drivers/net/wireless/acx
unpacked the driver to same and modified the /wireless/Makefile

Not really sure if I have the right idea here I have never modified the source tree before. Please advise. What am I missing?

piete 01-27-2007 02:04 PM

The edit hasn't entered anything into the menuconfig, i think, it's just forcing the drivers to be built during the "wireless" section!

I would expect that if you cd to drivers/net/wireless/ and make from there, you'll see that acx/ contains the drivers.

make oldconfig
make modules
make moduels_install

should do the trick!

dohpaz 01-27-2007 02:54 PM

Thanks for they reply piete

I tried running "make oldconfig" from inside
drivers/net/wireless and got:

Code:

make: *** No rule to make target `oldconfig'.  Stop.
Is this what you meant? I tried just typing just "make" and got


Code:

make: *** No targets.  Stop.

H_TeXMeX_H 01-27-2007 03:12 PM

try 'make all' ... maybe it'll work.

dohpaz 01-27-2007 03:20 PM

tried make all no joy:

Code:

make: *** No rule to make target `all'.  Stop.

H_TeXMeX_H 01-27-2007 03:50 PM

Then look in the makefile and see what options there are.

dohpaz 01-27-2007 06:19 PM

Ok I looked inside my "Makefile" and I'm not sure what "options" you mean so here is my drivers/net/wireless/Makefile.
Btw thanks for the help...

Code:

#
# Makefile for the Linux Wireless network device drivers.
#



obj-$(CONFIG_ACX)              += acx/
obj-$(CONFIG_ACX_PCI)          += acx/
obj-$(CONFIG_ACX_USB)          += acx/

obj-$(CONFIG_IPW2100) += ipw2100.o

obj-$(CONFIG_IPW2200) += ipw2200.o

obj-$(CONFIG_STRIP) += strip.o
obj-$(CONFIG_ARLAN) += arlan.o

arlan-objs := arlan-main.o arlan-proc.o

# Obsolete cards
obj-$(CONFIG_WAVELAN)          += wavelan.o
obj-$(CONFIG_PCMCIA_NETWAVE)    += netwave_cs.o
obj-$(CONFIG_PCMCIA_WAVELAN)    += wavelan_cs.o

obj-$(CONFIG_HERMES)            += orinoco.o hermes.o
obj-$(CONFIG_PCMCIA_HERMES)    += orinoco_cs.o
obj-$(CONFIG_APPLE_AIRPORT)    += airport.o
obj-$(CONFIG_PLX_HERMES)        += orinoco_plx.o
obj-$(CONFIG_PCI_HERMES)        += orinoco_pci.o
obj-$(CONFIG_TMD_HERMES)        += orinoco_tmd.o
obj-$(CONFIG_NORTEL_HERMES)    += orinoco_nortel.o
obj-$(CONFIG_PCMCIA_SPECTRUM)  += spectrum_cs.o

obj-$(CONFIG_AIRO)              += airo.o
obj-$(CONFIG_AIRO_CS)          += airo_cs.o airo.o

obj-$(CONFIG_ATMEL)            += atmel.o
obj-$(CONFIG_PCI_ATMEL)        += atmel_pci.o
obj-$(CONFIG_PCMCIA_ATMEL)      += atmel_cs.o
obj-$(CONFIG_PRISM54)          += prism54/

obj-$(CONFIG_HOSTAP)            += hostap/
obj-$(CONFIG_BCM43XX)          += bcm43xx/
obj-$(CONFIG_ZD1211RW)          += zd1211rw/

# 16-bit wireless PCMCIA client drivers
obj-$(CONFIG_PCMCIA_RAYCS)      += ray_cs.o
obj-$(CONFIG_PCMCIA_WL3501)    += wl3501_cs.o

obj-$(CONFIG_USB_ZD1201)        += zd1201.o


H_TeXMeX_H 01-27-2007 06:24 PM

Usually it's something like

Code:

# -----------------------------------------------------------------------------
# build targets
# -----------------------------------------------------------------------------

all:
        @$(MAKE_CMD) TARGET=$(DEFAULT_TARGET)

x11:
        @$(MAKE_CMD) TARGET=x11

sdl:
        @$(MAKE_CMD) TARGET=sdl

solaris:
        @$(MAKE_CMD) PLATFORM=solaris TARGET=x11

solaris-sdl:
        @$(MAKE_CMD) PLATFORM=solaris TARGET=sdl

mac:
        @$(MAKE_CMD) PLATFORM=macosx

mac-static:
        @$(MAKE_CMD) PLATFORM=macosx TARGET=sdl-static

msdos:
        @$(MAKE_CMD) PLATFORM=msdos

os2:
        @$(MAKE_CMD) PLATFORM=os2

cross-msdos:
        @PATH=$(CROSS_PATH_MSDOS)/bin:${PATH} $(MAKE_CMD) PLATFORM=cross-msdos

cross-win32:
        @PATH=$(CROSS_PATH_WIN32)/bin:${PATH} $(MAKE_CMD) PLATFORM=cross-win32

clean:
        @$(MAKE_CMD) clean


Alien Bob 01-27-2007 07:00 PM

Quote:

Originally Posted by dohpaz
Thanks for they reply piete

I tried running "make oldconfig" from inside
drivers/net/wireless and got:

Code:

make: *** No rule to make target `oldconfig'.  Stop.
Is this what you meant? I tried just typing just "make" and got


Code:

make: *** No targets.  Stop.

The "make oldconfig" is of course meant to be run in the root directory of your linux kernel source (/usr/src/linux-2.6.19.1)...

Eric

dohpaz 01-28-2007 12:04 AM

Ok so I ran:

make oldconfig
make modules
make modules_install

in my /usr/src/linux

but I can't find acx.ko...

what does make oldconfig do anyways?

duryodhan 01-28-2007 01:43 AM

you have to untar and change the makefile (as you had said in your first post ) in your /usr/src/linux

Go to above folder and then do all the steps.

Make oldconfig is to make a new kernel config based on an older config.

gnashley 01-28-2007 02:03 AM

Looks to me like you need to configure your kernel first and then make the changes to the Makefile. The Makefile gets remade when you next run config, oldconfig or menuconfig so your changes probably get lost. The new modules are not part of the modules_install rule so you'll probably have to copy the module over manually to /lib/modules.

Alien Bob 01-28-2007 07:22 AM

The ACX Wiki at http://acx100.sourceforge.net/wiki/ACX states that building the module outside the kernel is the favoured method - why don't you try that?

Eric

EDIT: I created a acx package that you might want want to try. Since you use another 2.6 kernel than comes standard with Slackware, you'll need to build the package yourself:
Code:

lftp -c "open http://www.slackware.com/~alien/slackbuilds/acx; mirror build"
cd build
./acx.SlackBuild
installpkg /tmp/acx-20070101*.tgz

I read that the driver needs a separate firmware file which is not part of my package, but perhaps this gives you a head start.

dohpaz 01-28-2007 12:09 PM

Wow! Thank you Alien Bob. I already read about building outside the
kernel at the wiki you pointed out. I wasn't really sure which method of compiling the driver was easier so I tried this way first. I have the firmware already in place at /lib/firmware.

I'm going to give this a shot.

Thanks again. :D

dohpaz 01-28-2007 01:38 PM

It worked! I installed Alien Bob's package. Then :

modprobe acx
iwconfig

wlan0 IEEE 802.11b+/g+ ESSID:"xt88tx" Nickname:"dellhost"
Mode:Managed Frequency:2.437 GHz Access Point: 00:12:17:6F:C7:76
Bit Rate:11 Mb/s Tx-Power=15 dBm Sensitivity=1/3
Retry min limit:7 RTS thr:off
Encryption key:xxxx-xxxx-xx Security mode:restricted
Power Management:off
Link Quality=36/100 Signal level=11/100 Noise level=0/100
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0


Thanks again man. I am writing this from my new mini-pci wireless connection. Thanks for your help. This has been a fun project for me. I found this little mini-pci wireless card in a dead router I had sitting around. I de-soldered the antennae from the card.It had one connector on it that wasn't being used so I only have one cable hooked up inside my laptop. I guess I could solder on a connector from another dead card or something but if it works like it is now with only one why bother? :D

Freakin' awesome man. Alien Bob and everyone who helped me, you guys are the BEST!!!! <doing a little dance>
Free things rule!!


All times are GMT -5. The time now is 11:42 AM.