Re: FC9, compile error

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Gustavo
The cogent control lines are now:-------------------------------------------KERNEL_DIR:=/lib/modules/$(shell uname -r)/buildSUBLEVEL:=$(shell echo $(KERNEL_DIR) | cut -d. -f3 | cut -d. -f1 | cut -d-  -f1)# slusb support ends at 2.6.24AGE:=$(shell if [ "$(SUBLEVEL)" -gt 24 ] ;then echo NEW;fi)
ARCH64:=$(shell uname -m | sed -e '/amd64/s//x86_64/' | grep -c x86_64)
ifeq ($(ARCH64), 0)obj-m:= slamr.oendif
ifneq ($(AGE), NEW)obj-m:= $(obj-m) slusb.oendif--------------------------Thus (thanks to Jacques & you) for the definitionAGE:=$(shell if [ "$(SUBLEVEL)" -gt 24 ] ;then echo NEW;fi)For SUBLEVEL 24 or lessNEW is not output into $(AGE)Then there is read in the 2nd condintionalifneg (, NEW)which is true. Soand the following line is readobj-m:= $(obj-m) slusb.owhich specifiesobj-m:= slamr.o slusb.owith the result that both slamr.ko and slusb.ko are compiled forSUBLEVEL 24 or less
While for SUBLEVEL 25 or greaterThere is output NEW to the definition of $(AGE)Then there is readifneg (NEW, NEW)which is FALSE so the following lineobj-m:= $(obj-m) slusb.ois skippedSo the original is usedobj-m:= slamr.oSo only slamr.ko  is compiled,
I worked this through starting with slmodem-2.9.11-20080417,under a 2.6.26-2-generic boot (sleepily at 11 PM)
I tested variants of the conditional lines with:drivers/ $ make KERNEL_DIR=/usr/src/2.6.24-19-genericUntil the fix was thereunder made for the slamr.c  problemThen it was  extended to the SUBLEVEL greater 2.6.24 case
MarvS

On Sun, Jun 29, 2008 at 12:31 AM, Gustavo Fernando Padovan<gfpadovan@xxxxxxxxx> wrote:> On Sun, Jun 29, 2008 at 1:17 AM, Marvin Stodolsky> <marvin.stodolsky@xxxxxxxxx> wrote:>> The fix is using in the subfolder drivers/Makefile>>>> ifeq ($(ARCH64), 0)>> obj-m:= slamr.o>> endif>>>> ifneq ($(AGE), NEW)>> obj-m:= $(obj-m) slusb.o> But why this interfere o compilation? The kernel is 2.6.25, thus this> line doesn't import because ifneq ($(AGE), NEW) is false.>> endif>>>> Which for reasons still obscure to me worked better than Guztavo's>> initial suggestion:>>>>  ifeq ($(ARCH64), 0)>> obj-m:= slarm.o>> endif>> ifneq ($(AGE),NEW)>> obj-m:= slusb.o>> endif>>>>  I just did trial and error tests, comparing compiles under 2.6.24 and 2.6.26>> For 2.6.25 and later versions, slusb compiles fail, and must be>> omitted or the ERROR aborts the compile of the desired slamr.ko.  This>> is the role of the>>  ifneq ($(AGE),NEW)>>>> MarvS>>>>>>>>>>>>>>>>>> ---------- Forwarded message ---------->> From: Marvin Stodolsky <marvin.stodolsky@xxxxxxxxx>>> Date: Sat, Jun 28, 2008 at 11:28 PM>> Subject: Re: FC9, compile error>> To: Daniel Kirsten <Daniel.Kirsten@xxxxxxx>, Antonio Olivares>> <olivares14031@xxxxxxxxx>, Gustavo Fernando Padovan>> <gfpadovan@xxxxxxxxx>>>>>>> Daniel,>>   Try replacing the subfolder drivers/Makefile with the attached Makefile>> Small change in the conditional, eliminating slusb.ko compilation.>> See below.>> Report back>>>> MarvS>> ==================>> drivers$ make>> doing kernel-ver::>> cc -I/lib/modules/2.6.26-2-generic/build/include -o kernel-ver kernel-ver.c>> make all KERNEL_VER=2.6.26-2-generic>> make[1]: Entering directory `/usr/src/modules/slmodem-2.9.11-20080417/drivers'>>       obj-m=slamr.o>>       slamr-objs=amrmo_init.o sysdep_amr.o amrlibs.o>> make modules -C /lib/modules/2.6.26-2-generic/build>> SUBDIRS=/usr/src/modules/slmodem-2.9.11-20080417/drivers>> make[2]: Entering directory `/usr/src/linux-headers-2.6.26-2-generic'>>  CC [M]  /usr/src/modules/slmodem-2.9.11-20080417/drivers/amrmo_init.o>>  CC [M]  /usr/src/modules/slmodem-2.9.11-20080417/drivers/sysdep_amr.o>>  LD [M]  /usr/src/modules/slmodem-2.9.11-20080417/drivers/slamr.o>>  Building modules, stage 2.>>  MODPOST 1 modules>> WARNING: could not find>> /usr/src/modules/slmodem-2.9.11-20080417/drivers/.amrlibs.o.cmd for>> /usr/src/modules/slmodem-2.9.11-20080417/drivers/amrlibs.o>>  CC      /usr/src/modules/slmodem-2.9.11-20080417/drivers/slamr.mod.o>>  LD [M]  /usr/src/modules/slmodem-2.9.11-20080417/drivers/slamr.ko>> make[2]: Leaving directory `/usr/src/linux-headers-2.6.26-2-generic'>>       finished all:>> make[1]: Leaving directory `/usr/src/modules/slmodem-2.9.11-20080417/drivers'>> marv@marvlap:/usr/src/modules/slmodem-2.9.11-20080417/drivers$ ls *.ko>> slamr.ko>>>>>>>>>>>> On Sat, Jun 28, 2008 at 5:19 PM, Daniel Kirsten <Daniel.Kirsten@xxxxxxx> wrote:>>> Hallo,>>>>>> I tried to compile  slmodem-2.9.11-20080625  against a>>> 2.6.25.6-55 kernel  (recent Fedora 9 kernel).  I got the>>> following problem:>>>>>>>>>>>>>>> make -C modem all>>> make[1]: Entering directory `/root/slmodem/slmodem-2.9.11-20080625/modem'>>> rebuild profile...>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_main.o -c modem_main.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_cmdline.o -c modem_cmdline.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem.o -c modem.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_datafile.o -c modem_datafile.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_at.o -c modem_at.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_timer.o -c modem_timer.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_pack.o -c modem_pack.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_ec.o -c modem_ec.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_comp.o -c modem_comp.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_param.o -c modem_param.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_debug.o -c modem_debug.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o homolog_data.o -c homolog_data.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o dp_sinus.o -c dp_sinus.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o dp_dummy.o -c dp_dummy.c>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o sysdep_common.o -c sysdep_common.c>>> gcc -o slmodemd modem_main.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o>>> gcc -Wall -g -O -I. -DCONFIG_DEBUG_MODEM   -o modem_test.o -c modem_test.c>>> gcc -o modem_test modem_test.o modem_cmdline.o modem.o modem_datafile.o modem_at.o modem_timer.o modem_pack.o modem_ec.o modem_comp.o modem_param.o modem_debug.o homolog_data.o dp_sinus.o dp_dummy.o dsplibs.o sysdep_common.o>>> make[1]: Leaving directory `/root/slmodem/slmodem-2.9.11-20080625/modem'>>> make -C drivers KERNEL_DIR=/lib/modules/2.6.25.6-55.dk08.fc9.i686/build>>> make[1]: Entering directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> cc -I/lib/modules/2.6.25.6-55.dk08.fc9.i686/build/include -o kernel-ver kernel-ver.c>>> make all KERNEL_VER=2.6.25.6-55.dk08.fc9.i686>>> make[2]: Entering directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> make modules -C /lib/modules/2.6.25.6-55.dk08.fc9.i686/build SUBDIRS=/root/slmodem/slmodem-2.9.11-20080625/drivers>>> make[3]: Entering directory `/root/rpmbuild/BUILD/kernel-2.6.25/linux-2.6.25.i686'>>> make[4]: *** No rule to make target `/root/slmodem/slmodem-2.9.11-20080625/drivers/slarm.c', needed by `/root/slmodem/slmodem-2.9.11-20080625/drivers/slarm.o'.  Stop.>>> make[3]: *** [_module_/root/slmodem/slmodem-2.9.11-20080625/drivers] Error 2>>> make[3]: Leaving directory `/root/rpmbuild/BUILD/kernel-2.6.25/linux-2.6.25.i686'>>> make[2]: *** [all] Error 2>>> make[2]: Leaving directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> make[1]: *** [all] Error 2>>> make[1]: Leaving directory `/root/slmodem/slmodem-2.9.11-20080625/drivers'>>> make: *** [drivers] Error 2>>>>>>>>> --> ----------------------------------------------> Gustavo Fernando Padovan> Engenharia de Computação 2006> LAS - Laboratório de Administração e Segurança de Sistemas> Instituto de Computação - UNICAMP>> gfpadovan@xxxxxxxxx> ra061316@xxxxxxxxxxxxxxxxxxxxxx> pao@xxxxxxxxxx> ------------------------------------------->> Seja Livre, use Software Livre>

[Index of Archives]     [Linux Media Development]     [Asterisk]     [DCCP]     [Netdev]     [X.org]     [Xfree86]     [Fedora Women]     [Linux USB]

  Powered by Linux