AVR C Runtime Library - Bugs: bug #38037, "Building and...
You are not allowed to post comments on this tracker with your current authentication level.
bug #38037: "Building and Installing" needs round-up
Submitter: | Georg-Johann Lay <gjlayde> | ||
Submitted: | Mon 07 Jan 2013 06:17:52 PM UTC | ||
Category: | Documentation | Severity: | 3 - Normal |
Priority: | 5 - Normal | Item Group: | Build system |
Status: | None | Assigned to: | elderling |
Percent Complete: | 0% | Open/Closed: | Open |
Release: | 1.8.0 | Fixed Release: | None |
No files currently attached
Depends on the following items: None found
Items that depend on this one: None found
Carbon-Copy List
Follows 1 latest change.
Date | Changed by | Updated Field | Previous Value | => | Replaced by |
---|---|---|---|---|---|
2016-08-14 | elderling | Assigned to | None | elderling |
Powered by Savane 3.13-d3ae.
Corresponding source code
The "Building and Installing under Linux, FreeBSD, and Others" documentation [1] needs some fixes:
1)
"Installing GCC" states in [2]:
"First, we highly recommend that GCC be built into a
separate directory from the sources which does not reside
within the source tree. [...] building where srcdir == objdir
should still work, but doesn't get extensive testing;
building where objdir is a subdirectory of srcdir is
not supported."
Nevertheless [1] uses ../configure, i.e. objdir is a subdirectory of srcdir.
2)
Depending on its version, GCC needs several prerequisites: GMP, MPFR, MPC. The recommended way to get them is to "cd $(srcdir)" and then to run ./contrib/download_prerequisites and to do an in-tree build with these prerequisites. This ensures the right versions of the prerequisites are used and that they are configured in sync with GCC, cf. [3]
3) GCC configure should be performed with --with-avrlibc, cf. [2] and see [4] for reasoning.
4) Recent versions of GCC are distributed as one chunk, there is no gcc-core etc. any more.
5) Binutils need not to be in the PATH as GCC is being built provided both are configured with the same prefix.
6) With Linux, Binutils and GCC for MS windows can be built as easily as the tools for Linux: Just configure with, say, --target=i386-mingw32 --build=x86-linux-gnu. This requires working avr-gcc (you already built it as described) and i386-ming32-gcc cross-compilers. The rest of the build process is the same, including the in-tree builds of the prerequisites.
[1] http://nongnu.org/avr-libc/user-manual/install_tools.html
[2] http://gcc.gnu.org/install/configure.html
[3] http://gcc.gnu.org/wiki/InstallingGCC
[4] http://gcc.gnu.org/PR54461