I using the asterisk yum repository at
http://packages.asterisk.org/centos/5/current to install a vanilla asterisk.
All went well on my development server, which is a fully up to date CentOS5
machine. But now I am trying to do the same with my production server, which is
an OEL5 machine with the 2.6.18-128.el5PAE kernel. This throws a dependency
error for kmod-dahdi-linux.
kmod-dahdi-linux-2.2.1-1_centos5.2.6.18_164.11.1.el5.i686 from asterisk-current
has depsolving problems
--> Missing Dependency: kernel-i686 = 2.6.18-164.11.1.el5 is needed by
package kmod-dahdi-linux-2.2.1-1_centos5.2.6.18_164.11.1.el5.i686
(asterisk-current)
Error: Missing Dependency: kernel-i686 = 2.6.18-164.11.1.el5 is needed by
package kmod-dahdi-linux-2.2.1-1_centos5.2.6.18_164.11.1.el5.i686
(asterisk-current)
Well I suppose I can't expect there to be a kmod package for every possible
combination of dahdi version and kernel out there so I suppose I shall have to
build my own. I cannot change the kernel version on the production server as it
is out of my hands.
So I have been trying to use the source rpm. I tried using yum to download it
but the SRPMS directory is not at the same level as the RPMS directory so yum
cannot see it. Instead I used wget to download
dahdi-linux-kmod-2.2.1-1_centos5.2.6.18_164.11.1.el5.src.rpm, installed in a
local build area and tried to build it.
I installed the correct devel packages, that is both kernel-devel and
kernel-PAE-devel. To begin with I just tried
rpmbuild --bb ~/localrpms/SPECS/dahdi-linux-kmod.spec
but that fails as the spec file relies on the internally defined kernel version
error: Failed build dependencies:
kernel-devel = 2.6.18-164.11.1.el5 is needed by
dahdi-linux-kmod-2.2.1-1_centos5.2.6.18_164.11.1.el5.i386
A brief inspection of the spec file suggested I could override the kernel
version
uname -r
2.6.18-128.el5PAE
rpmbuild --bb ~/localrpms/SPECS/dahdi-linux-kmod.spec -D "kversion `uname -r`"
But this fails because by the time the kernel name gets passed to the makefile
the "PAE" has been lost:-
...
~/localrpms/BUILD/dahdi-linux-kmod-2.2.1/_kmod_build_
~/localrpms/BUILD/dahdi-linux-kmod-2.2.1
+ make KVERS=2.6.18-128.el5 modules
You do not appear to have the sources for the 2.6.18-128.el5 kernel installed.
Further inspection and I tried to override the kernel variant parameter with
rpmbuild --bb ~/localrpms/SPECS/dahdi-linux-kmod.spec -D "kversion `uname -r`"
-D "kvariants PAE"
This allows the RPM to build but when I try to install it I get
error: Failed dependencies:
kernel-i386 = 2.6.18-128.el5PAE is needed by
kmod-dahdi-linux-PAE-2.2.1-1_centos5.2.6.18_128.el5.i386
Why "kernel-i386" when the kernel package I am using is "kernel-PAE" and really
this check should be using "uname -r" to test the kernel version?
So I think there are parts of the spec file that are broken for my needs. I
would be happy help test any changes. In the mean time am I ok to do a
"-nodeps" install of the package I have built?
Steve Hindmarch
--
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --
asterisk-users mailing list
To UNSUBSCRIBE or update options visit:
http://lists.digium.com/mailman/listinfo/asterisk-users