LinuxQuestions.org
Download your favorite Linux distribution at LQ ISO.
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware
User Name
Password
Slackware This Forum is for the discussion of Slackware Linux.

Notices


Reply
  Search this Thread
Old 09-12-2009, 08:32 AM   #1
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Rep: Reputation: 242Reputation: 242Reputation: 242
digikam 1.0 beta 4 on Slackware64: How?


Hi there,

I'd like to use the latest Digikam version on my Slackware64 box, but somehow I fail to get it working. Apparently this version is not yet supported by SlackBuilds.org, and the SlackBuild script available from slacky.eu fails, even after setting ARCH=x86_64 and changing all entries of i486 to x86_64 in slack-required. It comes a long way, but then fails trying to use/include qt libraries from /usr/lib/ instead of /usr/lib64.

Now, this is hopefully not a show stopper, is it?

In fact, I suppose there must be some cmake equivalent of the old prefixes as used by the old accord of ./configure;make;make install.

But this is my first attempt to compile a KDE 4 application using cmake on Slackware64. Therefore I'd appreciate a hint or two, how to proceed.

Thanks a lot

Here is what I did and what I get:

1. Download from http://slacky.eu package for i486 and src.
2. In slack-required replace i486 with x86_64.
3. In digikam.SlackBuild change ARCH to x86_64.

Result:

Code:
Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/hslmodifier.o
[ 15%] Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/iccprofile.o
[ 15%] Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/icctransform.o
/usr/lib/qt/include/QtCore/qatomic_i386.h: Assembler messages:
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbx' used with `l' suffix
[ 15%] make[2]: *** [digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/iccprofile.o] Error 1
make[2]: *** Waiting for unfinished jobs....
Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/dimgimagefilters.o
make[1]: *** [digikam/CMakeFiles/digikamcore.dir/all] Error 2
make: *** [all] Error 2
BTW, so far I am unsuccessful with lensfun, too...

Thanks for any helpful hint!

gargamel
 
Old 09-12-2009, 08:37 AM   #2
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559

Rep: Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105
Did you try my own SlackBuild at http://www.slackware.com/~alien/slackbuilds/digikam/ yet? I have a 0.10.0 package for Slackware64 and that SlackBuild should be easily re-used for the 1.0.0-beta4 source tarball.

Eric
 
Old 09-12-2009, 08:43 AM   #3
pwc101
Senior Member
 
Registered: Oct 2005
Location: UK
Distribution: Slackware
Posts: 1,847

Rep: Reputation: 128Reputation: 128
I've sucessfully used this script for beta3 on Slackware64, I'm assuming nothing too important's changed in between.
Code:
#!/bin/sh

# Slackware build script for digikam

# Copyright 2009 Yalla-One <yallaone@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
# 1. Redistributions of this script must retain the above copyright
#    notice, this list of conditions and the following disclaimer.
#
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ''AS IS'' AND ANY EXPRESS OR IMPLIED
# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.


PRGNAM=digikam
VERSION=${VERSION:-1.0.0-beta3}
ARCH=${ARCH:-i486}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
NUMJOBS=${NUMJOBS:--j1}
OUTPUT=${OUTPUT:-/tmp}

CWD=$(pwd)
TMP=${TMP:-/tmp/SBo}
PKG=${TMP}/package-${PRGNAM}

if [ "${ARCH}" = "i486" ]; then
	SLKCFLAGS="-O2 -march=i486 -mtune=i686"
elif [ "${ARCH}" = "s390" ]; then
	SLKCFLAGS="-O2"
elif [ "${ARCH}" = "x86_64" ]; then
	SLKCFLAGS="-O2 -fPIC"
fi

rm -rf ${PKG}
mkdir -p ${TMP} ${PKG}
cd ${TMP}
rm -rf ${PRGNAM}-${VERSION}
tar xvf ${CWD}/${PRGNAM}-${VERSION}.tar.bz2 || exit 1
cd ${PRGNAM}-${VERSION} || exit 1
chown -R root:root . || exit 1
find . \
	\( -perm 777 -o -perm 775 -o -perm 711 -o -perm 555 -o -perm 511 \) \
	-exec chmod 755 {} \; -o \
	\( -perm 666 -o -perm 664 -o -perm 600 -o -perm 444 -o -perm 440 -o -perm 400 \) \
	-exec chmod 644 {} \;

mkdir -p build
cd build
cmake \
	-DCMAKE_C_FLAGS:STRING="${SLKCFLAGS}" \
	-DCMAKE_CXX_FLAGS:STRING="${SLKCFLAGS}" \
	-DCMAKE_BUILD_TYPE=Release \
	-DCMAKE_INSTALL_PREFIX=/usr \
	-DMAN_INSTALL_DIR=/usr/man \
	-DSYSCONF_INSTALL_DIR=/etc/kde \
	..
make ${NUMJOBS} || exit 1
make install DESTDIR=${PKG} || exit 1
cd ..

# Strip the binaries
find ${PKG} | xargs file | grep -e "executable" -e "shared object" \
        | grep ELF | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null

mkdir -p ${PKG}/usr/doc/${PRGNAM}-${VERSION}
cp -a \
  NEWS AUTHORS COPYING DESIGN HACKING INSTALL README TODO \
  ${PKG}/usr/doc/${PRGNAM}-${VERSION}/

# Compress man pages
if [ -d $PKG/usr/man ]; then
	gzip -9 $PKG/usr/man/man?/*
fi

mkdir -p ${PKG}/install
cat ${CWD}/slack-desc >${PKG}/install/slack-desc
cat ${CWD}/doinst.sh >${PKG}/install/doinst.sh

cd ${PKG}
makepkg -p -l y -c n ${OUTPUT}/${PRGNAM}-${VERSION}-${ARCH}-${BUILD}${TAG}.tgz

if [ "$1" = "--cleanup" ]; then
  rm -rf ${TMP}/${PRGNAM}-${VERSION}
  rm -rf ${PKG}
fi
slack-desc
Code:
# HOW TO EDIT THIS FILE:
# The "handy ruler" below makes it easier to edit a package description.  Line
# up the first '|' above the ':' following the base package name, and the '|' on
# the right side marks the last column you can put a character in.  You must make
# exactly 11 lines for the formatting to be correct.  It's also customary to
# leave one space after the ':'.

       |-----handy-ruler------------------------------------------------------|
digikam: digiKam (KDE Photo Management Application)
digikam:
digikam: digiKam is a simple digital photo management application for KDE,
digikam: which makes importing and organizing digital photos a "snap". The
digikam: photos can be organized in albums which can be sorted chronologically,
digikam: by directory layout or by custom collections. An easy to use interface
digikam: is provided that enables you to connect to your camera and preview,
digikam: download and/or delete your images.
digikam:
digikam: Homepage: http://www.digikam.org/
digikam:
 
Old 09-12-2009, 09:05 AM   #4
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by Alien Bob View Post
Did you try my own SlackBuild at http://www.slackware.com/~alien/slackbuilds/digikam/ yet? I have a 0.10.0 package for Slackware64 and that SlackBuild should be easily re-used for the 1.0.0-beta4 source tarball.

Eric
Yes, thanks, I tried both the package and the SlackBuild script. The binary works, but compared to later versions that I was able to use in Slackware64-current version 0.10 is very slow. This is a problem for me, as my camera goes to sleep mode before all preview images are created and before I can download a single photo to my computer. With 0.9.x this was no problem.

The script fails, unfortunately, with different messages. E. g., at some point it looks for kde-config. I changed this call to kde4-config, but then the script fails later. (Actually, not digikam.SlackBuild fails, but cmake, of course).

Instead of trying to fix this I thought it might be better to try out v1.0.0 Beta 4. So far, however, I didn't get it going.

gargamel

P.S.: I am on Slackware64 13.0 with all official patches applied plus your compat32 multilib enhancements.

Last edited by gargamel; 09-12-2009 at 09:07 AM.
 
Old 09-12-2009, 09:26 AM   #5
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by pwc101 View Post
I've sucessfully used this script for beta3 on Slackware64, I'm assuming nothing too important's changed in between.
Code:
#!/bin/sh

# Slackware build script for digikam

# Copyright 2009 Yalla-One <yallaone@gmail.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
# permitted provided that the following conditions are met:
#
Thanks, I just tried this one, but:

Code:
[  8%] Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/hslmodifier.o
[  8%] Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/iccprofile.o
/usr/lib/qt/include/QtCore/qatomic_i386.h: Assembler messages:
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbx' used with `l' suffix
make[2]: *** [digikam/CMakeFiles/digikamcore.dir/__/libs/dimg/filters/iccprofile.o] Error 1
make[1]: *** [digikam/CMakeFiles/digikamcore.dir/all] Error 2
make: *** [all] Error 2
Something seems to have changed in the Digikam configuration files, I guess...

gargamel
 
Old 09-13-2009, 01:48 AM   #6
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by Alien Bob View Post
Did you try my own SlackBuild at http://www.slackware.com/~alien/slackbuilds/digikam/ yet? I have a 0.10.0 package for Slackware64 and that SlackBuild should be easily re-used for the 1.0.0-beta4 source tarball.

Eric
Meanwhile I found a camera setting that prevents it from turning itself off after a few minutes. So I tried your binaries again. The download seemed to work, and digikam reported, that it had completed the job, but I have not a single photo on my computer.

Could it be, that v0.10 cannot cope with ext4?

Guess, I'll have to try some of the command line utilities to, at least, download my photos, just have to find out which one and how. For the longer-term perspective I still hope to get a newer digikamn version working.

Thanks so far!

gargamel
 
Old 09-13-2009, 04:04 AM   #7
pwc101
Senior Member
 
Registered: Oct 2005
Location: UK
Distribution: Slackware
Posts: 1,847

Rep: Reputation: 128Reputation: 128
Did you try beta3? That compiled and runs fine on my Slackware64 installation with an ext4 filesystem. My camera is auto-detected perfectly, and I can download the photos fine. Might be worth a shot...?
 
Old 09-13-2009, 04:14 AM   #8
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Meanwhile I tried to compile a few more packages for x86_64 with the scripts from slackbuilds.org. Some compile flawlessly, but with some, like kipi-plugins and kphotoalbum I have no success, yet. The slackbuilds are denoted to be made for Slackware 13.0, and I thought they should compile properly when I just call the script with

Code:
<program>.SlackBuild -a x86_64
But it seems, that not all SlackBuilds interpret this option correctly... But I have to say that this time I tried to compile the packages using sbopkg, and it could therefore as well be a problem of this tool (but I doubt it, as it has worked without problems with just about everything else I threw onto it, and I like it a lot, already!).

Code:
[  0%] Generating common/libkipiplugins/svnversion.h
[  0%] Built target kipiplugins-svnversion
Scanning dependencies of target kipiplugins_automoc
Generating batchprogressdialog.moc
Generating imageslist.moc
Generating imagedialog.moc
[  0%] Built target kipiplugins_automoc
Scanning dependencies of target kipiplugins
[  0%] Building CXX object common/libkipiplugins/CMakeFiles/kipiplugins.dir/kipiplugins_automoc.o
[  0%] Building CXX object common/libkipiplugins/CMakeFiles/kipiplugins.dir/kpaboutdata.o
[  0%] Building CXX object common/libkipiplugins/CMakeFiles/kipiplugins.dir/kpwriteimage.o
[  0%] Building C object common/libkipiplugins/CMakeFiles/kipiplugins.dir/iccjpeg.o
[  0%] Building CXX object common/libkipiplugins/CMakeFiles/kipiplugins.dir/batchprogressdialog.o
[  0%] Building CXX object common/libkipiplugins/CMakeFiles/kipiplugins.dir/imageslist.o
[  0%] Building CXX object common/libkipiplugins/CMakeFiles/kipiplugins.dir/imagedialog.o
Linking CXX shared library ../../lib/libkipiplugins.so
/usr/lib/qt/lib/libQtGui.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[2]: *** [lib/libkipiplugins.so.1.0.0] Error 1
make[1]: *** [common/libkipiplugins/CMakeFiles/kipiplugins.dir/all] Error 2
make: *** [all] Error 2
I have to learn what this all tells me (I am a Java person, so I am not so familiar with the messages I get here, but I am willing to learn).

gargamel
 
Old 09-13-2009, 04:32 AM   #9
pwc101
Senior Member
 
Registered: Oct 2005
Location: UK
Distribution: Slackware
Posts: 1,847

Rep: Reputation: 128Reputation: 128
I believe the best way to ensure they run with $ARCH as x86_64 is as follows:
Code:
ARCH=x86_64 ./*.SlackBuild
I have never had any issues when calling scripts in this manner. What's more, I've never seen a script at SlackBuilds.org which parses any command line options (as would be necessary with your -a x86_64 syntax).

sbopkg automatically sets $ARCH to x86_64 if it detects you're running 64bit.
 
Old 09-13-2009, 04:50 AM   #10
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by pwc101 View Post
Did you try beta3? That compiled and runs fine on my Slackware64 installation with an ext4 filesystem. My camera is auto-detected perfectly, and I can download the photos fine. Might be worth a shot...?
Yes, but with the unmodified SlackBuild script in your first post (thanks!) I get this:

Code:
 Building C object CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o

  /usr/bin/gcc -O2 -march=i486 -mtune=i686 -o
  CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o -c
  /tmp/SBo/digikam-1.0.0-beta3/build/CMakeFiles/CMakeTmp/testCCompiler.c

  /tmp/SBo/digikam-1.0.0-beta3/build/CMakeFiles/CMakeTmp/testCCompiler.c:1:
  error: CPU you selected does not support x86-64 instruction set

  gmake[1]: *** [CMakeFiles/cmTryCompileExec.dir/testCCompiler.c.o] Error 1

  gmake[1]: Leaving directory
  `/tmp/SBo/digikam-1.0.0-beta3/build/CMakeFiles/CMakeTmp'

  gmake: *** [cmTryCompileExec/fast] Error 2





  CMake will not be able to correctly generate this project.
Call Stack (most recent call first):
  CMakeLists.txt:1 (PROJECT)


CMake Warning (dev) in CMakeLists.txt:
  No cmake_minimum_required command is present.  A line of code such as

    cmake_minimum_required(VERSION 2.6)

  should be added at the top of the file.  The version specified may be lower
  if you wish to support older CMake versions for this project.  For more
  information run "cmake --help-policy CMP0000".
This warning is for project developers.  Use -Wno-dev to suppress it.

-- Configuring incomplete, errors occurred!
make: *** No targets specified and no makefile found.  Stop.
With ARCH set to x86_64 it gets a little better, but still fails, just later:

Code:
[ 16%] Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/threadimageio/thumbnailcreator.o
[ 16%] Building CXX object digikam/CMakeFiles/digikamcore.dir/__/libs/threadimageio/thumbnailloadthread.o
/usr/lib/qt/include/QtCore/qatomic_i386.h: Assembler messages:
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rbp' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
/usr/lib/qt/include/QtCore/qatomic_i386.h:177: Error: Incorrect register `%rcx' used with `l' suffix
make[2]: *** [digikam/CMakeFiles/digikamcore.dir/__/libs/threadimageio/thumbnailloadthread.o] Error 1
make[1]: *** [digikam/CMakeFiles/digikamcore.dir/all] Error 2
make: *** [all] Error 2
I reall think that the search path is wrong. cmake looks for /usr/lib/qt, instead of /usr/lib64/qt. How can I change this?

Also I wonder, if you really used the script unmodified, as ARCH set to i486 means that the result is a 32-bit binary...?

gargamel
 
Old 09-13-2009, 04:56 AM   #11
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by pwc101 View Post
I believe the best way to ensure they run with $ARCH as x86_64 is as follows:
Code:
ARCH=x86_64 ./*.SlackBuild
I have never had any issues when calling scripts in this manner. What's more, I've never seen a script at SlackBuilds.org which parses any command line options (as would be necessary with your -a x86_64 syntax).

sbopkg automatically sets $ARCH to x86_64 if it detects you're running 64bit.
I noticed that sbopkg is quite smart, in this and other respects. As I said, I really like it.

Probably I misunderstood something regarding command line options. My (obviously wrong) understanding was, that, at least, the scripts provided by Alien Bob interpret parameters such as -a x86_64 or -r 13.0. But this may be only true for his brilliant mirroring script... Not sure, where I got my "understanding" from, originally...

gargamel
 
Old 09-13-2009, 09:20 AM   #12
pwc101
Senior Member
 
Registered: Oct 2005
Location: UK
Distribution: Slackware
Posts: 1,847

Rep: Reputation: 128Reputation: 128
The way that SlackBuilds.org SlackBuild scripts are written means that you can pass a variable to the script using the syntax I've shown above without having to edit the actual script itself. Therefore, I don't manually modify the scripts, I just pass certain different options to them using the syntax above. Therefore, to modify the output directory and the build architecture, you could run a script as follows:
Code:
OUTPUT=$HOME/pkgs ARCH=x86_64 ./*.SlackBuild
This would output the slackware package in a directory in your home directory called pkgs. This only works because the variables that are set in the SlackBuild use this format:
Code:
VAR=${VAR:-somevalue}
This means that if the variable VAR is not already defined, then its contents will be somevalue. The way to define VAR beforehand is either to do so on the command line as above, or otherwise to export it in the shell's profile:
Code:
# cat ~/.bashrc
export ARCH=x86_64
Here, I've defined $ARCH as x86_64 for all shells. Therefore, if I were to run a SlackBuilds.org build script, then the value of $ARCH would always be x86_64, unless I specified something else when calling the script.

I'm not in front of my Slackware64 machine, so I can't test the script with beta4, or indeed re-run beta3, but I'll try later on. If you want, I still have the compiled packages for digikam, kipi-plugins and kphotoalbum for 64bit, so I can put those somewhere where you can download them, if you're interested.

Also, just a thought, but have you installed the 32bit compatibility libraries on your system? Perhaps there's something messing up the compilation of these packages, because the output you posted above suggests gcc is being called with the options to build 32bit binaries.
 
Old 09-13-2009, 02:42 PM   #13
Alien Bob
Slackware Contributor
 
Registered: Sep 2005
Location: Eindhoven, The Netherlands
Distribution: Slackware
Posts: 8,559

Rep: Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105Reputation: 8105
Quote:
Originally Posted by gargamel View Post
I noticed that sbopkg is quite smart, in this and other respects. As I said, I really like it.

Probably I misunderstood something regarding command line options. My (obviously wrong) understanding was, that, at least, the scripts provided by Alien Bob interpret parameters such as -a x86_64 or -r 13.0. But this may be only true for his brilliant mirroring script... Not sure, where I got my "understanding" from, originally...

gargamel
None of my SlackBuild scripts accept options like "-a x86_64" or "-r 13.0". That is only used (as you indicated already) by the mirror-slackware-current.sh and rsync-slackware-patches.sh scripts.

Eric
 
Old 09-13-2009, 02:53 PM   #14
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by Alien Bob View Post
None of my SlackBuild scripts accept options like "-a x86_64" or "-r 13.0". That is only used (as you indicated already) by the mirror-slackware-current.sh and rsync-slackware-patches.sh scripts.

Eric
Thanks for clearing this up. In fact I found no lines of code in the SlackBuild scripts processing input parameters, so it starts all making sense to me.

gargamel
 
Old 09-13-2009, 03:06 PM   #15
gargamel
Senior Member
 
Registered: May 2003
Distribution: Slackware, OpenSuSE
Posts: 1,839

Original Poster
Rep: Reputation: 242Reputation: 242Reputation: 242
Quote:
Originally Posted by pwc101 View Post
[...]
Code:
# cat ~/.bashrc
export ARCH=x86_64
Here, I've defined $ARCH as x86_64 for all shells. Therefore, if I were to run a SlackBuilds.org build script, then the value of $ARCH would always be x86_64, unless I specified something else when calling the script.
Ok, thanks for the helpful explanation, I understand this now.

Quote:
Originally Posted by pwc101 View Post
I'm not in front of my Slackware64 machine, so I can't test the script with beta4, or indeed re-run beta3, but I'll try later on. If you want, I still have the compiled packages for digikam, kipi-plugins and kphotoalbum for 64bit, so I can put those somewhere where you can download them, if you're interested.
I'd definitely be interested, I appreciate your kind offer. But additionally I'd really like to know why it's not working here. However, so far I was unable to further track it down.

Quote:
Originally Posted by pwc101 View Post
Also, just a thought, but have you installed the 32bit compatibility libraries on your system? Perhaps there's something messing up the compilation of these packages, because the output you posted above suggests gcc is being called with the options to build 32bit binaries.
I noticed that at some point the 32bit versions of some libraries, such as qt, are called. And as you say, gcc seems to use 32bit options. The question is, why, as I modified the script to set ARCH to x86_64.

Yes, I have the compat32 provided by Alien Bob stuff installed in my system. But apart from this digikam and kipi-plugins thing, it doesn't seem to cause any trouble. E. g., I was able to compile kaffeine 64bit with no problem using the script from SlackBuilds.org.

Although I have meanwhile made it to download my photos from my camera to my computer using gphoto2 I'd still like to find out what's wrong with my system...

Thanks for your valued support so far and any further ideas how to track this down.

gargamel
 
  


Reply


Thread Tools Search this Thread
Search this Thread:

Advanced Search

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
Updating from Slackware64-current to Slackware64 13. glore2002 Slackware 4 08-28-2009 06:50 PM
[SOLVED] Slackware64-C client wont detect Slackware64-C Samba server slackass Slackware 5 08-07-2009 11:23 PM
LXer: How-To: Compile and Install digiKam 1.0 Beta 1 in Ubuntu 9.04 Jaunty Jackalope LXer Syndicated Linux News 0 06-29-2009 01:20 PM
LXer: Firefox 3 beta 4 code freeze tonight, beta 5 release looks likely LXer Syndicated Linux News 0 02-28-2008 11:20 AM
LXer: Mozilla Firefox 2.0 Beta 1 Release Candidate Builds Available, Final Beta 1 Set for Later This Week LXer Syndicated Linux News 0 07-13-2006 02:54 AM

LinuxQuestions.org > Forums > Linux Forums > Linux - Distributions > Slackware

All times are GMT -5. The time now is 03:50 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration