Getting started with building a GCC cross-compiler

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



A bit of help needed, and much appreciated (Thanks
to Brian and Andrew for clues already provided)...

Background:
I'm trying to build a cygwin cross-compiler for MIPS.
Why ? Our chip vendor provided a GCC C, but no C++.
I've got a lot of C++ code I'd like to run on the part.
The vendor released per GPL the sources they used.
I'm using 3.4.4 as the build compiler, and the
vendor-provided source for the cross-compiler is also
3.4.4-based.

Other background:
In decades past I have written compilers, and I have
adapted another C++ compiler to run bare-metal and
later on an embedded OS I wrote. Thus the low-level
concepts are all very familiar, but I'm just starting
to learn about GCC.

So far:
I have, despite a snarl of dependency traps, stuff
not distributed via cygwin (or distributed non-working)
and guile-less... never mind. So far, I have built a
cross-compiler that compiles C++ OK, and for trivial
test classes runs C++ on my target hardware. I've included
the configure parameters below (provided by the vendor
and mostly matching that reported by gcc -v, which is
also reported below as requested by Andrew).

I'm confused about the supporting libraries.

I hoped (OK, wished) that "make" would create a ready-
to-package cross-compiler including:
- executables (OK so far)
- set of libraries for the target (built by running the
  newly-built cross-compiler)
- the set of include files required for the selected
  language targets
I hoped that the includes/libraries would implement
C and C++ as possible bare-metal. That is, minus file
IO etc. or with harmless stubs to be replaced later
as needed. The vendor has the bare metal adaption for
malloc-level utilities in libgcc.

While I did get a complete set of executables from
the make, I didn't get libgcc, libstdc++, nor did I get
the include files. What am I missing here ?

I need to get the C++ libraries built (and then I'll
see what work I must do to adapt to the bare-metal
environment).

I'd be grateful for any pointers, directions to
documentation I should study, etc...


=== Configure parameters:
../src/configure                                                \
--target=pic32mx                                                \
--program-prefix=pic32-                                         \
--enable-languages=c,c++                                        \
--prefix=$WORKING_DIR/release                                   \
--libexecdir=$WORKING_DIR/release/pic32mx/bin                   \
--disable-nls                                                   \
--disable-tui --disable-gdbtk --disable-shared --enable-static  \
--disable-threads --with-dwarf2 --enable-multilib               \
--with-lib-path=: --without-headers                             \

==== Existing cross-compiler -v output:
Configured with: ../src/configure --target=pic32mx --program-prefix=pic32-
--enable-languages=c
--prefix =/home/c11067/src/MPLABC32/pic32-microchip-release-1.04-freeze-20080915/pic32-tools
--libexecdir=/home/c11067/src/MPLABC32/pic32-microchip-release-1.04-freeze-20080915/pic32-tools/pic32mx/bin
--build=i686-pc-linux-gnu --host=i586-mingw32msvc
--disable-nls --disable-tui --disable-gdbtk --disable-shared --enable-static --disable-threads --disable-bootstrap --with-dwarf2 --enable-multilib --without-newlib --with-lib-path=:
Thread model: posix
gcc version 3.4.4   Microchip MPLAB C Compiler for PIC32 MCUs v1.04-20080908


Dave Nadler, USA East Coast voice (978) 263-0097, drn@xxxxxxxxxx


[Index of Archives]     [Linux C Programming]     [Linux Kernel]     [eCos]     [Fedora Development]     [Fedora Announce]     [Autoconf]     [The DWARVES Debugging Tools]     [Yosemite Campsites]     [Yosemite News]     [Linux GCC]

  Powered by Linux