* New platform recommendations
@ 2020-04-10 18:28 Dan Tejada
0 siblings, 0 replies; only message in thread
From: Dan Tejada @ 2020-04-10 18:28 UTC (permalink / raw)
To: crossgcc
To someone who knows what they are doing:
I am trying to build a configuration for GCC on the c6x target. C6x is the TI DSP without an MMU I have a reference GCC implementation built by CodeSorcery ( a long time ago before they were bought by Mentor and ruined). I have built several Linux kernels with this compiler but would like to update it. I have used crosstool-ng for MIPS and ARM and it works like a champ. I know quite a bit about the c6x platform and decided to I'd try to build a cross tool configuration for it.
Below are the config files I added and the output of my build. I'm sure I didn't add something that people normally configure (and that will be obvious once I start really testing this). Can anyone provide advice of things I may have overlooked or might want to verify. Is there a test suite I can run on my target to verify the output of the compiler? I have target hardware (and simulators) that I can test it on.
Thanks,
Dan
crosstool-ng/config/arch/c6x.in:
# c6x specific configuration file
## no-package
## select ARCH_SUPPORTS_32
## select ARCH_DEFAULT_32
## select ARCH_SUPPORTS_EITHER_ENDIAN
## select ARCH_DEFAULT_LE
## select ARCH_SUPPORTS_FLAT_FORMAT
## depends on EXPERIMENTAL
##
## help The TI C6x architecture
crosstool-ng/config/arch/c6x.in:
# Compute c6x-specific values
CT_DoArchUClibcConfig() {
local cfg="${1}"
CT_DoArchUClibcSelectArch "${cfg}" "tic6x"
}
CT_DoArchTupleValues() {
CT_TARGET_ARCH="tic6x"
#binutils does not like uclibc in the tuple
CT_TARGET_SYS=
}
Here is my output:
dan@osboxes:~/gcc-c6x$ ct-ng build
[INFO ] Performing some trivial sanity checks
[WARN ] Number of open files 1024 may not be sufficient to build the toolchain; increasing to 2048
[INFO ] Build started 20200410.123452
[INFO ] Building environment variables
[EXTRA] Preparing working directories
[EXTRA] Installing user-supplied crosstool-NG configuration
[EXTRA] =================================================================
[EXTRA] Dumping internal crosstool-NG configuration
[EXTRA] Building a toolchain for:
[EXTRA] build = x86_64-pc-linux-gnu
[EXTRA] host = x86_64-pc-linux-gnu
[EXTRA] target = tic6x-unknown-uclinux
[EXTRA] Dumping internal crosstool-NG configuration: done in 0.32s (at 00:06)
[INFO ] =================================================================
[INFO ] Retrieving needed toolchain components' tarballs
[INFO ] Retrieving needed toolchain components' tarballs: done in 1.36s (at 00:08)
[INFO ] =================================================================
[INFO ] Extracting and patching toolchain components
[INFO ] Extracting and patching toolchain components: done in 2.70s (at 00:10)
[INFO ] =================================================================
[INFO ] Installing zlib for host
[EXTRA] Configuring zlib
[EXTRA] Building zlib
[EXTRA] Installing zlib
[INFO ] Installing zlib for host: done in 7.77s (at 00:18)
[INFO ] =================================================================
[INFO ] Installing GMP for host
[EXTRA] Configuring GMP
[EXTRA] Building GMP
[EXTRA] Installing GMP
[INFO ] Installing GMP for host: done in 94.60s (at 01:53)
[INFO ] =================================================================
[INFO ] Installing MPFR for host
[EXTRA] Configuring MPFR
[EXTRA] Building MPFR
[EXTRA] Installing MPFR
[INFO ] Installing MPFR for host: done in 61.64s (at 02:54)
[INFO ] =================================================================
[INFO ] Installing ISL for host
[EXTRA] Configuring ISL
[EXTRA] Building ISL
[EXTRA] Installing ISL
[INFO ] Installing ISL for host: done in 72.72s (at 04:07)
[INFO ] =================================================================
[INFO ] Installing MPC for host
[EXTRA] Configuring MPC
[EXTRA] Building MPC
[EXTRA] Installing MPC
[INFO ] Installing MPC for host: done in 15.99s (at 04:23)
[INFO ] =================================================================
[INFO ] Installing binutils for host
[EXTRA] Configuring binutils
[EXTRA] Building binutils
[EXTRA] Installing binutils
[INFO ] Installing binutils for host: done in 165.84s (at 07:09)
[INFO ] =================================================================
[INFO ] Installing pass-1 core C gcc compiler
[EXTRA] Configuring core C gcc compiler
[EXTRA] Building gcc
[EXTRA] Installing gcc
[EXTRA] Housekeeping for core gcc compiler
[EXTRA] '' --> lib (gcc) lib (os)
[INFO ] Installing pass-1 core C gcc compiler: done in 1200.37s (at 27:10)
[INFO ] =================================================================
[INFO ] Installing kernel headers
[EXTRA] Installing kernel headers
[EXTRA] Checking installed headers
[INFO ] Installing kernel headers: done in 7.51s (at 27:17)
[INFO ] =================================================================
[INFO ] Installing C library headers & start files
[INFO ] =================================================================
[INFO ] Building for multilib 1/1: ''
[EXTRA] Copying sources to build dir
[EXTRA] Applying configuration
[EXTRA] Building headers
[EXTRA] Installing headers
[INFO ] Building for multilib 1/1: '': done in 11.40s (at 27:29)
[INFO ] Installing C library headers & start files: done in 11.52s (at 27:29)
[INFO ] =================================================================
[INFO ] Installing pass-2 core C gcc compiler
[EXTRA] Configuring core C gcc compiler
[EXTRA] Building gcc
[EXTRA] Installing gcc
[EXTRA] Housekeeping for core gcc compiler
[EXTRA] '' --> lib (gcc) lib (os)
[INFO ] Installing pass-2 core C gcc compiler: done in 1220.96s (at 47:50)
[INFO ] =================================================================
[INFO ] Installing C library
[INFO ] =================================================================
[INFO ] Building for multilib 1/1: ''
[EXTRA] Copying sources to build dir
[EXTRA] Applying configuration
[EXTRA] Cleaning up startfiles
[EXTRA] Building C library
[EXTRA] Installing C library
[INFO ] Building for multilib 1/1: '': done in 63.24s (at 48:53)
[INFO ] Installing C library: done in 63.54s (at 48:53)
[INFO ] =================================================================
[INFO ] Installing final gcc compiler
[EXTRA] Configuring final gcc compiler
[EXTRA] Building final gcc compiler
[EXTRA] Installing final gcc compiler
[EXTRA] Housekeeping for final gcc compiler
[EXTRA] '' --> lib (gcc) lib (os)
[INFO ] Installing final gcc compiler: done in 1195.59s (at 68:49)
[INFO ] =================================================================
[INFO ] Checking dynamic linker symlinks
[EXTRA] Checking dynamic linker for multilib ''
[INFO ] Checking dynamic linker symlinks: done in 0.16s (at 68:49)
[INFO ] =================================================================
[INFO ] Finalizing the toolchain's directory
[INFO ] Stripping all toolchain executables
[EXTRA] Installing the populate helper
[EXTRA] Installing a cross-ldd helper
[EXTRA] Creating toolchain aliases
[EXTRA] Removing installed documentation
[EXTRA] Collect license information from: /home/dan/gcc-c6x/.build/tic6x-unknown-uclinux/src
[EXTRA] Put the license information to: /home/dan/x-tools/tic6x-unknown-uclinux/share/licenses
[INFO ] Finalizing the toolchain's directory: done in 8.34s (at 68:57)
[INFO ] Build completed at 20200410.134348
[INFO ] (elapsed: 68:55.85)
[INFO ] Finishing installation (may take a few seconds)...
[68:57] / dan@osboxes:~/gcc-c6x$
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2020-04-10 18:28 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-10 18:28 New platform recommendations Dan Tejada
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).