Re: emchain: Automated toolchain builder
I managed to fix the $(binary_stamp)-libstdcxx: target in the
debian/rules.d/binary-libstdcxx-cross.mk file so that the duplicated
'powerpc-cross-powerpc-cross' dependency no longer occurs. It's a
rather brute force fix (I duplicated some sed code used elsewhere in the
file to strip out the 'powerpc-cross' in case it already exists before
it gets put back by the later sed script). I'll send you my patch after
some further testing. I'm not sure why the cross version of
dh_shlibdeps is incorrectly generating the dependency in the .substvars
file. I didn't find any evidence that the target was geting generated
twice in the build log (which could cause the sed script to run twice),
so I'm assuming that somehow dh_shlibdeps is either adding it twice, or
working from files that already have the 'powerpc-cross' embedded in
I also think I know why the libgcc1 library is not being generated (will
verify in my next build, which I'm about to kick off). I think it's
because in debian/rules.defs, the 'with_libgcc' target is defined to be
with_libgcc := yes
... (and later)
with_libgcc := built from gcc-4.0 sources
This I think will prevent the library from being added as a dependency
of the build later on. If I am right, do you know if there is a
specific reason why this library was excluded from the build with
gcc-3.4? You mentioned something about using the one from gcc-4.0. Was
that because there is a specific problem with the one from gcc-3.4?
I just wanted you to know I have a workaround so you don't waste any
time on it.
Jim Heck - Sun Microsystems wrote:
Thanks for all your help so far.
I found one other thing that may be of interest to you concerning the
gcc-3.4 libstdc++6-powerpc-cross package. There is a typo in the
generated dependencies of the package (see below, powerpc-cross is
duplicated). I tried to analyze and my best guess is that there is a
problem with the sed scripts that modify this in the
debian/rules.d/binary-libstdcxx-cross.mk file (or at least I think
that is where the problem arises, I couldn't quite make sense of how
that all works).
As I said in my last message, this dependency called out should be for
libgcc1-powerpc-cross, which as I mentioned doesn't get built for some
reason. I tried satisfying the dependency as you suggested using a
library from gcc-4.1, but the typo prevented the dependency from being
Let me know if I should file this as a bug against gcc-3.4 or not.
Here is a dump using dpkg -I of the built library.
jheck@heckmobile:/usr/src/cross-toolchain-3.4$ dpkg -I
new debian package, version 2.0.
size 334952 bytes: control archive= 817 bytes.
804 bytes, 22 lines control
342 bytes, 4 lines md5sums
34 bytes, 1 lines shlibs
Depends: gcc-3.4-base (= 3.4.6-4), libc6-powerpc-cross (>= 2.3.5-1),
libgcc1-powerpc-cross-powerpc-cross (>= 3.4.4)
Maintainer: Debian GCC Maintainers <email@example.com>
Description: The GNU Standard C++ Library v3
This package contains an additional runtime library for C++ programs
built with the GNU compiler.
libstdc++-v3 is a complete rewrite from the previous libstdc++-v2, which
was included up to g++-2.95. The first version of libstdc++-v3 appeared
This package contains files for powerpc architecture, for use in