LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
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-29-2011, 08:00 PM   #1
haxwithaxe
LQ Newbie
 
Registered: Sep 2011
Posts: 11

Rep: Reputation: Disabled
slackware64 13.37 alpine.SlackBuild fails when trying to rebuild package


I'm trying to recompile alpine with passfile support (--with-passfile) and i can't get it to successfully make. the source package seems to have the libdir variable hard coded at some point to be /usr/lib instead of /usr/lib64.
there is an ominous comment block in the slackbuild:
# This seems to ignore sysconfdir and libdir, so it's pretty useless to try them.
# Brute-force it.
# Eric says: no! Use configure parameters.
#zcat $CWD/alpine.config.h.diff.gz | patch -p1 --verbose || exit 1

which would seem to be helpful but neither the configure options nor the patch help. i spent 2 days trying to find all the places where it could possibly go wrong and failed repeatedly.
any help would be appreciated
 
Old 09-29-2011, 09:16 PM   #2
Daedra
Senior Member
 
Registered: Dec 2005
Location: Springfield, MO
Distribution: Slackware64-15.0
Posts: 2,730

Rep: Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393
We'll according to what you posted the patch itself is commented out so it is not getting applied to the build. Did you uncomment the patch line to enable it? if not then do this...

there is an ominous comment block in the slackbuild:
# This seems to ignore sysconfdir and libdir, so it's pretty useless to try them.
# Brute-force it.
# Eric says: no! Use configure parameters.
#zcat $CWD/alpine.config.h.diff.gz | patch -p1 --verbose || exit 1

Change it to look like this then rerun the build.

there is an ominous comment block in the slackbuild:
# This seems to ignore sysconfdir and libdir, so it's pretty useless to try them.
# Brute-force it.
# Eric says: no! Use configure parameters.
zcat $CWD/alpine.config.h.diff.gz | patch -p1 --verbose || exit 1

Last edited by Daedra; 09-29-2011 at 09:18 PM.
 
Old 09-29-2011, 09:48 PM   #3
andrewthomas
Senior Member
 
Registered: May 2010
Location: Chicago Metro
Distribution: Arch, Gentoo, Slackware
Posts: 1,690

Rep: Reputation: 312Reputation: 312Reputation: 312Reputation: 312
I don't see what the problem is.

Did you edit the slackbuild and add

Code:
 --with-passfile=FILENAME
                          Password cache file (NOT secure, NOT recommended)
with a valid path for FILENAME?

For example,

Code:
# Configure:
CFLAGS="$SLKCFLAGS" \
./configure \
  --prefix=/usr \
  --mandir=/usr/man \
  --with-ssl-dir=/usr \
  --with-ssl-certs-dir=/etc/ssl/certs \
  --with-c-client-target=slx \
  --with-system-pinerc=/etc/pine.conf \
  --with-system-fixed-pinerc=/etc/pine.conf.fixed \
  --disable-debug \
  --with-debug-level=0 \
  --without-tcl \
  --program-prefix= \
  --program-suffix= \
  --with-passfile=/etc/alpine-passfile.conf \
  --build=$ARCH-slackware-linux
I just did that as a test and the package built fine.
 
Old 09-30-2011, 10:17 PM   #4
haxwithaxe
LQ Newbie
 
Registered: Sep 2011
Posts: 11

Original Poster
Rep: Reputation: Disabled
i had already done all that unfortunately :/
@Daedra: the patch doesn't help.
@andrewthomas: i did edit the slackbuild just as you described.

the steps i took were:
1) edit the slackbuild straight from the source repo to have the "--with-passfile=.pine.pwd" and try building (failed)
2) uncomment the patch and try rebuilding. (failed)
3) adding --libdir=/usr/lib64 to the configure options and trying to rebuild (failed)
4) try to find every instance of "/lib" in the build system and replace it with "/lib64" (several ways including find+sed and manually(bad idea)) and try to rebuild (failed)
5) posted here
 
Old 09-30-2011, 10:50 PM   #5
andrewthomas
Senior Member
 
Registered: May 2010
Location: Chicago Metro
Distribution: Arch, Gentoo, Slackware
Posts: 1,690

Rep: Reputation: 312Reputation: 312Reputation: 312Reputation: 312
What is the full path to the pine.pwd file?

You did not state it in your configuration.

At this point, I don't know what to tell you.

I built this package on both x86 and x86_64 with the --passfile configuration option, and it built properly both times.

Last edited by andrewthomas; 09-30-2011 at 11:03 PM.
 
Old 09-30-2011, 11:21 PM   #6
dive
Senior Member
 
Registered: Aug 2003
Location: UK
Distribution: Slackware
Posts: 3,467

Rep: Reputation: Disabled
"--with-passfile=.pine.pwd" is a bit ambiguous. Try /etc/pine.pwd maybe?
 
Old 10-01-2011, 12:12 AM   #7
haxwithaxe
LQ Newbie
 
Registered: Sep 2011
Posts: 11

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by dive View Post
"--with-passfile=.pine.pwd" is a bit ambiguous. Try /etc/pine.pwd maybe?
it's dieing during make because it is looking for *some* libraries in "/usr/lib" and "/lib" instead of "/usr/lib64" or "/lib64". i don't think the name i chose (i happened to use what i found in the docs) should be affecting where it looks for libraries.
 
Old 10-01-2011, 12:45 AM   #8
haxwithaxe
LQ Newbie
 
Registered: Sep 2011
Posts: 11

Original Poster
Rep: Reputation: Disabled
here is the entire process i used. i just tried it on my laptop with the exact same results i got on my office desktop. (sorry for the handmade diff :P)
Code:
hax@slacktop:~/alpine-build$ files=`wget -q http://mirrors.dotsrc.org/slackware/slackware64-13.37/source/n/alpine/ -O - | head -n21 | tail -n12 | sed -e 's/<\/a>.*$//' -e 's/^.*>//'`

hax@slacktop:~/alpine-build$ for i in $files ;do wget -q http://mirrors.dotsrc.org/slackware/slackware64-13.37/source/n/alpine/$i ;done

hax@slacktop:~/alpine-build$ chmod a+x alpine.SlackBuild 

hax@slacktop:~/alpine-build$ vim alpine.SlackBuild
lines 86-88
line 86 == --program-suffix= \
line 87 ++ --with-passfile=.pine.pwd \
line 88 == --build=$ARCH-slackware-linux
lines 92-94
line 92 == # Eric: says: no! Use configure parameters.
line 93 ++ zcat $CWD/alpine.tech-notes.txt.diff.gz | patch -p1 --verbose || exit 1
line 93 -- #zcat $CWD/alpine.tech-notes.txt.diff.gz | patch -p1 --verbose || exit 1
line 94 == <blank line>

hax@slacktop:~/alpine-build$ sudo ./alpine.SlackBuild
<snip>
make[3]: Entering directory `/tmp/alpine-2.00/pico'
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT attach.o -MD -MP -MF .deps/attach.Tpo -c -o attach.o attach.c
mv -f .deps/attach.Tpo .deps/attach.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT basic.o -MD -MP -MF .deps/basic.Tpo -c -o basic.o basic.c
mv -f .deps/basic.Tpo .deps/basic.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT bind.o -MD -MP -MF .deps/bind.Tpo -c -o bind.o bind.c
mv -f .deps/bind.Tpo .deps/bind.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT browse.o -MD -MP -MF .deps/browse.Tpo -c -o browse.o browse.c
mv -f .deps/browse.Tpo .deps/browse.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT buffer.o -MD -MP -MF .deps/buffer.Tpo -c -o buffer.o buffer.c
mv -f .deps/buffer.Tpo .deps/buffer.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT composer.o -MD -MP -MF .deps/composer.Tpo -c -o composer.o composer.c
mv -f .deps/composer.Tpo .deps/composer.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT display.o -MD -MP -MF .deps/display.Tpo -c -o display.o display.c
mv -f .deps/display.Tpo .deps/display.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT file.o -MD -MP -MF .deps/file.Tpo -c -o file.o file.c
mv -f .deps/file.Tpo .deps/file.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT fileio.o -MD -MP -MF .deps/fileio.Tpo -c -o fileio.o fileio.c
mv -f .deps/fileio.Tpo .deps/fileio.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT line.o -MD -MP -MF .deps/line.Tpo -c -o line.o line.c
mv -f .deps/line.Tpo .deps/line.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT pico.o -MD -MP -MF .deps/pico.Tpo -c -o pico.o pico.c
mv -f .deps/pico.Tpo .deps/pico.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT random.o -MD -MP -MF .deps/random.Tpo -c -o random.o random.c
mv -f .deps/random.Tpo .deps/random.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT region.o -MD -MP -MF .deps/region.Tpo -c -o region.o region.c
mv -f .deps/region.Tpo .deps/region.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT search.o -MD -MP -MF .deps/search.Tpo -c -o search.o search.c
mv -f .deps/search.Tpo .deps/search.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT window.o -MD -MP -MF .deps/window.Tpo -c -o window.o window.c
mv -f .deps/window.Tpo .deps/window.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT word.o -MD -MP -MF .deps/word.Tpo -c -o word.o word.c
mv -f .deps/word.Tpo .deps/word.Po
rm -f libpico.a
/usr/bin/ar cru libpico.a attach.o basic.o bind.o browse.o buffer.o composer.o display.o file.o fileio.o line.o pico.o random.o region.o search.o window.o word.o 
ranlib libpico.a
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT main.o -MD -MP -MF .deps/main.Tpo -c -o main.o main.c
mv -f .deps/main.Tpo .deps/main.Po
gcc -std=gnu99 -DHAVE_CONFIG_H   -I../include -I/usr/include  -pthread -O2 -fPIC -MT utf8stub.o -MD -MP -MF .deps/utf8stub.Tpo -c -o utf8stub.o utf8stub.c
mv -f .deps/utf8stub.Tpo .deps/utf8stub.Po
/bin/sh ../libtool --tag=CC   --mode=link gcc -std=gnu99 -pthread -O2 -fPIC  -L/usr/lib  -o pico main.o utf8stub.o ../c-client/utf8.o libpico.a osdep/libpicoosd.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a  -lldap  -lncurses -llber -lssl
mkdir .libs
gcc -std=gnu99 -pthread -O2 -fPIC -o pico main.o utf8stub.o ../c-client/utf8.o  -L/usr/lib libpico.a osdep/libpicoosd.a ../pith/osdep/libpithosd.a ../pith/charconv/libpithcc.a /usr/lib/libldap.so /usr/lib/libsasl2.so -ldl -lcrypto -lncurses /usr/lib/liblber.so -lresolv -lssl -Wl,--rpath -Wl,/usr/lib -Wl,--rpath -Wl,/usr/lib
/usr/lib/libldap.so: could not read symbols: File in wrong format
collect2: ld returned 1 exit status
make[3]: *** [pico] Error 1
make[3]: Leaving directory `/tmp/alpine-2.00/pico'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/tmp/alpine-2.00/pico'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/tmp/alpine-2.00'
make: *** [all] Error 2
 
Old 10-01-2011, 01:05 AM   #9
dive
Senior Member
 
Registered: Aug 2003
Location: UK
Distribution: Slackware
Posts: 3,467

Rep: Reputation: Disabled
Hmm I see the problem. If you can't manually fix that /usr/lib by sedding I don't know what to suggest. For some reason it's either not picking up that you are using x86_64 or something is hardcoded into it.
 
Old 10-01-2011, 01:21 AM   #10
Daedra
Senior Member
 
Registered: Dec 2005
Location: Springfield, MO
Distribution: Slackware64-15.0
Posts: 2,730

Rep: Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393Reputation: 1393
Quote:
Originally Posted by haxwithaxe View Post
I'm trying to recompile alpine with passfile support (--with-passfile) and i can't get it to successfully make. the source package seems to have the libdir variable hard coded at some point to be /usr/lib instead of /usr/lib64.
there is an ominous comment block in the slackbuild:
# This seems to ignore sysconfdir and libdir, so it's pretty useless to try them.
# Brute-force it.
# Eric says: no! Use configure parameters.
#zcat $CWD/alpine.config.h.diff.gz | patch -p1 --verbose || exit 1

which would seem to be helpful but neither the configure options nor the patch help. i spent 2 days trying to find all the places where it could possibly go wrong and failed repeatedly.
any help would be appreciated
Just out of curiosity are you using Alien Bob's Multilib packages.
 
1 members found this post helpful.
Old 10-01-2011, 02:14 AM   #11
haxwithaxe
LQ Newbie
 
Registered: Sep 2011
Posts: 11

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by Daedra View Post
Just out of curiosity are you using Alien Bob's Multilib packages.
yes i'm using his multilib packages.
my next move before my buddy told me to ask for help was to move /usr/lib and put a copy of /usr/lib64 in it's place (it worked once for a similar problem).

Last edited by haxwithaxe; 10-01-2011 at 02:17 AM. Reason: more info
 
Old 10-01-2011, 06:32 AM   #12
andrewthomas
Senior Member
 
Registered: May 2010
Location: Chicago Metro
Distribution: Arch, Gentoo, Slackware
Posts: 1,690

Rep: Reputation: 312Reputation: 312Reputation: 312Reputation: 312
Quote:
Originally Posted by haxwithaxe View Post
yes i'm using his multilib packages.
my next move before my buddy told me to ask for help was to move /usr/lib and put a copy of /usr/lib64 in it's place (it worked once for a similar problem).
I don't know about that approach.

Last edited by andrewthomas; 10-01-2011 at 06:34 AM.
 
Old 10-01-2011, 06:35 AM   #13
haxwithaxe
LQ Newbie
 
Registered: Sep 2011
Posts: 11

Original Poster
Rep: Reputation: Disabled
Quote:
Originally Posted by andrewthomas View Post
I don't know about that approach.

On my Gentoo multilib install all the files are in /usr/lib64 and /usr/lib is a symbolic link to /usr/lib64.
in multilib slackware64 (with alienbob's setup at least) the 32bit libs are in /usr/lib and the 64bit libs are in /usr/lib64.
actually i think it would be a tad smarter to make a pure 64bit slackware vm to use for building things like this :/

Last edited by haxwithaxe; 10-01-2011 at 06:41 AM. Reason: adding mad ravings
 
Old 10-01-2011, 07:07 AM   #14
andrewthomas
Senior Member
 
Registered: May 2010
Location: Chicago Metro
Distribution: Arch, Gentoo, Slackware
Posts: 1,690

Rep: Reputation: 312Reputation: 312Reputation: 312Reputation: 312
Quote:
Originally Posted by haxwithaxe View Post
actually i think it would be a tad smarter to make a pure 64bit slackware vm to use for building things like this :/
You are correct.
 
Old 10-01-2011, 09:23 AM   #15
adamk75
Senior Member
 
Registered: May 2006
Posts: 3,091

Rep: Reputation: 399Reputation: 399Reputation: 399Reputation: 399
You can likely get the build to work by temporarily renaming /usr/lib to /usr/lib32

Adam
 
  


Reply



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
[SOLVED] Transmission Slackbuild fails to compile on Slackware64 13.1 astanton Slackware 9 11-10-2010 06:21 PM
[SOLVED] bluez.Slackbuild fix for Slackware64-13.0 drumz Slackware 5 05-04-2010 11:30 PM
[SOLVED] ORBit2 Slackbuild fails when building 32 bit package on current multilib damgar Slackware 4 04-10-2010 02:26 PM
Slackbuild of Scilab 5.1 fails under Slackware64 13... is this reproducible...?? Alexvader Slackware 21 11-29-2009 02:29 PM
For the Krusader fans on slackware64 slackbuild ROXR Slackware 0 07-20-2009 06:03 PM

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

All times are GMT -5. The time now is 09:16 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