Discussion:
tips for understanding systemtap build failure?
(too old to reply)
Timo Juhani Lindfors
2012-02-10 15:20:02 UTC
Permalink
Hi,

systemtap 1.7-1~experimental1 seems to FTBFS on s390x and sparc in a
somewhat confusing way:

dh_link -a
debian/rules override_dh_compress
make[1]: Entering directory `/build/buildd-systemtap_1.7-1~experimental1-s390x-l1KAR4/systemtap-1.7'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
dh_compress -X.stp -X.wav -Xsocktop -Xsyscalltimes -X.pdf
make[1]: Leaving directory `/build/buildd-systemtap_1.7-1~experimental1-s390x-l1KAR4/systemtap-1.7'
debian/rules override_dh_fixperms
make[1]: Entering directory `/build/buildd-systemtap_1.7-1~experimental1-s390x-l1KAR4/systemtap-1.7'
make[1]: warning: -jN forced in submake: disabling jobserver mode.
dh_fixperms
chmod 4754 debian/systemtap-runtime/usr/bin/staprun
chmod: cannot access `debian/systemtap-runtime/usr/bin/staprun': No such file or directory
make[1]: *** [override_dh_fixperms] Error 1
make[1]: Leaving directory `/build/buildd-systemtap_1.7-1~experimental1-s390x-l1KAR4/systemtap-1.7'
make: *** [binary-arch] Error 2

https://buildd.debian.org/status/package.php?p=systemtap&suite=experimental

Porterbox does not seem to have the required build-dependencies
installed in the chroot so I can not reproduce this myself.

Any tips?
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Philipp Kern
2012-02-10 20:40:03 UTC
Permalink
Post by Timo Juhani Lindfors
Porterbox does not seem to have the required build-dependencies
installed in the chroot so I can not reproduce this myself.
Done (chroot: sid_s390x).

Kind regards,
Philipp Kern
--
.''`. Philipp Kern Debian Developer
: :' : http://philkern.de Stable Release Manager
`. `' xmpp:***@0x539.de Wanna-Build Admin
`- finger pkern/***@db.debian.org
Timo Juhani Lindfors
2012-02-10 21:20:02 UTC
Permalink
Post by Philipp Kern
Done (chroot: sid_s390x).
Thanks!

It seems debian/systemtap-doc exists but debian/systemtap-runtime does
not.

debian/control has s390 in the architecture list but not s390x. Why is
the package being built on s390x?
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Timo Juhani Lindfors
2012-02-10 21:30:01 UTC
Permalink
Post by Timo Juhani Lindfors
debian/control has s390 in the architecture list but not s390x. Why is
the package being built on s390x?
Sorry for the noise, this probably happens since systemtap-sdt-dev's
architecture was changed from "all" to "linux-any". I guess I need to
list the supported architectures explicitely also here.
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Timo Juhani Lindfors
2012-02-11 13:20:03 UTC
Permalink
Hi,
Post by Philipp Kern
Done (chroot: sid_s390x).
Thanks, you can remove the build-dependencies now.

Btw, would you like us to add s390x to the architecture list for
systemtap? Currently it only lists "s390". If you do, I'd appreciate if
you could run the testsuite on some s390x machine: it needs root
privileges so I can't do it on a porterbox.

-Timo
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Philipp Kern
2012-02-21 17:00:02 UTC
Permalink
Hi,
Post by Timo Juhani Lindfors
Post by Philipp Kern
Done (chroot: sid_s390x).
Thanks, you can remove the build-dependencies now.
Btw, would you like us to add s390x to the architecture list for
systemtap? Currently it only lists "s390". If you do, I'd appreciate if
you could run the testsuite on some s390x machine: it needs root
privileges so I can't do it on a porterbox.
sure, if you tell me what to run. make install didn't work with the
pristine source.

Kind regards
Philipp Kern
Timo Juhani Lindfors
2012-02-21 21:50:01 UTC
Permalink
Hi,
Post by Philipp Kern
sure, if you tell me what to run. make install didn't work with the
pristine source.
I test the debian packages with

apt-get source systemtap
cd systemtap-*
touch -d @0 stap
./configure --prefix=/usr
sudo make installcheck

This assumes that systemtap has already been installed so you'd need to
add s390x to debian/control, build the package and then install it
before running the above commands.

-Timo
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Philipp Kern
2012-02-21 23:10:01 UTC
Permalink
Post by Timo Juhani Lindfors
Post by Philipp Kern
sure, if you tell me what to run. make install didn't work with the
pristine source.
I test the debian packages with
apt-get source systemtap
cd systemtap-*
./configure --prefix=/usr
sudo make installcheck
This assumes that systemtap has already been installed so you'd need to
add s390x to debian/control, build the package and then install it
before running the above commands.
Same failure as before:

(sid-s390x)***@pkernl0:~/systemtap-1.6$ sudo make installcheck
if test \! -e /usr/bin/stap; then \
echo /usr/bin/stap doesn\'t exist, run make install; \
exit -1; \
fi; \
if test ./stap -nt /usr/bin/stap; then \
echo "/usr/bin/stap is not recent, run make install"; \
exit -1; \
fi;
make -C testsuite installcheck RUNTESTFLAGS=""
make[1]: Entering directory `/home/pkern/systemtap-1.6/testsuite'
Making a new site.exp file...
rmmod uprobes 2>/dev/null
make[1]: [installcheck] Error 1 (ignored)
make check-DEJAGNU RUNTESTFLAGS=" --tool_opts \'install \'"
make[2]: Entering directory `/home/pkern/systemtap-1.6/testsuite'
srcdir=`CDPATH="${ZSH_VERSION+.}:" && cd . && pwd`; export srcdir; \
EXPECT=expect; export EXPECT; \
runtest="env LANG=C SYSTEMTAP_TESTREMOTES= SYSTEMTAP_TESTAPPS= SYSTEMTAP_RUNTIME=/usr/share/systemtap/runtime SYSTEMTAP_TAPSET=/usr/share/systemtap/tapset LD_LIBRARY_PATH=/usr/lib/systemtap CRASH_LIBDIR=/usr/lib/systemtap PATH=/usr/bin:$PATH SYSTEMTAP_PATH=/usr/bin SYSTEMTAP_INCLUDES=/usr/include PKGLIBDIR=/usr/libexec/systemtap ./execrc runtest"; \
if /bin/bash -c "$runtest --version" > /dev/null 2>&1; then \
exit_status=0; l='systemtap'; for tool in $l; do \
if $runtest --tool $tool --tool_opts \'\' --srcdir $srcdir --tool_opts \'install \'; \
then :; else exit_status=1; fi; \
done; \
else echo "WARNING: could not find \`runtest'" 1>&2; :;\
fi; \
exit $exit_status
./execrc: 1: eval: runtest: not found
make[2]: Leaving directory `/home/pkern/systemtap-1.6/testsuite'
if test -n ""; then mail < systemtap.sum; fi
make[1]: Leaving directory `/home/pkern/systemtap-1.6/testsuite'

Kind regards
Philipp Kern
Timo Juhani Lindfors
2012-02-22 05:40:02 UTC
Permalink
Post by Philipp Kern
./execrc: 1: eval: runtest: not found
Installing the dejagnu package should fix this.
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Philipp Kern
2012-02-22 07:50:01 UTC
Permalink
Timo,
Post by Timo Juhani Lindfors
Post by Philipp Kern
./execrc: 1: eval: runtest: not found
Installing the dejagnu package should fix this.
then it fails with this:

Checking "/lib/modules/2.6.32-5-s390x/build/.config" failed with error: No such file or directory

I did install the linux-image package from the s390 host within the
chroot with --force-architecture, but that doesn't give me its .config
in the right place. Should it be enough to place the .config there or
does it need to be a full kernel build tree?

Kind regards
Philipp Kern
Timo Juhani Lindfors
2012-02-22 08:00:01 UTC
Permalink
Post by Philipp Kern
Checking "/lib/modules/2.6.32-5-s390x/build/.config" failed with error: No such file or directory
I did install the linux-image package from the s390 host within the
chroot with --force-architecture, but that doesn't give me its .config
in the right place. Should it be enough to place the .config there or
does it need to be a full kernel build tree?
Sorry for not mentioning all this in the initial email. As listed in
README.Debian you need linux-headers*, linux-kbuild* and
linux-image-*-dbg that match the running kernel so that systemtap can
build kernel modules. I really wish systemtap could just depend on these
but afaik it is not possible.

I wrote

http://lindi.iki.fi/lindi/systemtap/diagnose-error-cases.bash

that should give you a list of packages that you need. Upstream has
integrated similar functionality for redhat/fedora but I don't think my
proof-of-concept is ready for upstream inclusion yet. My guess is that
you need:

linux-image-2.6.32-5-s390x
linux-image-2.6.32-5-s390x-dbg
linux-headers-2.6.32-5-s390x
linux-kbuild-2.6.32
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Philipp Kern
2012-02-22 14:50:02 UTC
Permalink
Timo,
Post by Timo Juhani Lindfors
that should give you a list of packages that you need. Upstream has
integrated similar functionality for redhat/fedora but I don't think my
proof-of-concept is ready for upstream inclusion yet. My guess is that
linux-image-2.6.32-5-s390x
linux-image-2.6.32-5-s390x-dbg
linux-headers-2.6.32-5-s390x
linux-kbuild-2.6.32
that's annoying given that the -dbg flavour doesn't seem to exist. Neither on
s390/squeeze nor s390x/sid.

Kind regards,
Philipp Kern
--
.''`. Philipp Kern Debian Developer
: :' : http://philkern.de Stable Release Manager
`. `' xmpp:***@0x539.de Wanna-Build Admin
`- finger pkern/***@db.debian.org
Timo Juhani Lindfors
2012-02-22 15:50:02 UTC
Permalink
Post by Philipp Kern
that's annoying given that the -dbg flavour doesn't seem to exist. Neither on
s390/squeeze nor s390x/sid.
That's unfortunate, systemtap won't be of much use without -dbg.

If you just want to try systemtap yourself you can enable -dbg by adding

[s390x-tape_image-dbg]
enabled: true

to debian/config/s390/defines and rebuilding linux-2.6 but that of
course won't help people who use vanilla debian packages.
--
To UNSUBSCRIBE, email to debian-s390-***@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact ***@lists.debian.org
Archive: http://lists.debian.org/***@sauna.l.org
Loading...