2.6.8.1-3-386 syntax install problem

Marvin Stodolsky marvstod at rcn.com
Thu Dec 2 20:34:19 CST 2004


Ubuntu folk,

Graham brought this problem problem to our attention concerning lt_modem 
installs using our Lucent modem package, ltmodem-8.31a10.tar.gz   at  
ltmodem.heby.de for Ubuntu
Mark is our code expert and I do User help for the ltmodem issues.

The core of the issue is that while a
   make install for the drivers
install:
    make $(EXTMOD_SWITCH)=`pwd` -C $(KERNEL_DIR) 
INSTALL_MOD_PATH=$(ROOTDIR) modules_install
works fine for a version nomenclature like 2.6.8-1-686
When applied to your release 2.6.8.1-3-386 , the -3-386 gets clipped, as 
shown by:
# ls /lib/modules/*/extra
/lib/modules/2.4.27-1-686/extra:
   lt_modem.o  lt_modem.o~  lt_serial.o  lt_serial.o~
 
/lib/modules/2.6.8-1-686/extra:
    lt_modem.ko  lt_serial.ko

/lib/modules/2.6.8.1/extra:
    lt_modem.ko  lt_serial.ko

So the standard modules install code seems to be broken by this syntax 
type: 2.6.8.1-3-386 
Probably would be simplest in the future if the more standard
  2.6.n$EXTRAVERSION were used without  "." in the EXTRAVERSION.
EXTRAVERSION certainly provides enough flexibility for a unique Ubuntu 
naming.

Another modem packages using the standard "make install" will also be 
faulted,
which I expect includes most of the winmodem packages.
Better get an advisory out to your Users that after installs,
they will likely have to
   mv /lib/modules/2.6.8.1/extra  /lib/modules/2.6.8.1-3-386/extra

Graham thus did and the driver service was thereafter fine.

MarvS

PS see my http://linmodems.technion.ac.il/packages/scanModem.gz
which aids modem chipset identification
 


Mark Spieth wrote:

>yes the kernel build modules_install functionality seems broken for this
>case.
>need to find and submit patch or get the kernel packagers to correct their
>mistake and not use this version format.
>they should probably tow the line with respect to this. cant expect the main
>kernel people to cope with everyones ideas of kernel rev numbers. need to
>have a standard in this respect.
>my 2c worth
>mark
>----- Original Message ----- 
>From: "Marvin Stodolsky" <marvstod at rcn.com>
>To: "Mark Spieth" <mark at dclabs.com.au>
>Cc: "Graham Ashton" <graham at effectif.com>; "Mark" <mspieth at dclabs.com.au>
>Sent: Friday, December 03, 2004 12:50 PM
>Subject: Re: Bug in ltmodem-8.31a10]
>
>
>  
>
>># grep -rF 2.6.8.1 *
>>include/linux/version.h:#define UTS_RELEASE "2.6.8.1-3-386"
>>
>>is OK.  Checked that earlier.  It is something in the install processing
>>of 2.6.8.1-3-386,
>>that seems to clip off the -3-386
>>Again if I falsify another Debian header package  2.6.8-1-686
>>   UTS_RELEASE "2.6.8-1-686"
>>to
>>   UTS_RELEASE "2.6.8.7-1-686"
>>The
>>   ./build_module 2.6.8.7-1-686
>>goes through. But the
>>  make install
>>creates
>>/lib/modules/2.6.8.7/extra/
>>   lt_modem.o  lt_serial.o
>>
>>MarvS
>>
>>Mark Spieth wrote:
>>
>>    
>>
>>>do a
>>>cd to /lib/modules/2.6.8.1-3-386/build which is your kernel headers dir
>>>      
>>>
>and
>  
>
>>>grep -rf 2.6.8.1 *
>>>and see what comes up. last email was a furfy.
>>>mark
>>>----- Original Message ----- 
>>>From: "Graham Ashton" <graham at effectif.com>
>>>To: "Mark Spieth" <mark at dclabs.com.au>
>>>Cc: "Marvin Stodolsky" <marvstod at rcn.com>; "Mark" <mspieth at dclabs.com.au>
>>>Sent: Friday, December 03, 2004 9:46 AM
>>>Subject: Re: Re: Bug in ltmodem-8.31a10]
>>>
>>>
>>>
>>>
>>>      
>>>
>>>>On Wed, 2004-12-01 at 23:05 +1100, Mark Spieth wrote:
>>>>
>>>>
>>>>        
>>>>
>>>>>had a little look. looks like ROOTDIR is generated by the kernel build
>>>>>scripts.
>>>>>thus I conclude that the config file used to build the kernel is
>>>>>
>>>>>
>>>>>          
>>>>>
>>>slightly
>>>
>>>
>>>      
>>>
>>>>>different than the one referred to in the cut down build part.
>>>>>perhaps compare /boot/config-xxx with the .config in the kernel build
>>>>>
>>>>>
>>>>>          
>>>>>
>>>tree
>>>
>>>
>>>      
>>>
>>>>>maybe also the one in /lib/modules/xxx/build ? I think
>>>>>
>>>>>difficult to say but I suspect the above is correct.
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>I've not followed the above too well, but this may help:
>>>>
>>>>dog% cd /usr/src/linux-headers-2.6.8.1-3-386/
>>>>dog% diff .config /boot/config-2.6.8.1-3-386
>>>>dog% diff .config /lib/modules/2.6.8.1-3-386/build/.config
>>>>dog%
>>>>
>>>>So they're all the same. There is however another headers directory,
>>>>which has a different config file.
>>>>
>>>>dog% diff .config ../linux-headers-2.6.8.1-3/.config | head -n 3
>>>>13,15c13
>>>>< # CONFIG_CLEAN_COMPILE is not set
>>>>< CONFIG_BROKEN=y
>>>>
>>>>Whilst investigating whether or not build_module reported using
>>>>2.6.8.1-3 I noticed the following in it's output:
>>>>
>>>>       Following a successful check for matching kernel-headers,
>>>>       the modem drivers will be compiled for the current kernel
>>>>       version: 2.6.8.1-3-386
>>>>
>>>>Shortly after that it ran configure and found headers as follows:
>>>>
>>>>       checking for ld... yes
>>>>       Checking for kernel headers
>>>>         ... in /usr/src/linux: nope
>>>>         ... in /usr/src/kernel-headers-2.6.8.1-3-386: nope
>>>>         ... in /usr/src/linux-2.6.8.1: nope
>>>>         ... in /usr/src/linux-2.6.8.1-3-386: nope
>>>>         ... in /lib/modules/2.6.8.1-3-386/build: Kernel headers found
>>>>       in /lib/modules/2.6.8.1-3-386/build
>>>>         using /lib/modules/2.6.8.1-3-386/build
>>>>       Checking kernel header version
>>>>         kernel headers are version 2.6.8.1-3-386
>>>>         has irq_spinlock in async_struct 0
>>>>       checking for fakeroot... fakeroot
>>>>       updating cache ./config.cache
>>>>
>>>>It also used the right ones when compiling. So either I didn't
>>>>understand your hypothesis, or the config files that it's actually using
>>>>match up. I'm hoping that I didn't understand it!
>>>>
>>>>Hope that helps some.
>>>>
>>>>Graham
>>>>
>>>>
>>>>
>>>>        
>>>>
>>>>>----- Original Message ----- 
>>>>>From: "Marvin Stodolsky" <marvstod at rcn.com>
>>>>>To: "Mark" <mspieth at dclabs.com.au>
>>>>>Cc: "Graham Ashton" <graham at effectif.com>
>>>>>Sent: Wednesday, December 01, 2004 2:00 PM
>>>>>Subject: [Fwd: Re: Bug in ltmodem-8.31a10]
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>>>Mark
>>>>>>
>>>>>>Graham has revealed a puzzle, working with Debian derived Ubuntu
>>>>>>
>>>>>>
>>>>>>            
>>>>>>
>>>Linux,
>>>
>>>
>>>      
>>>
>>>>>>$   fakeroot ./build_deb 2.6.8.1-3-386
>>>>>>culminates in:
>>>>>> source/debian/tmp/lib
>>>>>>`-- modules
>>>>>>   `-- 2.6.8.1
>>>>>>       `-- extra
>>>>>>           |-- lt_modem.ko
>>>>>>           `-- lt_serial.ko
>>>>>>Whereas is should be 2.6.8.1-3-386 !!!
>>>>>>
>>>>>>For
>>>>>>$ fakeroot ./build_deb 2.6.8-1-686
>>>>>>there is the expected:
>>>>>>source/debian/tmp/lib
>>>>>>`-- modules
>>>>>>   `-- 2.6.8-1-686
>>>>>>       `-- extra
>>>>>>           |-- lt_modem.ko
>>>>>>           `-- lt_serial.ko
>>>>>>
>>>>>>It is NOT the particular kernel-header package.
>>>>>>If I falsify the the base folder and UTS release:   2.6.8-1-686 -->
>>>>>>2.6.8.7-1-686
>>>>>>$ fakeroot ./build_deb 2.6.8.7-1-686
>>>>>>there results the undesired:
>>>>>>source/debian/tmp/lib
>>>>>>`-- modules
>>>>>>   `-- 2.6.8.7
>>>>>>       `-- extra
>>>>>>           |-- lt_modem.ko
>>>>>>           `-- lt_serial.ko
>>>>>>
>>>>>>Thus it seems the three .  nomenclature as in 2.6.8.7 results in the
>>>>>>clip of  "-1-686"  in the modules PATH for reasons obscure.
>>>>>>
>>>>>>Tried putting " " around ROOTDIR as in
>>>>>>install:
>>>>>>   make $(EXTMOD_SWITCH)=`pwd` -C $(KERNEL_DIR)
>>>>>>INSTALL_MOD_PATH="$(ROOTDIR)" modules_install
>>>>>>without effect.
>>>>>>
>>>>>>
>>>>>>I'm stumped
>>>>>>
>>>>>>MarvS
>>>>>>
>>>>>>Graham Ashton wrote:
>>>>>>
>>>>>>
>>>>>>
>>>>>>            
>>>>>>
>>>>>>>Hi. Apologies if this is the wrong place to post about this, but I
>>>>>>>didn't find a better option on the site.
>>>>>>>
>>>>>>>I've just tried running ./build_module for ltmodem-8.31a10 and it
>>>>>>>
>>>>>>>
>>>>>>>              
>>>>>>>
>>>failed
>>>
>>>
>>>      
>>>
>>>>>>>just after it started trying to compile the two kernel modules. It
>>>>>>>turned out that the Makefile.in inside the source.tar.gz file had a
>>>>>>>
>>>>>>>
>>>>>>>              
>>>>>>>
>>>CVS
>>>
>>>
>>>      
>>>
>>>>>>>conflict in it, so I commented out the relevant lines (75 to 85
>>>>>>>inclusive for anybody else who needs to build it) and then tarred it
>>>>>>>back up again.
>>>>>>>
>>>>>>>Problem solved. Just thought I ought to point it out.
>>>>>>>
>>>>>>>I've also run ./build_deb on my Ubuntu (hoary) box and it almost
>>>>>>>
>>>>>>>
>>>>>>>              
>>>>>>>
>>>worked,
>>>
>>>
>>>      
>>>
>>>>>>>but it placed the kernel modules in /lib/modules/2.6.8.1/extra (where
>>>>>>>they couldn't be found) instead of 2.6.8.1-3-386/extra. Moving them
>>>>>>>manually did the trick.
>>>>>>>
>>>>>>>Cheers,
>>>>>>>
>>>>>>>Graham
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>              
>>>>>>>
>>>>>---
>>>>>Outgoing mail is certified Virus Free.
>>>>>Checked by AVG anti-virus system (http://www.grisoft.com).
>>>>>Version: 6.0.799 / Virus Database: 543 - Release Date: 11/19/2004
>>>>>
>>>>>
>>>>>          
>>>>>
>>>>-- 
>>>>Graham Ashton <graham at effectif.com>
>>>>
>>>>
>>>>
>>>>        
>>>>
>>>
>>>
>>>      
>>>
>
>
>  
>



More information about the ubuntu-devel mailing list