[Slackbuilds-users] lirc for Slackware 13.1 not building on x86

Omari Norman omari at smileystation.com
Sun May 30 15:24:04 UTC 2010


Hi,

When I try to build lirc on x86 for Slackware 13.1, I get this error:

make  all-recursive
make[1]: Entering directory `/tmp/SBo/lirc-0.8.6'
Making all in drivers
make[2]: Entering directory `/tmp/SBo/lirc-0.8.6/drivers'
Making all in lirc_dev
make[3]: Entering directory `/tmp/SBo/lirc-0.8.6/drivers/lirc_dev'
cp ./../lirc_dev/Module*.symvers .
cp: cannot stat `./../lirc_dev/Module*.symvers': No such file or directory
make[3]: [lirc_dev.o] Error 1 (ignored)
mv Makefile Makefile.automake
cp ./../Makefile.kernel Makefile
CPPFLAGS="" CFLAGS="" LDFLAGS="" \
        make -C /lib/modules/2.6.33.4-smp/build/ SUBDIRS=/tmp/SBo/lirc-0.8.6/drivers/lirc_dev modules \
                KBUILD_VERBOSE=1
make[4]: Entering directory `/usr/src/linux-2.6.33.4'
Makefile:535: /usr/src/linux-2.6.33.4/arch/i486/Makefile: No such file or directory
make[4]: *** No rule to make target `/usr/src/linux-2.6.33.4/arch/i486/Makefile'.  Stop.
make[4]: Leaving directory `/usr/src/linux-2.6.33.4'
make[3]: *** [lirc_dev.o] Error 2
make[3]: Leaving directory `/tmp/SBo/lirc-0.8.6/drivers/lirc_dev'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/SBo/lirc-0.8.6/drivers'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/SBo/lirc-0.8.6'
make: *** [all] Error 2

It seems the problem is that a Makefile in /usr/src/linux-2.6.33.4 is
trying to include a file that does not exist because there is no
directory for i486. This patch makes it compile by simply saying,
compile it for i386. I have no expertise whatsoever so I can't vouch for
how good the patch is or whether others should use it, but it does work
for me.

--- lirc.SlackBuild.orig        2010-05-30 11:01:25.752549326 -0400
+++ lirc.SlackBuild     2010-05-30 11:19:17.600550218 -0400
@@ -33,7 +33,7 @@
 # Automatically determine the architecture we're building on:
 if [ -z "$ARCH" ]; then
   case "$( uname -m )" in
-    i?86) export ARCH=i486 ;;
+    i?86) export ARCH=i386 ;;
     arm*) export ARCH=arm ;;
     # Unless $ARCH is already set, use uname -m for all other archs:
        *) export ARCH=$( uname -m ) ;;
@@ -45,8 +45,8 @@
 PKG=$TMP/package-$PRGNAM
 OUTPUT=${OUTPUT:-/tmp}
 
-if [ "$ARCH" = "i486" ]; then
-  SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+if [ "$ARCH" = "i386" ]; then
+  SLKCFLAGS="-O2 -march=i386 -mtune=i386"
   LIBDIRSUFFIX=""
 elif [ "$ARCH" = "i686" ]; then
   SLKCFLAGS="-O2 -march=i686 -mtune=i686"


Thanks for doing the work of making lirc work with the new kernel;
without this SlackBuild I probably could not use 13.1 at all. --Omari


More information about the SlackBuilds-users mailing list