[Scratchbox-users] prebuilt mips compiler on scratchbox 1.0.7
Jussi Hakala
jussi.hakala at movial.fi
Wed May 7 12:43:42 EEST 2008
COMPILER_PACKAGE is the final name of the package to contain your
toolchain. We have mostly been using:
scratchbox-toolchain-$(COMPILER_NAME)
COMPILER_NAME is the name of your compiler, usually the same with the
directory name it resides under /scratchbox/compilers.
VENDOR is the name used in the architecture triplet, for example in
"arm-none-linux-gnu" the VENDOR part is "none-".
For your issue 2, you need to make a host target (target using host
compiler) to compile the sb-toolchain-extras with [1].
You can use the configuration files of the prepackaged toolchains at
scratchbox.org as an example. They can be found at
/scratchbox/compilers/compiler-name/build-config.
Regards,
Jussi
[1]
$ sb-conf st host -c host-gcc -d perl:debian-etch -t none
$ sb-conf in host -c -d -e
$ sb-conf se host
L A wrote:
> Jussi,
>
> Thanks for the prompt reply. My compiler did work when called directly
> from the command line.
>
> These are my issues:
>
> - The .conf file. I have no idea about what my COMPILER_PACKAGE and
> VENDOR are . And I dont know where to look either.
>
> COMPILER_NAME = uclibc-mipsel
> COMPILER_PACKAGE = <you have to fill in this one>
> ALIEN_TC = yes
>
> CC_VER = 3.4
> CC_GCCVER = 3.4.6
> CC_FULLVER = 3:$(CC_GCCVER)
> CC_DEBIAN_DIR = gcc-3.4-debian
>
> ARCH = mipsel
> SUB_ARCH = $(ARCH)
> VENDOR = Unknown
> TOOLCHAIN_PREFIX_END = uclibc-
> TARGET_END = -uclibc
>
> BINUTILS_FULLVER = 2.17.50.0.12-sb1
>
> HEADERS_DIR = $(COMPILER_DIR)/mipsel-linux-uclibc/include
> LINUX_HEADERS_SUBDIRS = linux asm
> LINUX_HEADERS_VER = 2.6.12
>
> LIBC_FILES_BINS = lib/gcc/mipsel-linux-uclibc/3.4.6
> mipsel-linux-uclibc/lib mipsel-linux-uclibc/target-apps/sbin
> mipsel-linux-uclibc/target-apps/usr/bin
> LIBC_FILES_LIBS = mipsel-linux-uclibc/lib
> CHECKSUM_FILE = ../../$(CONFIG:.conf=.checksums)
>
>
>
>
> - Issue number 2:
> Make CONFIG fails:
>
> [sbox-97405: ~/sb-toolchain-extras] > make
> CONFIG=meta/alien-tc/uclibc-mipsel.conf -C meta/alien-tc
> make: Entering directory `/home/levent/sb-toolchain-extras/meta/alien-tc'
> [===== NOW BUILDING: alien-tc-1 =====]
> [fetch] complete for alien-tc.
> [checksum] complete for alien-tc.
> [extract] complete for alien-tc.
> [patch] complete for alien-tc.
> ==> Building toolchain/post-install as a dependency
> ==> Building binutils/binutils-debian as a dependency
> ==> Building cc/gcc-3.4-debian as a dependency
> make[1]: Entering directory
> `/home/levent/sb-toolchain-extras/cc/gcc-3.4-debian'
> [===== NOW BUILDING: gcc-3.4 =====]
> [fetch] complete for gcc.
> [checksum] complete for gcc.
> [extract] complete for gcc.
> [patch] complete for gcc.
> [configure] complete for gcc.
> cd work/gcc-3.4 && env COMPILER_DIR=/scratchbox/compilers/uclibc-mipsel
> TARGET=mipsel-none-linux-uclibc VERSION=3.4.6
> SBOX_REDIRECT_BINARIES=/scratchbox/compilers/bin/gcc:/scratchbox/compilers/uclibc-mipsel/bin/mipsel-none-linux-uclibc-gcc
> LIBC_FILES_LIBS="mipsel-linux-uclibc/lib " dpkg-buildpackage -rfakeroot
> -b -uc
> dpkg-buildpackage: source package is gcc-3.4
> dpkg-buildpackage: source version is 3:3.4.6-sb1
> dpkg-buildpackage: source changed by Scratchbox Developers
> <scratchbox-devel at lists.scratchbox.org
> <mailto:scratchbox-devel at lists.scratchbox.org>>
> /scratchbox/tools/bin/sh: line 1: /scratchbox/compilers/bin/gcc: No such
> file or directory
> dpkg-architecture: warning: Couldn't determine gcc system type, falling
> back to default (native compilation)
> /scratchbox/tools/bin/sh: line 1: /scratchbox/compilers/bin/gcc: No such
> file or directory
> dpkg-architecture: warning: Couldn't determine gcc system type, falling
> back to default (native compilation)
> dpkg-buildpackage: host architecture i386
> dpkg-buildpackage: source version without epoch 3.4.6-sb1
> /var/lib/dpkg/status: No such file or directory
> dpkg-buildpackage: Build dependencies/conflicts unsatisfied; aborting.
> dpkg-buildpackage: (Use -d flag to override.)
> make[1]: *** [build-packages] Error 3
> make[1]: Leaving directory
> `/home/levent/sb-toolchain-extras/cc/gcc-3.4-debian'
> make: *** [dep-../../cc/gcc-3.4-debian] Error 2
> make: Leaving directory `/home/levent/sb-toolchain-extras/meta/alien-tc'
>
>
> - Issue number 3:
> When I try to call gcc, this is what I get:
> [sbox-97405: ~/sb-toolchain-extras] > gcc
> sbox-mipsel-unknown-linux-uclibc-gcc: No such file or directory
>
>
>
> My compiler tree is something like this:
>
> \ bin -> mipsel-linux-uclibc-gcc .... (the executables)
> \include\c++\3.4.6\ -> cctype, cfloat ... (standard c++ headers)
> \include\c++\3.4.6\mipsel-linux-uclibc\bits\ -> c++io.h ... (some header
> files)
> \info -> some gz files like gccinstall.info.gz
> \lib\gcc\mipsel-linux-uclibc\3.4.6\ -> some binaries : libgcc.a etc
> \libexec\gcc\mipsel-linux-uclibc\3.4.6\ -> some binaries like: cc1
> \mipsel-linux-uclibc\bin -> gcc, g++ ..
> \mipsel-linux-uclibc\include -> header files
> \mipsel-linux-uclibc\lib -> libraries like ldUclibc.so
> \mipsel-linux-uclibc\sys-include -> header files
> \mipsel-linux-uclibc\target-apps\sbin -> ldconfig
> \mipsel-linux-uclibc\target-apps\usr -> ldd, gdbserver
>
> Thanks for the help,
> Levent
>
>
>
> On Tue, May 6, 2008 at 8:17 AM, Jussi Hakala <jussi.hakala at movial.fi
> <mailto:jussi.hakala at movial.fi>> wrote:
>
> It should be, yes.
>
> At least I have a vague memory of packaging one (mips or mipsel) at
> some point in time and it worked correctly then :)
>
> The compiler is seen by sb-conf/sb-menu if there's a directory for
> the compiler under /scratchbox/compilers and there exists a file
> called compiler-name which contains information on the compiler. See
> other toolchain packages for various examples. This file is
> generated by sb-toolchain-extras.
>
> Anyway, given your toolchain works outside scratchbox, the process
> should be somewhat straightforward. The possible problems are mostly
> files in some unusual locations, but that can be solved with proper
> build-time configuration (the .conf file in meta/alien-tc) and/or
> creative symlinking...
>
> You can also test your compiler using an explicit path, even if you
> have no target, ie.
> /scratchbox/compilers/my-compiler/bin/arch-foo-linux-bar-gcc
> /scratchbox/packages/hello.c and see what happens.
>
> And if you can provide more detailed error message, then probably me
> (or someone else here) would be more likely to come up with a more
> detailed answer :)
>
> Regards,
>
> Jussi
>
> L A wrote:
>
> Hi,
>
> Is it possible to use a prebuilt mips compiler on scratchbox? I
> have walked through the steps in ForeignToolchains wiki, but no
> joy. My compiler did not even show up in the compilers list (the
> one in the setup menu). Any ideas?
>
> Thanks,
> Levent
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Scratchbox-users mailing list
> Scratchbox-users at lists.scratchbox.org
> <mailto:Scratchbox-users at lists.scratchbox.org>
> http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-users
>
>
> _______________________________________________
> Scratchbox-users mailing list
> Scratchbox-users at lists.scratchbox.org
> <mailto:Scratchbox-users at lists.scratchbox.org>
> http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-users
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Scratchbox-users mailing list
> Scratchbox-users at lists.scratchbox.org
> http://lists.scratchbox.org/cgi-bin/mailman/listinfo/scratchbox-users
More information about the Scratchbox-users
mailing list