[Home]

Summary:DAHLIN-00129: Can't compile Dahdi on SuSE SLES10 SP2
Reporter:Vitaliy Krikun (vitaliykrikun)Labels:
Date Opened:2009-07-24 06:17:09Date Closed:2010-09-22 14:45:13
Priority:MajorRegression?No
Status:Closed/CompleteComponents:dahdi_dynamic_eth
Versions:2.2.0.1 Frequency of
Occurrence
Related
Issues:
Environment:Attachments:
Description:I have am error while trying to compile DAHDI on SLES10 SP2:

****** ADDITIONAL INFORMATION ******

linux-template:/usr/local/src/dahdi-tools-2.2.0 # make
make: *** No rule to make target `makeopts', needed by `menuselect/makeopts'.  S                                                                              top.
linux-template:/usr/local/src/dahdi-tools-2.2.0 # cd ../dahdi-linux-2.2.0.1/
linux-template:/usr/local/src/dahdi-linux-2.2.0.1 # make
make -C drivers/dahdi/firmware firmware-loaders
make[1]: Entering directory `/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi/firmware'
make[1]: Leaving directory `/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi/firmware'
make -C /lib/modules/2.6.16.60-0.21-default/build SUBDIRS=/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi DAHDI_INCLUDE=/usr/local/src/dahdi-linux-2.2.0.1/include DAHDI_MODULES_EXTRA=" " HOTPLUG_FIRMWARE=yes modules DAHDI_BUILD_ALL=m
make[1]: Entering directory `/usr/src/linux-2.6.16.60-0.21-obj/i386/default'
make -C ../../../linux-2.6.16.60-0.21 O=../linux-2.6.16.60-0.21-obj/i386/default modules
 CC [M]  /usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi/dahdi_dynamic_eth.o
/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi/dahdi_dynamic_eth.c: In function ‘ztdeth_rcv’:
/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi/dahdi_dynamic_eth.c:104: error: too many arguments to function ‘skb_linearize’
make[4]: *** [/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi/dahdi_dynamic_eth.o] Error 1
make[3]: *** [_module_/usr/local/src/dahdi-linux-2.2.0.1/drivers/dahdi] Error 2
make[2]: *** [modules] Error 2
make[1]: *** [modules] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.16.60-0.21-obj/i386/default'
make: *** [modules] Error 2
Comments:By: Shaun Ruffell (sruffell) 2009-07-24 10:31:52

It appears as if SLES has backported changes from the post 2.6.18 kernel into the 2.6.16 kernel that it is based off of.

For your immediate concern, the #ifdef LINUX_VERSION_CODE lines around the calls the skb_linearize could be changed from KERNEL_VERSION(2,6,18) to KERNEL_VERSION(2,6,16).  However this isn't a general solution because the vanilla 2.6.16 kernel does not use that signature for skb_linearize.

Alternatively, you could edit drivers/dahdi/Kbuild and commend out
obj-$(DAHDI_BUILD_ALL)$(CONFIG_DAHDI_DYNAMIC_ETH)       += dahdi_dynamic_eth.o

to not build the dynamic_eth driver.

By: Tzafrir Cohen (tzafrir) 2010-03-07 09:18:32.000-0600

inux-template:/usr/local/src/dahdi-tools-2.2.0 # make
make: *** No rule to make target `makeopts', needed by `menuselect/makeopts'. S top.

This is becuase the configure script was not run.

Anyway, IIRC there were some adaptations for some SUSE versions in recent trunk.  vitaliykrikun, could you re-test it?

By: Vitaliy Krikun (vitaliykrikun) 2010-03-10 06:33:59.000-0600

The problem still exist.

By: Shaun Ruffell (sruffell) 2010-09-22 14:45:13

I recently built revision 9397 on SLES 10, and didn't hit this.  If it's still a problem, please open this back up.