Several of my patches for cross building gcc-4.4 with prefix and statically
have been recently accepted, so I thought it would be a good time to try to
build the unstable version and see if recent changes have affected my
ability to build a toolchain. I ran into the following dh_link error, where
it is refusing to work because one of the paths passed to it when composing
the libstdc++6-4.4 library was a directory instead of a file (which it
indeed was).
: # remove precompiled headers
find debian/tmp -type d -name '*.gch' | xargs rm -rf
for i in
debian/tmp//opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/include/c++/4.4.5/*-linux;
do \
if [ -d $i ]; then mv $i $i-gnu; fi; \
done
DH_COMPAT=2 dh_movefiles -plibstdc++6-4.4-dev-armel-cross
/opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/arm-linux-gnueabi/include/c++/4.4.5/
/opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/lib/gcc/arm-linux-gnueabi/4.4.5/libstdc++.{a,so}
/opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/lib/gcc/arm-linux-gnueabi/4.4.5/libsupc++.a
dh_movefiles: Compatibility levels before 5 are deprecated.
DH_COMPAT=2 dh_movefiles -plibstdc++6-4.4-pic-armel-cross
/opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/lib/gcc/arm-linux-gnueabi/4.4.5/libstdc++_pic.a
dh_movefiles: Compatibility levels before 5 are deprecated.
DH_COMPAT=2 dh_movefiles -plibstdc++6-4.4-dbg-armel-cross
/opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/arm-linux-gnueabi/lib/debug/libstdc++.{a,so*}
dh_movefiles: Compatibility levels before 5 are deprecated.
dh_link -plibstdc++6-4.4-dev-armel-cross \
//opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/arm-linux-gnueabi/lib/libstdc++.so.6
\
//opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/lib/gcc/arm-linux-gnueabi/4.4.5/libstdc++.so
\
//opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/arm-linux-gnueabi/include/c++/4.4.5
//opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/arm-linux-gnueabi/include/c++/4.4.5
dh_link: link destination
debian/libstdc++6-4.4-dev-armel-cross//opt/ilomtools/crosscompiler/gcc-4.4__100910/arm/arm-linux-gnueabi/include/c++/4.4.5
is a directory
make[1]: *** [stamps/08-binary-stamp-libstdcxx-dev] Error 2
make[1]: Leaving directory `/home/jheck/opt-build-static/gcc-4.4-4.4.4'
make: *** [binary] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary gave error exit
status 2
jh...@squeeze2:~/opt-build-static/gcc-4.4-4.4.4$
I am building the gcc-4.4 unmodified from unstable with the following
command line
PF=/opt/ilomtools/crosscompiler/gcc-4.4__100910/arm DEB_BUILD_OPTIONS=static
DEB_CROSS_NO_BIARCH=yes GCC_TARGET=armel DEB_CROSS=yes dpkg-buildpackage -us
-uc -rfakeroot
I figured I'd post here first to see if this is known, before filing a
Debian bug report against the cross-compiler.
Thanks,
-Jim