Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 71034 - LTP compilation relies on RPM and unusual paths.
Summary: LTP compilation relies on RPM and unusual paths.
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: High normal (vote)
Assignee: Daniel Black (RETIRED)
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2004-11-12 21:29 UTC by BlaisorBlade
Modified: 2004-12-03 21:03 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
ballista fixes, put in files dir (ltp-ballista-paths.patch,7.95 KB, patch)
2004-11-22 02:35 UTC, Marien Zwart (RETIRED)
Details | Diff
ebuild patch (ltp.patch,1.27 KB, patch)
2004-11-22 02:36 UTC, Marien Zwart (RETIRED)
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description BlaisorBlade 2004-11-12 21:29:18 UTC
When compiling (both with emerge and stand-alone) LTP, it does these unusual things:
1) Checks some dependencies with rpm. It also seem to want to run with exactly those versions of the packages (found no mention in the docs of this). Done in testcases/ballista/create.sh
2) After this, it would run testcases/ballista/ballista/configure to mangle testcases/ballista/ballista/Makefile, and specify some sane settings for compiler path. Instead, it does not, and the path in the file is used: it is /usr/local/g++, not very nice. Also, testcases/ballista/ballista/configure uses as interpreter /usr/local/bin/perl5, which does not work obviously (perl5 does not exist on Gentoo - shouldn't it exist, too?).

The output, then, is:
make[1]: Leaving directory `/var/tmp/portage/ltp-20041104/work/ltp-full-20041104/pan'
make[1]: Entering directory `/var/tmp/portage/ltp-20041104/work/ltp-full-20041104/testcases'
make[2]: Entering directory `/var/tmp/portage/ltp-20041104/work/ltp-full-20041104/testcases/ballista'
./create.sh
sh: rpm: command not found
sh: rpm: command not found

The following dependencie(s) are missing:

libg++-devel-2.8.1-2.i386.rpm
libstdc++5-3.3.1-2mdk.i586.rpm
g++-3.3.3-59756cl.i386.rpm for gcc 3.3.3
libstdc++5-devel-3.3.1-2mdk.i586.rpm
libg++-2.8.1-2.i386.rpm
libstdc++5-static-devel-3.3.1-2mdk.i586.rpm

The rpms can be downloaded at www.rpmfind.net
Install these rpms and re-run this script
make -i -C ballista
make[3]: Entering directory `/var/tmp/portage/ltp-20041104/work/ltp-full-20041104/testcases/ballista/ballista'
/usr/local/g++ -Wno-deprecated -O callGen.cpp -o callGen
make[3]: /usr/local/g++: Command not found
/usr/local/g++ -Wno-deprecated -O callGen_standAlone.cpp -o callGen_standAlone
make[3]: /usr/local/g++: Command not found
make[3]: [callGen] Error 127 (ignored)
/usr/local/g++ -Wno-deprecated -O genCodeCreator.cpp -o genCodeCreator
make[3]: /usr/local/g++: Command not found
make[3]: [callGen_standAlone] Error 127 (ignored)
make[3]: [genCodeCreator] Error 127 (ignored)
/usr/local/g++ -Wno-deprecated -O replacer.cpp -o replacer
make[3]: /usr/local/g++: Command not found
/usr/local/g++ -Wno-deprecated -w -O -DB_SELFHOST -c match.cpp
make[3]: /usr/local/g++: Command not found
make[3]: [replacer] Error 127 (ignored)

And then I stopped it and went investigating.

Reproducible: Always
Steps to Reproduce:
1. emerge -vp '=ltp-20041104'
2.
3.

Actual Results:  
The compilation does not complete all the needed step (some files are not built)
.

Expected Results:  
Build all its parts.

Portage 2.0.51-r3 (default-x86-2004.2, gcc-3.3.4, glibc-2.3.4.20040808-r1, 2.6.
9-skas3-v7 i686)
=================================================================
System uname: 2.6.9-skas3-v7 i686 AMD Athlon(tm) 64 Processor 3000+
Gentoo Base System version 1.5.3
ccache version 2.3 [disabled]
Autoconf: sys-devel/autoconf-2.59-r5
Automake: sys-devel/automake-1.8.5-r1
Binutils: sys-devel/binutils-2.14.90.0.8-r1
Headers:  sys-kernel/linux26-headers-2.6.8.1-r1
Libtools: sys-devel/libtool-1.5.2-r5
ACCEPT_KEYWORDS="x86 ~x86"
AUTOCLEAN="yes"
CFLAGS="-march=athlon-xp -O2 -pipe -fomit-frame-pointer"
CHOST="i686-pc-linux-gnu"
COMPILER=""
CONFIG_PROTECT="/etc /usr/X11R6/lib/X11/xkb /usr/kde/2/share/config /usr/kde/3.
3/env /usr/kde/3.3/share/config /usr/kde/3.3/shutdown /usr/kde/3/share/config /
usr/share/config /usr/share/texmf/dvipdfm/config/ /usr/share/texmf/dvips/config/ 
/usr/share/texmf/tex/generic/config/ /usr/share/texmf/tex/platex/config/ /usr/
share/texmf/xdvi/ /var/qmail/control"
CONFIG_PROTECT_MASK="/etc/gconf /etc/terminfo /etc/env.d"
CXXFLAGS="-march=athlon-xp -O2 -pipe"
DISTDIR="/home/portage/distfiles"
FEATURES="autoaddcvs distlocks sandbox sfperms strict userpriv usersandbox"
GENTOO_MIRRORS="http://gentoo.mirror.sdv.fr http://mirror.switch.ch/mirror/
gentoo/ http://ftp-stud.fht-esslingen.de/pub/Mirrors/gentoo/ http://www.ibiblio.
org/pub/Linux/distributions/gentoo"
MAKEOPTS="-j2"
PKGDIR="/usr/portage/packages"
PORTAGE_TMPDIR="/var/tmp"
PORTDIR="/usr/portage"
PORTDIR_OVERLAY=""
SYNC="rsync://rsync.europe.gentoo.org/gentoo-portage"
USE="3dnow 3dnowex X X509 aalib acl acpi aim alsa arts artswrappersuid avi 
berkdb bitmap-fonts bzlib cdr crypt cscope cups dba dvb dvd dvdr dvdread encode 
erandom ethereal flac foomaticdb fortran ftp gd gdbm gif gphoto2 gpm gtk gtk2 
iconv icq ideaimap imlib innodb irda jabber jpeg jpeg2k junit kde kerberos krb4 
ldap libcaca libg++ libwww live lua lzo lzw-tiff mad maildir mbox md5sum mikmod 
mime mmx mmx2 mng motif mpeg mpeg4 msn mysql mythtv ncurses nls nptl oggvorbis 
opengl oss pam pda pdflib perl php pic png pnp ppds python qt quicktime readline 
real rtc samba scanner sdl session slang slp smime sse sse2 ssl svg sysvipc tcpd 
tetex tga tiff truetype unicode usb userlocales v4l v4l2 wifi winbind x86 xanim 
xine xml xml2 xmms xosd xpm xsl xv xvid xvmc yahoo zlib"
Comment 1 Marien Zwart (RETIRED) gentoo-dev 2004-11-22 02:35:18 UTC
Created attachment 44456 [details, diff]
ballista fixes, put in files dir

This one might fix the perl path weirdness, fixes the path to g++ in the
Makefile, and kills most of the path checks.
Comment 2 Marien Zwart (RETIRED) gentoo-dev 2004-11-22 02:36:04 UTC
Created attachment 44457 [details, diff]
ebuild patch

This applies the previous patch and installs some more files.
Comment 3 Marien Zwart (RETIRED) gentoo-dev 2004-11-22 02:41:07 UTC
ok, this gets this thing a bit further. It still doesn't work though. For starters: the build process is just plain weird. It expects rpm to exist (and be in $PATH even) to check for things. Since it only checks for stuff a normal gentoo gcc with c++ support should already have I just pulled the plug on this.

It then demands perl to live in /usr/local/bin/perl5. This path is hardcoded in the #! lines in a few scripts. I replaced this with /usr/bin/env perl, which should work.

Finally I think I didn't install quite enough: I only installed testcases/bin, I now install all of testcases, which should work a bit better :)

Unfortunately, if you actually try to run the hacked-up ballista it attempts to write to the dir it is installed in, which obviously is not a good idea. I'll leave that one to someone else, I'm tired of fighting a package that apparently doesn't like to get installed.
Comment 4 Daniel Black (RETIRED) gentoo-dev 2004-11-22 02:57:14 UTC
you and a few others. No wonder the original bug 13662 stayed open and untouched for so long.
Comment 5 Daniel Black (RETIRED) gentoo-dev 2004-12-03 21:03:58 UTC
Marien,

Thanks for the patch.
applied to both versions.

patched ltp-20041104.ebuild and added ltp-20041203.ebuild

more fixes welcome.