Jump to content
DELTA47

SVP aide création toolchain pour cross-compilation.

Recommended Posts

Bonjour tt le monde,

 

Je ss sous Linux Mint 16 (Petra), j'ai installé les outils suivants:

 

libexpat1-dev, texinfo, python-dev, gperf, build-essential, automake, autoconf, libtool, make, bison, flex, gawk, libncurses5-dev, subversion, xsltproc, docbook-xsl

 

Hélas, malgrès ça j'arrive pas à créer ma "tool chain" pour Raspberry PI ni avec Buildroot ni avec crosstool-ng !!

 

pour buildroot je reçois le message d'erreur suivant:

 

>>> host-m4 1.4.16 Building
PATH=/usr/local/cross-rpi/bin:/usr/local/cross-rpi/usr/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin  LD_LIBRARY_PATH="/usr/local/cross-rpi/usr/lib:"  PKG_CONFIG="/usr/local/cross-rpi/usr/bin/pkg-config"  PKG_CONFIG_SYSROOT_DIR="/"  PKG_CONFIG_LIBDIR="/usr/local/cross-rpi/usr/lib/pkgconfig"  PERLLIB="/usr/local/cross-rpi/usr/lib/perl"  /usr/bin/make -j4  -C  /home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/
make[1]: Entering directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16'
/usr/bin/make  all-recursive
make[2]: Entering directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16'
Making all in .
make[3]: Entering directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16'
make[3]: Nothing to be done for `all-am'.
make[3]: Leaving directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16'
Making all in examples
make[3]: Entering directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/examples'
make[3]: Nothing to be done for `all'.
make[3]: Leaving directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/examples'
Making all in lib
make[3]: Entering directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/lib'
/usr/bin/make  all-am
make[4]: Entering directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/lib'
/usr/bin/gcc  -std=gnu99  -I.     -O2 -I/usr/local/cross-rpi/include  -I/usr/local/cross-rpi/usr/include -MT clean-temp.o -MD -MP -MF  .deps/clean-temp.Tpo -c -o clean-temp.o clean-temp.c
/usr/bin/gcc  -std=gnu99  -I.     -O2 -I/usr/local/cross-rpi/include  -I/usr/local/cross-rpi/usr/include -MT dup-safer-flag.o -MD -MP -MF  .deps/dup-safer-flag.Tpo -c -o dup-safer-flag.o dup-safer-flag.c
/usr/bin/gcc  -std=gnu99  -I.     -O2 -I/usr/local/cross-rpi/include  -I/usr/local/cross-rpi/usr/include -MT freadahead.o -MD -MP -MF  .deps/freadahead.Tpo -c -o freadahead.o freadahead.c
/usr/bin/gcc  -std=gnu99  -I.     -O2 -I/usr/local/cross-rpi/include  -I/usr/local/cross-rpi/usr/include -MT freading.o -MD -MP -MF  .deps/freading.Tpo -c -o freading.o freading.c
In file included from freadahead.h:18:0,
                from freadahead.c:20:
./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
^
In file included from freading.h:18:0,
                from freading.c:20:
./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
^
In file included from clean-temp.h:22:0,
                from clean-temp.c:23:
./stdio.h:477:1: error: 'gets' undeclared here (not in a function)
_GL_WARN_ON_USE (gets, "gets is a security hole - use fgets instead");
^
make[4]: *** [freading.o] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: *** [freadahead.o] Error 1
mv -f .deps/dup-safer-flag.Tpo .deps/dup-safer-flag.Po
make[4]: *** [clean-temp.o] Error 1
make[4]: Leaving directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/lib'
make[3]: *** [all] Error 2
make[3]: Leaving directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/lib'
make[2]: *** [all-recursive] Error 1
make[2]: Leaving directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16'
make[1]: *** [all] Error 2
make[1]: Leaving directory `/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16'
make: *** [/home/DELTA/RPI/buildroot/output/build/host-m4-1.4.16/.stamp_built] Error 2


 

 

 

et pour crosstool-ng après la commande "menuconfig" j'obtiens:

 


 LN    config
 MKDIR config.gen
 IN    config.gen/arch.in
/home/DELTA/bin/sed: invalid option -- 's'
BusyBox v1.18.5 (2011-08-10 14:27:37 CET) multi-call binary.

Usage: sed [-efinr] SED_CMD [FILE]...

Options:
   -e CMD    Add CMD to sed commands to be executed
   -f FILE    Add FILE contents to sed commands to be executed
   -i    Edit files in-place (else sends result to stdout)
   -n    Suppress automatic printing of pattern space
   -r    Use extended regex syntax

If no -e or -f, the first non-option argument is the sed command string.
Remaining arguments are input files (stdin if none).

make: *** [config.gen/arch.in] Error 1

 

Merci d'avance pour votre aide.

Share this post


Link to post
Share on other sites

Salam,

 

D’après quelques recherches ça viens de gnulib ou m4 , ou tu ne les a pas installés ou tu as une ancienne version alors il faut les mettre a jour.

 

Bonne chance et tiens nous au courant.

Share this post


Link to post
Share on other sites
Salam,

ça viens de gnulib ou m4 , ou tu ne les a pas installés ou tu as une ancienne version alors il faut les mettre a jour.

 

 

Salam,

Merci pour votre réponse, c très gentil à vous.

Après un :

sudo apt-get update

sudo apt-get instal gnulib

 

Hélas, rien de nouveau !!!!!!

Share this post


Link to post
Share on other sites

Remplacez les appels à gets par des appels à fgets.

 

Le problème est que fgets a besoin de connaitre la taille du tampon. Vous devez donc contrôler tous les appels pour vous assurer que les tampons utilisés ne sont pas alloués dynamiquement (via malloc).

 

L'idéal serait en effet d'utiliser la macro suivante:

 

#ifndef gets
#define gets(a) fgets ((a),sizeof((a)),stdin)
#endif

 

Mais elle n'est valable que dans le cas ou le tampon est un tableau de taille fixée lors de la déclaration:

 

#define BUFFER_SIZE 64
char Buffer[bUFFER_SIZE]="";
gets(Buffer); //remplacé par fgets avant la compilation

 

La macro ne peut pas être utilisée dans le cas suivant:

 

#define BUFFER_SIZE 64
char *Buffer = NULL; //sizeof(Buffer) = sizeof(void *) = 4 octets sur x86 (8 octets sur x86_64)

Buffer = malloc(BUFFER_SIZE);

if(Buffer){
   fgets(Buffer,BUFFER_SIZE,stdin); // on ne peut pas utiliser la macro
}

 

Utilser la commande suivante pour lister les fichiers utilisant gets:

 

grep -R gets /home/DELTA/RPI

Share this post


Link to post
Share on other sites

Merci Djezzyman pour votre réponse.

Hélas, g pas pigé ce ke t'as dit !!

Tu voulais dire que je dois toucher aux sources? leskels?

----------------

 

PS: En attendant de résoudre mon probleme j'ai trouvé un compilateur "bar metal" ici:

 

http://www.cl.cam.ac.uk/freshers/raspberrypi/tutorials/os/downloads/arm-none-eabi.tar.bz2

 

J'ai réussi mon premier prgramme (clignoter une LED) en suivat ce tuto:

 

http://www.cl.cam.ac.uk/projects/raspberrypi/tutorials/os/index.html

 

* g aussi téléchargé un compilateur pour Linux:

 

sudo add-apt-repository ppa:linaro-maintainers/toolchain

sudo apt-get update

sudo apt-get install gcc-arm-linux-gnueabi

 

Je vais essayer de compiler le noyau avec.

Share this post


Link to post
Share on other sites

J'ai repondu en me basant sur les messages d'erreurs du compilateur mais c'est vrai que l'utilisation de /usr/bin/gcc pour la compilation est suspect. Il s'agit du compilateur par défaut de votre système qui produira certainement du code X86 ou X64 et non du code ARM.

 

Reportez-vous à la documentation et précisément aux prérequis afin de configurer convenablement l'environnement de développement.

 

Je pense que les paquets utils pour la cross-compilation sont disponibles pour MINT. Ils le sont pour Ubuntu en tout cas.

 

Avant d'activer un repos secondaire, verifiez la disponibilité des paquets dans les repos MINT avec les commandes:

 

apt-get update

apt-cache pkgnames | grep eabi

Share this post


Link to post
Share on other sites

 

Justement, au départ j'ai suivi un tuto de Cristophe Blaess pour céer un Linux from scratch pour le PI en utilisant buildroot mais ça marche pas!!

C'est pas les tutos qui manquent mais en pratique en trouve souvent des problemes/

Merci quand même.

Share this post


Link to post
Share on other sites

Premièrement s'agissant de MINT, j'ai dû modifier manuellement les serveurs configurés dans le fichier /etc/apt/sources.list.d/official-package-repositories.list

 

user@build-host ~/toolchain $ cat /etc/apt/sources.list.d/official-package-repositories.list

# Do not edit this file manually, use Software Sources instead.

 

deb http://packages.linuxmint.com petra main upstream import #id:linuxmint_main

deb http://extra.linuxmint.com petra main #id:linuxmint_extra

 

deb http://archive.ubuntu.com/ubuntu saucy main restricted universe multiverse

deb http://archive.ubuntu.com/ubuntu saucy-updates main restricted universe multiverse

 

deb http://security.ubuntu.com/ubuntu/ saucy-security main restricted universe multiverse

deb http://archive.canonical.com/ubuntu/ saucy partner

 

 

J'ai remplacé petra par saucy pour les serveurs Ubutnu et Canonical. apt-get update renvoyait des messages d'erreurs.

 

Je suis entrain d'essayer crosstool-ng. Il suffit de suivre les instruction sur le site. Il y a aussi quelques petits problèmes lors de la construction mais ceux-ci sont mineurs. Il faut notamment installer le package gcj-jdk pour le support de java avec les autres prérequis qui sont les mêmes que pour buildroot. Sinon il semblerait que certaines URL soient erronées et que le téléchargement de 4 ou 5 tarballs échoue mais on les trouve facilement avec google. Ils sont hébergés sur le site sourceforge.net et doivent être placé dans le repertoire ~/src . Il faut donc aussi créer ce repertoire avant (mkdir ~/src).

 

Avant de lancer la construction il faut éditer la configuration (ct-ng menuconfig) pour utiliser la version 3.0.0 de la librairie MPFR:

 

 

selectionner l'entrée suivante:

 

Companion libraries --->

puis celle-ci:

 

MPFR version (3.0.0) --->

 

 

Le processus est long et n'est pas encore terminé, voici la sortie du processus de construction (ct-ng build) après 35 minutes

[iNFO ] Performing some trivial sanity checks

[iNFO ] Build started 20140414.151115

[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 = i686-pc-linux-gnu

[EXTRA] host = i686-pc-linux-gnu

[EXTRA] target = arm-unknown-linux-gnueabi

[EXTRA] Dumping internal crosstool-NG configuration: done in 0.09s (at 00:02)

[iNFO ] =================================================================

[iNFO ] Retrieving needed toolchain components' tarballs

[iNFO ] Retrieving needed toolchain components' tarballs: done in 0.14s (at 00:02)

[iNFO ] =================================================================

[iNFO ] Extracting and patching toolchain components

[iNFO ] Extracting and patching toolchain components: done in 3.03s (at 00:05)

[iNFO ] =================================================================

[iNFO ] Installing kernel headers

[EXTRA] Installing kernel headers

[EXTRA] Checking installed headers

[iNFO ] Installing kernel headers: done in 6.19s (at 00:11)

[iNFO ] =================================================================

[iNFO ] Installing GMP

[EXTRA] Configuring GMP

[EXTRA] Building GMP

[EXTRA] Installing GMP

[iNFO ] Installing GMP: done in 138.75s (at 02:30)

[iNFO ] =================================================================

[iNFO ] Installing MPFR

[EXTRA] Configuring MPFR

[EXTRA] Building MPFR

[EXTRA] Installing MPFR

[iNFO ] Installing MPFR: done in 34.90s (at 03:05)

[iNFO ] =================================================================

[iNFO ] Installing binutils

[EXTRA] Configuring binutils

[EXTRA] Building binutils

[EXTRA] Installing binutils

[iNFO ] Installing binutils: done in 123.49s (at 05:08)

[iNFO ] =================================================================

[iNFO ] Installing static core C compiler

[EXTRA] Configuring static core C compiler

[EXTRA] Building static core C compiler

[EXTRA] Installing static core C compiler

[iNFO ] Installing static core C compiler: done in 285.73s (at 09:54)

[iNFO ] =================================================================

[iNFO ] Installing C library headers

[EXTRA] Configuring C library

[EXTRA] Installing C library headers

[iNFO ] Installing C library headers: done in 31.38s (at 10:26)

[iNFO ] =================================================================

[iNFO ] Installing C library start files

[EXTRA] Configuring C library

[WARN ] Removing "-pipe" for use with glibc>=2.6

[EXTRA] Building C library start files

[EXTRA] Installing C library start files

[iNFO ] Installing C library start files: done in 24.55s (at 10:50)

[iNFO ] =================================================================

[iNFO ] Installing shared core C compiler

[EXTRA] Configuring shared core C compiler

[EXTRA] Building shared core C compiler

[EXTRA] Installing shared core C compiler

[iNFO ] Installing shared core C compiler: done in 310.95s (at 16:01)

[iNFO ] =================================================================

[iNFO ] Installing C library

[EXTRA] Configuring C library

[WARN ] Removing "-pipe" for use with glibc>=2.6

[EXTRA] Building C library

[EXTRA] Installing C library

[EXTRA] Fixing C library linker scripts

[iNFO ] Installing C library: done in 1107.44s (at 34:29)

[iNFO ] =================================================================

[iNFO ] Installing final compiler

[EXTRA] Configuring final compiler

[EXTRA] Building final compiler

[35:32] -

 

Le compilateur final est long à construire (non terminé après 54 minutes) et il reste le noyau.

 

Je vous tiendrai informé.

Edited by djezzyman

Share this post


Link to post
Share on other sites

WOW ! MERCI encore djezzyman !

Je vais essayé ça dès que possible.

Tiens-moi au courant de tes résultats, stp.

Sans indiscrétion, t'as un PI?

 

----------------

Edit: chez moi les serveurs Ubutnu et Canonical sont déjà sur saucy !!

[left]
DELTA@DELTA-Satellite-L30 ~ $ cat /etc/apt/sources.list.d/official-package-repositories.list
# Do not edit this file manually, use Software Sources instead.

deb http://packages.linuxmint.com petra main upstream import  #id:linuxmint_main
deb http://extra.linuxmint.com petra main #id:linuxmint_extra

deb http://archive.ubuntu.com/ubuntu saucy main restricted universe multiverse
deb http://archive.ubuntu.com/ubuntu saucy-updates main restricted universe multiverse

deb http://security.ubuntu.com/ubuntu/ saucy-security main restricted universe multiverse
deb http://archive.canonical.com/ubuntu/ saucy partner

DELTA@DELTA-Satellite-L30 ~ $ 





[/left]

Comme j'ai dit avant, je bloque sur: ct-ng menuconfig

donc je peux rien faire là !!!

 

 

Edited by DELTA47

Share this post


Link to post
Share on other sites
Comme j'ai dit avant, je bloque sur: ct-ng menuconfig

donc je peux rien faire là !!!

 

Avez-vous suivi la documentation s'agissant du réglage de la variable d’environnement PATH:

export PATH=$PATH:/home/username/crosstool-ng/bin

 

J'ai installé crosstool-ng-1.9.3 dans le répertoire ~/crosstool-ng. C'était avec la commande:

 

./configure --prefix=/home/username/crosstool-ng

 

Normalement la seule modification à apporter à la configuration par défaut est la version de MPFR. Je pense qu'il faut peut-être aussi désactiver la compilation des compilateurs java et fortran ça accélérerait grandement le processus (3925.51secondes) sauf si vous voulez compiler des programmes java pour le périphérique cible bien sûr.

 

Enfin, c'est terminé !

 

[iNFO ] =================================================================

[iNFO ] Installing final compiler

[EXTRA] Configuring final compiler

[EXTRA] Building final compiler

[EXTRA] Installing final compiler

[iNFO ] Installing final compiler: done in 3925.51s (at 99:54)

[iNFO ] =================================================================

[iNFO ] Installing libelf for the target

[EXTRA] Configuring libelf

[EXTRA] Building libelf

[EXTRA] Installing libelf

[iNFO ] Installing libelf for the target: done in 7.07s (at 100:01)

[iNFO ] =================================================================

[iNFO ] Installing binutils for target

[EXTRA] Configuring binutils for target

[EXTRA] Building binutils' libraries (libiberty bfd) for target

[EXTRA] Installing binutils' libraries (libiberty bfd) for target

[iNFO ] Installing binutils for target: done in 149.08s (at 102:30)

[iNFO ] =================================================================

[iNFO ] Installing dmalloc

[EXTRA] Configuring dmalloc

[EXTRA] Building dmalloc

[EXTRA] Installing dmalloc

[iNFO ] Installing dmalloc: done in 11.07s (at 102:41)

[iNFO ] =================================================================

[iNFO ] Installing D.U.M.A.

[EXTRA] Copying sources

[EXTRA] Building libraries 'libduma.a libduma.so.0.0.0'

[EXTRA] Installing libraries 'libduma.a libduma.so.0.0.0'

[EXTRA] Installing shared library link

[EXTRA] Installing wrapper script

[iNFO ] Installing D.U.M.A.: done in 2.08s (at 102:44)

[iNFO ] =================================================================

[iNFO ] Installing cross-gdb

[EXTRA] Configuring cross-gdb

[EXTRA] Building cross-gdb

[EXTRA] Installing cross-gdb

[iNFO ] Installing cross-gdb: done in 268.28s (at 107:12)

[iNFO ] =================================================================

[iNFO ] Installing native gdb

[EXTRA] Building static target ncurses

[EXTRA] Building static target expat

[EXTRA] Configuring native gdb

[EXTRA] Building native gdb

[EXTRA] Installing native gdb

[EXTRA] Cleaning up ncurses

[iNFO ] Installing native gdb: done in 387.55s (at 113:39)

[iNFO ] =================================================================

[iNFO ] Installing gdbserver

[EXTRA] Configuring gdbserver

[EXTRA] Building gdbserver

[EXTRA] Installing gdbserver

[iNFO ] Installing gdbserver: done in 10.75s (at 113:50)

[iNFO ] =================================================================

[iNFO ] Installing ltrace

[EXTRA] Copying sources to build dir

[EXTRA] Configuring ltrace

[EXTRA] Building ltrace

[EXTRA] Installing ltrace

[iNFO ] Installing ltrace: done in 5.04s (at 113:55)

[iNFO ] =================================================================

[iNFO ] Installing strace

[EXTRA] Configuring strace

[EXTRA] Building strace

[EXTRA] Installing strace

[iNFO ] Installing strace: done in 19.55s (at 114:15)

[iNFO ] =================================================================

[iNFO ] Cleaning-up 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 access to the build system tools

[iNFO ] Cleaning-up the toolchain's directory: done in 1.08s (at 114:16)

[iNFO ] Build completed at 20140414.170531

[iNFO ] (elapsed: 114:16.13)

[iNFO ] Finishing installation (may take a few seconds)...

[114:16]

 

Je doit sortir, je préparerai un résumé plus tard.

Edited by djezzyman

Share this post


Link to post
Share on other sites

J'ai suivi ce tuto:

http://www.bootc.net/archives/2012/05/26/how-to-build-a-cross-compiler-for-your-raspberry-pi/

 

J'ai (re)compilé le crosstool,et j'ai copié les fichiers de config dans mon répertoire de build pour arm-rpi et uClibc, mainteant:

ct-ng menuconfig marche.

J'ai configuré comme indiqué dans le tuto en choisissant uClibc.

et puis: ct-ng build.4

et là ça bloque de nouveau !!!

DELTA@DELTA-Satellite-L30 ~/RPI/ctng-build $ ct-ng build.4
.config.2: line 471: HOME: command not found
touch: cannot touch ‘/home/DELTA/RPI/ctng-build/.build/backtrace’: No such file or directory
[ERROR]  
[ERROR]  >>
[ERROR]  >>  Build failed in step '(top-level)'
[ERROR]  >>
[ERROR]  >>  Error happened in: source[.config.2@471]
[ERROR]  >>        called from: main[scripts/crosstool-NG.sh@25]
[00:00] / touch: cannot touch ‘/home/DELTA/RPI/ctng-build/.build/backtrace’: No such file or directory
[ERROR]  
[ERROR]  >>
[ERROR]  >>  Build failed in step '(top-level)'
[ERROR]  >>
[ERROR]  >>  Error happened in: source[.config.2@471]
[ERROR]  >>        called from: main[scripts/crosstool-NG.sh@25]
[ERROR]  >>
[ERROR]  >>  For more info on this error, look at the file: 'build.log'
[ERROR]  >>  There is a list of known issues, some with workarounds, in:
[ERROR]  >>      '/home/DELTA/RPI/CTNG/share/doc/crosstool-ng/ct-ng.1.19.0/B - Known issues.txt'
[ERROR]   
[ERROR]  (elapsed: 23291553:42.16)
[00:00] / make[1]: *** [build] Error 127
make: *** [build.4] Error 2
DELTA@DELTA-Satellite-L30 ~/RPI/ctng-build $

Share this post


Link to post
Share on other sites

Bon en utilisant le .config de Cristophe Blaess ça marche enfin !!

Mais pkoi le fichier qui vient avec ne marche pas??? C'est un fichier spécial Rasp PI préparé par les soins du dévolepeur du programme lui même !

Share this post


Link to post
Share on other sites

Le support c++ semble poser problème pour une configuration comprenant uclibc. J'ai donc désactivé le support de c++.

 

Voici une liste de commande permettant de récupérer des tarballs dont les urls sont erronées.

 

mkdir -p ~/src

 

wget -O ~/src/duma_2_5_15.tar.gz "http://downloads.sourceforge.net/project/duma/duma/2.5.15/duma_2_5_15.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fduma%2Ffiles%2Fduma%2F&ts=1397516687&use_mirror=kent"

 

wget -O ~/src/expat-2.0.1.tar.gz "http://downloads.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fexpat%2Ffiles%2Fexpat%2F2.0.1%2F&ts=1397516938&use_mirror=kent"

 

wget -o ~/src/strace-4.5.19.tar.bz2 "http://downloads.sourceforge.net/project/strace/strace/4.5.19/strace-4.5.19.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fstrace%2Ffiles%2Fstrace%2F4.5.19%2F&ts=1397517076&use_mirror=kent"

 

wget -O ~/src/strace-4.5.19.tar.bz2 "http://downloads.sourceforge.net/project/strace/strace/4.5.19/strace-4.5.19.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fstrace%2Ffiles%2Fstrace%2F4.5.19%2F&ts=1397517076&use_mirror=kent"

 

 

Voici la configuration (fichier .config)

 

#

# Automatically generated make config: don't edit

# crosstool-NG version: 1.9.3

# Tue Apr 15 15:59:49 2014

#

# CT_BACKEND is not set

CT_MODULES=y

 

#

# Paths and misc options

#

 

#

# crosstool-NG behavior

#

# CT_OBSOLETE is not set

CT_EXPERIMENTAL=y

# CT_DEBUG_CT is not set

 

#

# Paths

#

CT_LOCAL_TARBALLS_DIR="${HOME}/src"

CT_SAVE_TARBALLS=y

CT_WORK_DIR="${CT_TOP_DIR}/targets"

CT_PREFIX_DIR="${HOME}/x-tools/${CT_TARGET}"

CT_INSTALL_DIR="${CT_PREFIX_DIR}"

CT_REMOVE_DOCS=y

CT_INSTALL_DIR_RO=y

CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES=y

 

#

# Downloading

#

# CT_FORBID_DOWNLOAD is not set

# CT_FORCE_DOWNLOAD is not set

CT_USE_MIRROR=y

# CT_PREFER_MIRROR is not set

CT_MIRROR_BASE_URL="http://ymorin.is-a-geek.org/mirrors/"

CT_CONNECT_TIMEOUT=10

CT_DOWNLOAD_MAX_CHUNKS=1

# CT_ONLY_DOWNLOAD is not set

 

#

# Extracting

#

# CT_FORCE_EXTRACT is not set

CT_OVERIDE_CONFIG_GUESS_SUB=y

# CT_ONLY_EXTRACT is not set

CT_PATCH_BUNDLED=y

# CT_PATCH_LOCAL is not set

# CT_PATCH_BUNDLED_LOCAL is not set

# CT_PATCH_LOCAL_BUNDLED is not set

# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set

# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set

# CT_PATCH_NONE is not set

CT_PATCH_ORDER="bundled"

# CT_PATCH_SINGLE is not set

# CT_PATCH_USE_LOCAL is not set

 

#

# Build behavior

#

CT_PARALLEL_JOBS=1

CT_LOAD=0

CT_USE_PIPES=y

# CT_CONFIG_SHELL_SH is not set

# CT_CONFIG_SHELL_ASH is not set

CT_CONFIG_SHELL_BASH=y

# CT_CONFIG_SHELL_CUSTOM is not set

CT_CONFIG_SHELL="bash"

 

#

# Logging

#

# CT_LOG_ERROR is not set

# CT_LOG_WARN is not set

# CT_LOG_INFO is not set

CT_LOG_EXTRA=y

# CT_LOG_ALL is not set

# CT_LOG_DEBUG is not set

CT_LOG_LEVEL_MAX="EXTRA"

# CT_LOG_SEE_TOOLS_WARN is not set

CT_LOG_PROGRESS_BAR=y

CT_LOG_TO_FILE=y

CT_LOG_FILE_COMPRESS=y

 

#

# Target options

#

CT_ARCH="arm"

CT_ARCH_SUPPORTS_BOTH_MMU=y

CT_ARCH_SUPPORTS_BOTH_ENDIAN=y

CT_ARCH_SUPPORTS_32=y

# CT_ARCH_SUPPORTS_64 is not set

CT_ARCH_SUPPORT_ARCH=y

# CT_ARCH_SUPPORT_ABI is not set

CT_ARCH_SUPPORT_CPU=y

CT_ARCH_SUPPORT_TUNE=y

CT_ARCH_SUPPORT_FPU=y

CT_ARCH_DEFAULT_HAS_MMU=y

# CT_ARCH_DEFAULT_BE is not set

CT_ARCH_DEFAULT_LE=y

CT_ARCH_DEFAULT_32=y

# CT_ARCH_DEFAULT_64 is not set

CT_ARCH_ARCH="armv5te"

CT_ARCH_CPU="xscale"

CT_ARCH_TUNE="xscale"

CT_ARCH_FPU=""

# CT_ARCH_BE is not set

CT_ARCH_LE=y

CT_ARCH_32=y

# CT_ARCH_64 is not set

CT_ARCH_BITNESS=32

# CT_ARCH_FLOAT_HW is not set

CT_ARCH_FLOAT_SW=y

CT_TARGET_CFLAGS=""

CT_TARGET_LDFLAGS=""

 

#

# General target options

#

# CT_ARCH_alpha is not set

CT_ARCH_arm=y

# CT_ARCH_avr32 is not set

# CT_ARCH_blackfin is not set

# CT_ARCH_ia64 is not set

# CT_ARCH_m68k is not set

# CT_ARCH_mips is not set

# CT_ARCH_powerpc is not set

# CT_ARCH_s390 is not set

# CT_ARCH_sh is not set

# CT_ARCH_x86 is not set

CT_ARCH_alpha_AVAILABLE=y

CT_ARCH_arm_AVAILABLE=y

CT_ARCH_avr32_AVAILABLE=y

CT_ARCH_blackfin_AVAILABLE=y

CT_ARCH_ia64_AVAILABLE=y

CT_ARCH_m68k_AVAILABLE=y

CT_ARCH_mips_AVAILABLE=y

CT_ARCH_powerpc_AVAILABLE=y

CT_ARCH_s390_AVAILABLE=y

CT_ARCH_sh_AVAILABLE=y

CT_ARCH_x86_AVAILABLE=y

CT_ARCH_USE_MMU=y

 

#

# arm other options

#

CT_ARCH_ARM_MODE="arm"

CT_ARCH_ARM_MODE_ARM=y

# CT_ARCH_ARM_MODE_THUMB is not set

# CT_ARCH_ARM_INTERWORKING is not set

CT_ARCH_ARM_EABI=y

 

#

# Target optimisations

#

 

#

# Toolchain options

#

 

#

# General toolchain options

#

CT_USE_SYSROOT=y

CT_SYSROOT_DIR_PREFIX=""

 

#

# Tuple completion and aliasing

#

CT_TARGET_VENDOR="unknown"

CT_TARGET_ALIAS_SED_EXPR=""

CT_TARGET_ALIAS=""

 

#

# Toolchain type

#

# CT_NATIVE is not set

CT_CROSS=y

# CT_CROSS_NATIVE is not set

# CT_CANADIAN is not set

CT_TOOLCHAIN_TYPE="cross"

 

#

# Build system

#

CT_BUILD=""

CT_BUILD_PREFIX=""

CT_BUILD_SUFFIX=""

 

#

# Operating System

#

# CT_BARE_METAL is not set

# CT_MINGW32 is not set

CT_KERNEL_SUPPORTS_SHARED_LIBS=y

CT_KERNEL="linux"

CT_KERNEL_VERSION="2.6.33.7"

# CT_KERNEL_bare_metal is not set

CT_KERNEL_linux=y

# CT_KERNEL_mingw32 is not set

CT_KERNEL_bare_metal_AVAILABLE=y

CT_KERNEL_linux_AVAILABLE=y

CT_KERNEL_LINUX_INSTALL=y

# CT_KERNEL_V_2_6_36 is not set

# CT_KERNEL_V_2_6_35_8 is not set

# CT_KERNEL_V_2_6_34_7 is not set

CT_KERNEL_V_2_6_33_7=y

# CT_KERNEL_V_2_6_32_25 is not set

# CT_KERNEL_V_2_6_31_14 is not set

# CT_KERNEL_V_2_6_27_55 is not set

# CT_KERNEL_LINUX_CUSTOM is not set

CT_KERNEL_LINUX_VERBOSITY_0=y

# CT_KERNEL_LINUX_VERBOSITY_1 is not set

# CT_KERNEL_LINUX_VERBOSITY_2 is not set

CT_KERNEL_LINUX_VERBOSE_LEVEL=0

CT_KERNEL_LINUX_INSTALL_CHECK=y

# CT_KERNEL_LINUX_USE_CUSTOM_HEADERS is not set

CT_KERNEL_mingw32_AVAILABLE=y

 

#

# Common kernel options

#

CT_SHARED_LIBS=y

 

#

# Binary utilities

#

CT_ARCH_BINFMT_ELF=y

# CT_ARCH_BINFMT_FLAT is not set

# CT_ARCH_BINFMT_FDPIC is not set

 

#

# GNU binutils

#

# CT_BINUTILS_V_2_20_1 is not set

# CT_BINUTILS_V_2_20 is not set

CT_BINUTILS_V_2_19_1=y

# CT_BINUTILS_V_2_19 is not set

# CT_BINUTILS_V_2_18 is not set

# CT_BINUTILS_V_2_17 is not set

# CT_BINUTILS_V_2_16_1 is not set

CT_BINUTILS_VERSION="2.19.1"

CT_BINUTILS_EXTRA_CONFIG=""

CT_BINUTILS_FOR_TARGET=y

CT_BINUTILS_FOR_TARGET_IBERTY=y

CT_BINUTILS_FOR_TARGET_BFD=y

 

#

# C compiler

#

CT_CC="gcc"

CT_CC_VERSION="4.3.2"

CT_CC_gcc=y

# CT_CC_V_4_5_1 is not set

# CT_CC_V_4_5_0 is not set

# CT_CC_V_4_4_5 is not set

# CT_CC_V_4_4_4 is not set

# CT_CC_V_4_4_3 is not set

# CT_CC_V_4_4_2 is not set

# CT_CC_V_4_4_1 is not set

# CT_CC_V_4_4_0 is not set

# CT_CC_V_4_3_5 is not set

# CT_CC_V_4_3_4 is not set

# CT_CC_V_4_3_3 is not set

CT_CC_V_4_3_2=y

# CT_CC_V_4_3_1 is not set

# CT_CC_V_4_2_4 is not set

# CT_CC_V_4_2_3 is not set

# CT_CC_V_4_2_2 is not set

# CT_CC_V_4_2_1 is not set

# CT_CC_V_4_2_0 is not set

# CT_CC_V_4_1_2 is not set

# CT_CC_V_4_0_4 is not set

# CT_CC_V_3_4_6 is not set

CT_CC_GCC_4_2_or_later=y

CT_CC_GCC_4_3_or_later=y

# CT_CC_GCC_4_4_or_later is not set

# CT_CC_GCC_4_5_or_later is not set

# CT_CC_GCC_HAS_GRAPHITE is not set

# CT_CC_GCC_HAS_LTO is not set

CT_CC_GCC_USE_GMP_MPFR=y

# CT_CC_GCC_USE_PPL_CLOOG is not set

# CT_CC_GCC_USE_MPC is not set

# CT_CC_GCC_USE_LIBELF is not set

CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}"

CT_CC_BUGURL=""

CT_CC_ENABLE_CXX_FLAGS=""

CT_CC_CORE_EXTRA_CONFIG=""

CT_CC_EXTRA_CONFIG=""

CT_CC_SUPPORT_CXX=y

CT_CC_SUPPORT_FORTRAN=y

CT_CC_SUPPORT_JAVA=y

CT_CC_SUPPORT_ADA=y

CT_CC_SUPPORT_OBJC=y

CT_CC_SUPPORT_OBJCXX=y

 

#

# Additional supported languages:

#

# CT_CC_LANG_CXX is not set

# CT_CC_LANG_FORTRAN is not set

# CT_CC_LANG_JAVA is not set

# CT_CC_LANG_ADA is not set

# CT_CC_LANG_OBJC is not set

# CT_CC_LANG_OBJCXX is not set

CT_CC_LANG_OTHERS=""

 

#

# gcc other options

#

CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y

# CT_CC_GCC_LIBMUDFLAP is not set

# CT_CC_GCC_LIBGOMP is not set

# CT_CC_GCC_LIBSSP is not set

 

#

# Misc. obscure options.

#

CT_CC_CXA_ATEXIT=y

# CT_CC_GCC_DISABLE_PCH is not set

CT_CC_GCC_SJLJ_EXCEPTIONS=m

CT_CC_GCC_LDBL_128=m

 

#

# C-library

#

CT_LIBC="uClibc"

CT_LIBC_VERSION="0.9.30.2"

# CT_LIBC_eglibc is not set

# CT_LIBC_glibc is not set

# CT_LIBC_mingw is not set

# CT_LIBC_newlib is not set

# CT_LIBC_none is not set

CT_LIBC_uClibc=y

CT_LIBC_eglibc_AVAILABLE=y

CT_LIBC_glibc_AVAILABLE=y

CT_LIBC_mingw_AVAILABLE=y

CT_LIBC_newlib_AVAILABLE=y

CT_LIBC_none_AVAILABLE=y

CT_LIBC_uClibc_AVAILABLE=y

# CT_LIBC_UCLIBC_V_0_9_31 is not set

# CT_LIBC_UCLIBC_V_0_9_30_3 is not set

CT_LIBC_UCLIBC_V_0_9_30_2=y

# CT_LIBC_V_0_9_30_1 is not set

# CT_LIBC_V_0_9_30 is not set

# CT_LIBC_V_0_9_29 is not set

# CT_LIBC_V_0_9_28_3 is not set

# CT_LIBC_V_snapshot is not set

# CT_LIBC_V_specific_date is not set

CT_LIBC_UCLIBC_0_9_30_or_later=y

CT_LIBC_UCLIBC_PARALLEL=y

CT_LIBC_UCLIBC_VERBOSITY_0=y

# CT_LIBC_UCLIBC_VERBOSITY_1 is not set

# CT_LIBC_UCLIBC_VERBOSITY_2 is not set

CT_LIBC_UCLIBC_VERBOSITY=""

CT_LIBC_UCLIBC_DEBUG_LEVEL_0=y

# CT_LIBC_UCLIBC_DEBUG_LEVEL_1 is not set

# CT_LIBC_UCLIBC_DEBUG_LEVEL_2 is not set

CT_LIBC_UCLIBC_DEBUG_LEVEL=0

CT_LIBC_UCLIBC_CONFIG_FILE="${CT_LIB_DIR}/samples/${CT_TARGET}/${CT_LIBC}-${CT_LIBC_VERSION}.config"

CT_LIBC_SUPPORT_THREADS_ANY=y

# CT_LIBC_SUPPORT_NPTL is not set

CT_LIBC_SUPPORT_LINUXTHREADS=y

# CT_LIBC_SUPPORT_WIN32THREADS is not set

CT_THREADS="linuxthreads"

 

#

# Common C library options

#

# CT_THREADS_NPTL is not set

CT_THREADS_LINUXTHREADS=y

# CT_THREADS_WIN32THREADS is not set

# CT_THREADS_NONE is not set

# CT_LIBC_XLDD is not set

 

#

# uClibc other options

#

CT_LIBC_UCLIBC_LNXTHRD_OLD=y

# CT_LIBC_UCLIBC_LNXTHRD_NEW is not set

CT_LIBC_UCLIBC_LNXTHRD="old"

# CT_LIBC_UCLIBC_LOCALES is not set

# CT_LIBC_UCLIBC_WCHAR is not set

 

#

# Debug facilities

#

CT_DEBUG_dmalloc=y

CT_DMALLOC_V_5_5_2=y

CT_DMALLOC_VERSION="5.5.2"

CT_DEBUG_duma=y

CT_DUMA_A=y

CT_DUMA_SO=y

CT_DUMA_V_2_5_15=y

# CT_DUMA_V_2_5_14 is not set

# CT_DUMA_V_2_5_12 is not set

# CT_DUMA_V_2_5_8 is not set

# CT_DUMA_V_2_5_1 is not set

CT_DUMA_VERSION="2_5_15"

CT_DEBUG_gdb=y

CT_GDB_CROSS=y

CT_GDB_CROSS_STATIC=y

CT_GDB_NATIVE=y

# CT_GDB_NATIVE_NO_STATIC is not set

# CT_GDB_NATIVE_STATIC is not set

CT_GDB_GDBSERVER=y

CT_GDB_GDBSERVER_STATIC=y

# CT_GDB_V_7_2 is not set

CT_GDB_V_7_1=y

# CT_GDB_V_7_0_1 is not set

# CT_GDB_V_7_0 is not set

# CT_GDB_V_6_8 is not set

CT_GDB_7_0_or_later=y

CT_GDB_VERSION="7.1"

CT_DEBUG_ltrace=y

CT_LTRACE_V_0_5_3=y

# CT_LTRACE_V_0_5_2 is not set

# CT_LTRACE_V_0_5 is not set

# CT_LTRACE_V_0_4 is not set

CT_LTRACE_VERSION="0.5.3"

CT_LTRACE_0_5_3_or_later=y

CT_DEBUG_strace=y

# CT_STRACE_V_4_5_20 is not set

CT_STRACE_V_4_5_19=y

# CT_STRACE_V_4_5_18 is not set

# CT_STRACE_V_4_5_17 is not set

# CT_STRACE_V_4_5_16 is not set

# CT_STRACE_V_4_5_15 is not set

CT_STRACE_VERSION="4.5.19"

 

#

# Companion libraries

#

CT_COMPLIBS_NEEDED=y

CT_GMP_NEEDED=y

CT_MPFR_NEEDED=y

# CT_PPL_NEEDED is not set

# CT_CLOOG_NEEDED is not set

# CT_MPC_NEEDED is not set

# CT_LIBELF_NEEDED is not set

CT_COMPLIBS=y

# CT_WRAPPER_NEEDED is not set

CT_GMP=y

CT_MPFR=y

CT_LIBELF_TARGET=y

# CT_GMP_V_5_0_1 is not set

CT_GMP_V_4_3_2=y

# CT_GMP_V_4_3_1 is not set

# CT_GMP_V_4_3_0 is not set

# CT_GMP_V_4_2_4 is not set

# CT_GMP_V_4_2_2 is not set

CT_GMP_VERSION="4.3.2"

CT_MPFR_V_3_0_0=y

# CT_MPFR_V_2_4_2 is not set

# CT_MPFR_V_2_4_1 is not set

# CT_MPFR_V_2_4_0 is not set

# CT_MPFR_V_2_3_2 is not set

# CT_MPFR_V_2_3_1 is not set

CT_MPFR_VERSION="3.0.0"

# CT_PPL_V_0_11 is not set

# CT_PPL_V_0_10_2 is not set

# CT_CLOOG_V_0_15_10 is not set

# CT_CLOOG_V_0_15_9 is not set

# CT_CLOOG_V_0_15_8 is not set

# CT_CLOOG_V_0_15_7 is not set

# CT_CLOOG_V_0_15_6 is not set

# CT_CLOOG_V_0_15_5 is not set

# CT_CLOOG_V_0_15_4 is not set

# CT_CLOOG_V_0_15_3 is not set

 

#

# libelf version needed to build for target

#

CT_LIBELF_V_0_8_13=y

# CT_LIBELF_V_0_8_12 is not set

CT_LIBELF_VERSION="0.8.13"

 

#

# Companion libraries common options

#

CT_COMPLIBS_BACKUP=y

# CT_COMPLIBS_CHECK is not set

# CT_COMPLIBS_SHARED is not set

 

#

# Companion tools

#

 

#

# READ HELP before you say 'Y' below !!!

#

# CT_COMP_TOOLS is not set

 

#

# Test suite

#

# CT_TEST_SUITE is not set

# CT_TEST_SUITE_GCC is not set

 

 

 

Bonne chance.

Edited by djezzyman

Share this post


Link to post
Share on other sites

Merci encore une fois djezzyman !

Effectivement le probleme vient du choix de uClibc car ça marche pour eGlibc !!

Dans kel option du menu on peut désactiver le support de C++? kel est l'effet de cette disactivation?

Edited by DELTA47

Share this post


Link to post
Share on other sites

Dans la rubrique c-compiler, on choisit la liste des langages supportés.

 

Vous ne pourrez pas compiler de programme écrit en c++ pour le Raspberry.

 

Je pense qu'une configuration est possible avec uclibc et c++. Il reste un petit problème mineur dans la dernière étape.

Share this post


Link to post
Share on other sites

ici un script qui prépare l'environnement. Il crée les répertoires ~/src,~/projects s'ils n'existent pas. Il installe crosstool-ng dans votre répertoire personnel. Pas besoin des droits root donc pour l'installation.

 

#!/bin/sh

# interruption du script en cas d'erreur
set -e

mkdir -p ~/src
mkdir -p ~/projects
wget -O ~/projects/crosstool-ng-1.9.3.tar.bz2 http://crosstool-ng.org/download/crosstool-ng/crosstool-ng-1.9.3.tar.bz2
tar -C ~/projects -jxf ~/projects/crosstool-ng-1.9.3.tar.bz2

cd ~/projects/crosstool-ng-1.9.3
./configure --prefix="${HOME}/crosstool-ng"
make
make install

if [ ! -e ${HOME}/.bashrc ]; then
   touch ${HOME}/.bashrc
fi

cat >> ${HOME}/.bashrc 
#
# Prise en charge de la complétion pour la commande ct-ng
#

CT_COMP=\${HOME}/crosstool-ng/lib/ct-ng-1.9.3/ct-ng.comp

if [ -e "\${CT_COMP}" ]; then
   source "\${CT_COMP}"
fi

export PATH=\$PATH:/home/miloud/crosstool-ng/bin

EOF

#
# Patch du fichier ${HOME}/crosstool-ng/lib/ct-ng-1.9.3/scripts/wrapper.c
# La variable execve_ret est déclarée inutilement, ce qui fait échouer la
# compilation car les avertissements sont considérés comme des erreurs
# à ce stade de la compilation.
#

perl  -ne  'if(/execve_ret/){s/(int\s+execve_ret\s*;)/\/\*\1\*\//g;s/(execve_ret  =)/\/\*\1\*\//g;} print' -i  ${HOME}/crosstool-ng/lib/ct-ng-1.9.3/scripts/wrapper.c

#
# Téléchargements des tarballs dont les urls sont erronées
#

if [! -f ~/src/duma_2_5_15.tar.gz ]; then
    wget -O ~/src/duma_2_5_15.tar.gz  "http://downloads.sourceforge.net/project/duma/duma/2.5.15/duma_2_5_15.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fduma%2Ffiles%2Fduma%2F&ts=1397516687&  use_mirror=kent"
fi

if [ ! -f ~/src/expat-2.0.1.tar.gz ]; then
    wget -O ~/src/expat-2.0.1.tar.gz  "http://downloads.sourceforge.net/project/expat/expat/2.0.1/expat-2.0.1.tar.gz?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fexpat%2Ffiles%2Fexpat%2F2.0.1%2F&ts=1397516  938&use_mirror=kent"
fi

if [ ! -f ~/src/strace-4.5.19.tar.bz2]; then
    wget -O ~/src/strace-4.5.19.tar.bz2  "http://downloads.sourceforge.net/project/strace/strace/4.5.19/strace-4.5.19.tar.bz2?r=http%3A%2F%2Fsourceforge.net%2Fprojects%2Fstrace%2Ffiles%2Fstrace%2F4.5.19%2F&ts=13  97517076&use_mirror=kent"
fi

 

Il y avait une erreur dans la dernière commande wget (-o au lieu de -O, pardon).

 

Normalement vous devriez pouvoir utiliser la commande ct-ng. Vous devez configurer votre terminal graphique pour qu'il se comporte comme un shell de connexion (menu Edition -> Préférences du profil -> Titre et commande -> cocher "Lancer la commande en tant que shell de connexion") afin qu'il charge le fichier ~/.bashrc .

 

La configuration suivante fonctionne. Elle est basée sur le sample arm-unknown-linux-uclibcgnueabi. La version 4.5.1 de gcc est compilée pour les langages C et C++. Au terme de la construction, le dossier ~/x-tools/arm-unknown-linux-uclibcgnueabi contient les fichiers compilés. Voici le listing du dossier:

 

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-addr2line

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-ar

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-as

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-c++

lrwxrwxrwx 1 username username 35 avril 17 16:01 arm-unknown-linux-uclibcgnueabi-cc -> arm-unknown-linux-uclibcgnueabi-gcc

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-c++filt

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-cpp

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-ct-ng.config

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-g++

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-gcc

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-gcc-4.5.1

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-gccbug

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-gcov

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-gdb

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-gprof

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-ld

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-ldd

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-nm

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-objcopy

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-objdump

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-populate

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-ranlib

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-readelf

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-run

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-size

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-strings

-r-xr-xr-x 26 username username 5648 avril 17 16:17 arm-unknown-linux-uclibcgnueabi-strip

-r-xr-xr-x 1 username username 63995 avril 17 15:40 ppl_pips

 

Voici la configuration. À copier et à coller dans un fichier .config d'un dossier raspberry-pi par exemple, taper ensuite la commande ct-ng menuconfig depuis ce même dossier pour la consulter, puis taper ct-ng build .

 

 

#

# Automatically generated make config: don't edit

# crosstool-NG version: 1.9.3

# Thu Apr 17 15:26:24 2014

#

# CT_BACKEND is not set

CT_MODULES=y

 

#

# Paths and misc options

#

 

#

# crosstool-NG behavior

#

# CT_OBSOLETE is not set

CT_EXPERIMENTAL=y

# CT_DEBUG_CT is not set

 

#

# Paths

#

CT_LOCAL_TARBALLS_DIR="${HOME}/src"

CT_SAVE_TARBALLS=y

CT_WORK_DIR="${CT_TOP_DIR}/targets"

CT_PREFIX_DIR="${HOME}/x-tools/${CT_TARGET}"

CT_INSTALL_DIR="${CT_PREFIX_DIR}"

CT_REMOVE_DOCS=y

CT_INSTALL_DIR_RO=y

CT_STRIP_ALL_TOOLCHAIN_EXECUTABLES=y

 

#

# Downloading

#

# CT_FORBID_DOWNLOAD is not set

# CT_FORCE_DOWNLOAD is not set

CT_USE_MIRROR=y

# CT_PREFER_MIRROR is not set

CT_MIRROR_BASE_URL="http://ymorin.is-a-geek.org/mirrors/"

CT_CONNECT_TIMEOUT=10

CT_DOWNLOAD_MAX_CHUNKS=1

# CT_ONLY_DOWNLOAD is not set

 

#

# Extracting

#

# CT_FORCE_EXTRACT is not set

CT_OVERIDE_CONFIG_GUESS_SUB=y

# CT_ONLY_EXTRACT is not set

CT_PATCH_BUNDLED=y

# CT_PATCH_LOCAL is not set

# CT_PATCH_BUNDLED_LOCAL is not set

# CT_PATCH_LOCAL_BUNDLED is not set

# CT_PATCH_BUNDLED_FALLBACK_LOCAL is not set

# CT_PATCH_LOCAL_FALLBACK_BUNDLED is not set

# CT_PATCH_NONE is not set

CT_PATCH_ORDER="bundled"

# CT_PATCH_SINGLE is not set

# CT_PATCH_USE_LOCAL is not set

 

#

# Build behavior

#

CT_PARALLEL_JOBS=1

CT_LOAD=0

CT_USE_PIPES=y

# CT_CONFIG_SHELL_SH is not set

# CT_CONFIG_SHELL_ASH is not set

CT_CONFIG_SHELL_BASH=y

# CT_CONFIG_SHELL_CUSTOM is not set

CT_CONFIG_SHELL="bash"

 

#

# Logging

#

# CT_LOG_ERROR is not set

# CT_LOG_WARN is not set

# CT_LOG_INFO is not set

CT_LOG_EXTRA=y

# CT_LOG_ALL is not set

# CT_LOG_DEBUG is not set

CT_LOG_LEVEL_MAX="EXTRA"

# CT_LOG_SEE_TOOLS_WARN is not set

CT_LOG_PROGRESS_BAR=y

CT_LOG_TO_FILE=y

CT_LOG_FILE_COMPRESS=y

 

#

# Target options

#

CT_ARCH="arm"

CT_ARCH_SUPPORTS_BOTH_MMU=y

CT_ARCH_SUPPORTS_BOTH_ENDIAN=y

CT_ARCH_SUPPORTS_32=y

# CT_ARCH_SUPPORTS_64 is not set

CT_ARCH_SUPPORT_ARCH=y

# CT_ARCH_SUPPORT_ABI is not set

CT_ARCH_SUPPORT_CPU=y

CT_ARCH_SUPPORT_TUNE=y

CT_ARCH_SUPPORT_FPU=y

CT_ARCH_DEFAULT_HAS_MMU=y

# CT_ARCH_DEFAULT_BE is not set

CT_ARCH_DEFAULT_LE=y

CT_ARCH_DEFAULT_32=y

# CT_ARCH_DEFAULT_64 is not set

CT_ARCH_ARCH="armv5te"

CT_ARCH_CPU="xscale"

CT_ARCH_TUNE="xscale"

CT_ARCH_FPU=""

# CT_ARCH_BE is not set

CT_ARCH_LE=y

CT_ARCH_32=y

# CT_ARCH_64 is not set

CT_ARCH_BITNESS=32

# CT_ARCH_FLOAT_HW is not set

CT_ARCH_FLOAT_SW=y

CT_TARGET_CFLAGS="-fpermissive"

CT_TARGET_LDFLAGS=""

 

#

# General target options

#

# CT_ARCH_alpha is not set

CT_ARCH_arm=y

# CT_ARCH_avr32 is not set

# CT_ARCH_blackfin is not set

# CT_ARCH_ia64 is not set

# CT_ARCH_m68k is not set

# CT_ARCH_mips is not set

# CT_ARCH_powerpc is not set

# CT_ARCH_s390 is not set

# CT_ARCH_sh is not set

# CT_ARCH_x86 is not set

CT_ARCH_alpha_AVAILABLE=y

CT_ARCH_arm_AVAILABLE=y

CT_ARCH_avr32_AVAILABLE=y

CT_ARCH_blackfin_AVAILABLE=y

CT_ARCH_ia64_AVAILABLE=y

CT_ARCH_m68k_AVAILABLE=y

CT_ARCH_mips_AVAILABLE=y

CT_ARCH_powerpc_AVAILABLE=y

CT_ARCH_s390_AVAILABLE=y

CT_ARCH_sh_AVAILABLE=y

CT_ARCH_x86_AVAILABLE=y

CT_ARCH_USE_MMU=y

 

#

# arm other options

#

CT_ARCH_ARM_MODE="arm"

CT_ARCH_ARM_MODE_ARM=y

# CT_ARCH_ARM_MODE_THUMB is not set

# CT_ARCH_ARM_INTERWORKING is not set

CT_ARCH_ARM_EABI=y

 

#

# Target optimisations

#

 

#

# Toolchain options

#

 

#

# General toolchain options

#

CT_USE_SYSROOT=y

CT_SYSROOT_DIR_PREFIX=""

 

#

# Tuple completion and aliasing

#

CT_TARGET_VENDOR="unknown"

CT_TARGET_ALIAS_SED_EXPR=""

CT_TARGET_ALIAS=""

 

#

# Toolchain type

#

# CT_NATIVE is not set

CT_CROSS=y

# CT_CROSS_NATIVE is not set

# CT_CANADIAN is not set

CT_TOOLCHAIN_TYPE="cross"

 

#

# Build system

#

CT_BUILD=""

CT_BUILD_PREFIX=""

CT_BUILD_SUFFIX=""

 

#

# Operating System

#

# CT_BARE_METAL is not set

# CT_MINGW32 is not set

CT_KERNEL_SUPPORTS_SHARED_LIBS=y

CT_KERNEL="linux"

CT_KERNEL_VERSION="2.6.33.7"

# CT_KERNEL_bare_metal is not set

CT_KERNEL_linux=y

# CT_KERNEL_mingw32 is not set

CT_KERNEL_bare_metal_AVAILABLE=y

CT_KERNEL_linux_AVAILABLE=y

CT_KERNEL_LINUX_INSTALL=y

# CT_KERNEL_V_2_6_36 is not set

# CT_KERNEL_V_2_6_35_8 is not set

# CT_KERNEL_V_2_6_34_7 is not set

CT_KERNEL_V_2_6_33_7=y

# CT_KERNEL_V_2_6_32_25 is not set

# CT_KERNEL_V_2_6_31_14 is not set

# CT_KERNEL_V_2_6_27_55 is not set

# CT_KERNEL_LINUX_CUSTOM is not set

CT_KERNEL_LINUX_VERBOSITY_0=y

# CT_KERNEL_LINUX_VERBOSITY_1 is not set

# CT_KERNEL_LINUX_VERBOSITY_2 is not set

CT_KERNEL_LINUX_VERBOSE_LEVEL=0

CT_KERNEL_LINUX_INSTALL_CHECK=y

# CT_KERNEL_LINUX_USE_CUSTOM_HEADERS is not set

CT_KERNEL_mingw32_AVAILABLE=y

 

#

# Common kernel options

#

CT_SHARED_LIBS=y

 

#

# Binary utilities

#

CT_ARCH_BINFMT_ELF=y

# CT_ARCH_BINFMT_FLAT is not set

# CT_ARCH_BINFMT_FDPIC is not set

 

#

# GNU binutils

#

# CT_BINUTILS_V_2_20_1 is not set

# CT_BINUTILS_V_2_20 is not set

CT_BINUTILS_V_2_19_1=y

# CT_BINUTILS_V_2_19 is not set

# CT_BINUTILS_V_2_18 is not set

# CT_BINUTILS_V_2_17 is not set

# CT_BINUTILS_V_2_16_1 is not set

CT_BINUTILS_VERSION="2.19.1"

CT_BINUTILS_EXTRA_CONFIG=""

CT_BINUTILS_FOR_TARGET=y

CT_BINUTILS_FOR_TARGET_IBERTY=y

CT_BINUTILS_FOR_TARGET_BFD=y

 

#

# C compiler

#

CT_CC="gcc"

CT_CC_VERSION="4.5.1"

CT_CC_gcc=y

CT_CC_V_4_5_1=y

# CT_CC_V_4_5_0 is not set

# CT_CC_V_4_4_5 is not set

# CT_CC_V_4_4_4 is not set

# CT_CC_V_4_4_3 is not set

# CT_CC_V_4_4_2 is not set

# CT_CC_V_4_4_1 is not set

# CT_CC_V_4_4_0 is not set

# CT_CC_V_4_3_5 is not set

# CT_CC_V_4_3_4 is not set

# CT_CC_V_4_3_3 is not set

# CT_CC_V_4_3_2 is not set

# CT_CC_V_4_3_1 is not set

# CT_CC_V_4_2_4 is not set

# CT_CC_V_4_2_3 is not set

# CT_CC_V_4_2_2 is not set

# CT_CC_V_4_2_1 is not set

# CT_CC_V_4_2_0 is not set

# CT_CC_V_4_1_2 is not set

# CT_CC_V_4_0_4 is not set

# CT_CC_V_3_4_6 is not set

CT_CC_GCC_4_2_or_later=y

CT_CC_GCC_4_3_or_later=y

CT_CC_GCC_4_4_or_later=y

CT_CC_GCC_4_5_or_later=y

CT_CC_GCC_HAS_GRAPHITE=y

CT_CC_GCC_HAS_LTO=y

CT_CC_GCC_USE_GMP_MPFR=y

CT_CC_GCC_USE_PPL_CLOOG=y

CT_CC_GCC_USE_MPC=y

CT_CC_GCC_USE_LIBELF=y

CT_CC_PKGVERSION="crosstool-NG-${CT_VERSION}"

CT_CC_BUGURL=""

CT_CC_ENABLE_CXX_FLAGS=""

CT_CC_CORE_EXTRA_CONFIG=""

CT_CC_EXTRA_CONFIG=""

CT_CC_SUPPORT_CXX=y

CT_CC_SUPPORT_FORTRAN=y

CT_CC_SUPPORT_JAVA=y

CT_CC_SUPPORT_ADA=y

CT_CC_SUPPORT_OBJC=y

CT_CC_SUPPORT_OBJCXX=y

 

#

# Additional supported languages:

#

CT_CC_LANG_CXX=y

# CT_CC_LANG_FORTRAN is not set

# CT_CC_LANG_JAVA is not set

# CT_CC_LANG_ADA is not set

# CT_CC_LANG_OBJC is not set

# CT_CC_LANG_OBJCXX is not set

CT_CC_LANG_OTHERS=""

 

#

# gcc other options

#

CT_CC_GCC_ENABLE_TARGET_OPTSPACE=y

CT_CC_GCC_USE_GRAPHITE=y

CT_CC_GCC_USE_LTO=y

CT_CC_STATIC_LIBSTDCXX=y

# CT_CC_GCC_LIBMUDFLAP is not set

# CT_CC_GCC_LIBGOMP is not set

# CT_CC_GCC_LIBSSP is not set

 

#

# Misc. obscure options.

#

CT_CC_CXA_ATEXIT=y

# CT_CC_GCC_DISABLE_PCH is not set

CT_CC_GCC_SJLJ_EXCEPTIONS=m

CT_CC_GCC_LDBL_128=m

 

#

# C-library

#

CT_LIBC="uClibc"

CT_LIBC_VERSION="0.9.30.2"

# CT_LIBC_eglibc is not set

# CT_LIBC_glibc is not set

# CT_LIBC_mingw is not set

# CT_LIBC_newlib is not set

# CT_LIBC_none is not set

CT_LIBC_uClibc=y

CT_LIBC_eglibc_AVAILABLE=y

CT_LIBC_glibc_AVAILABLE=y

CT_LIBC_mingw_AVAILABLE=y

CT_LIBC_newlib_AVAILABLE=y

CT_LIBC_none_AVAILABLE=y

CT_LIBC_uClibc_AVAILABLE=y

# CT_LIBC_UCLIBC_V_0_9_31 is not set

# CT_LIBC_UCLIBC_V_0_9_30_3 is not set

CT_LIBC_UCLIBC_V_0_9_30_2=y

# CT_LIBC_V_0_9_30_1 is not set

# CT_LIBC_V_0_9_30 is not set

# CT_LIBC_V_0_9_29 is not set

# CT_LIBC_V_0_9_28_3 is not set

# CT_LIBC_V_snapshot is not set

# CT_LIBC_V_specific_date is not set

CT_LIBC_UCLIBC_0_9_30_or_later=y

CT_LIBC_UCLIBC_PARALLEL=y

CT_LIBC_UCLIBC_VERBOSITY_0=y

# CT_LIBC_UCLIBC_VERBOSITY_1 is not set

# CT_LIBC_UCLIBC_VERBOSITY_2 is not set

CT_LIBC_UCLIBC_VERBOSITY=""

CT_LIBC_UCLIBC_DEBUG_LEVEL_0=y

# CT_LIBC_UCLIBC_DEBUG_LEVEL_1 is not set

# CT_LIBC_UCLIBC_DEBUG_LEVEL_2 is not set

CT_LIBC_UCLIBC_DEBUG_LEVEL=0

CT_LIBC_UCLIBC_CONFIG_FILE="${CT_LIB_DIR}/samples/${CT_TARGET}/${CT_LIBC}-${CT_LIBC_VERSION}.config"

CT_LIBC_SUPPORT_THREADS_ANY=y

# CT_LIBC_SUPPORT_NPTL is not set

CT_LIBC_SUPPORT_LINUXTHREADS=y

# CT_LIBC_SUPPORT_WIN32THREADS is not set

CT_THREADS="linuxthreads"

 

#

# Common C library options

#

# CT_THREADS_NPTL is not set

CT_THREADS_LINUXTHREADS=y

# CT_THREADS_WIN32THREADS is not set

# CT_THREADS_NONE is not set

CT_LIBC_XLDD=y

 

#

# uClibc other options

#

CT_LIBC_UCLIBC_LNXTHRD_OLD=y

# CT_LIBC_UCLIBC_LNXTHRD_NEW is not set

CT_LIBC_UCLIBC_LNXTHRD="old"

# CT_LIBC_UCLIBC_LOCALES is not set

# CT_LIBC_UCLIBC_WCHAR is not set

 

#

# Debug facilities

#

CT_DEBUG_dmalloc=y

CT_DMALLOC_V_5_5_2=y

CT_DMALLOC_VERSION="5.5.2"

CT_DEBUG_duma=y

CT_DUMA_A=y

CT_DUMA_SO=y

CT_DUMA_V_2_5_15=y

# CT_DUMA_V_2_5_14 is not set

# CT_DUMA_V_2_5_12 is not set

# CT_DUMA_V_2_5_8 is not set

# CT_DUMA_V_2_5_1 is not set

CT_DUMA_VERSION="2_5_15"

CT_DEBUG_gdb=y

CT_GDB_CROSS=y

CT_GDB_CROSS_STATIC=y

CT_GDB_NATIVE=y

# CT_GDB_NATIVE_NO_STATIC is not set

# CT_GDB_NATIVE_STATIC is not set

CT_GDB_GDBSERVER=y

CT_GDB_GDBSERVER_STATIC=y

# CT_GDB_V_7_2 is not set

CT_GDB_V_7_1=y

# CT_GDB_V_7_0_1 is not set

# CT_GDB_V_7_0 is not set

# CT_GDB_V_6_8 is not set

CT_GDB_7_0_or_later=y

CT_GDB_VERSION="7.1"

CT_DEBUG_ltrace=y

CT_LTRACE_V_0_5_3=y

# CT_LTRACE_V_0_5_2 is not set

# CT_LTRACE_V_0_5 is not set

# CT_LTRACE_V_0_4 is not set

CT_LTRACE_VERSION="0.5.3"

CT_LTRACE_0_5_3_or_later=y

CT_DEBUG_strace=y

# CT_STRACE_V_4_5_20 is not set

CT_STRACE_V_4_5_19=y

# CT_STRACE_V_4_5_18 is not set

# CT_STRACE_V_4_5_17 is not set

# CT_STRACE_V_4_5_16 is not set

# CT_STRACE_V_4_5_15 is not set

CT_STRACE_VERSION="4.5.19"

 

#

# Companion libraries

#

CT_COMPLIBS_NEEDED=y

CT_GMP_NEEDED=y

CT_MPFR_NEEDED=y

CT_PPL_NEEDED=y

CT_CLOOG_NEEDED=y

CT_MPC_NEEDED=y

CT_LIBELF_NEEDED=y

CT_COMPLIBS=y

CT_WRAPPER_NEEDED=y

CT_GMP=y

CT_MPFR=y

CT_PPL=y

CT_CLOOG=y

CT_MPC=y

CT_LIBELF=y

CT_LIBELF_TARGET=y

CT_GMP_V_5_0_1=y

# CT_GMP_V_4_3_2 is not set

# CT_GMP_V_4_3_1 is not set

# CT_GMP_V_4_3_0 is not set

# CT_GMP_V_4_2_4 is not set

# CT_GMP_V_4_2_2 is not set

CT_GMP_VERSION="5.0.1"

CT_MPFR_V_3_0_0=y

# CT_MPFR_V_2_4_2 is not set

# CT_MPFR_V_2_4_1 is not set

# CT_MPFR_V_2_4_0 is not set

# CT_MPFR_V_2_3_2 is not set

# CT_MPFR_V_2_3_1 is not set

CT_MPFR_VERSION="3.0.0"

CT_PPL_V_0_11=y

# CT_PPL_V_0_10_2 is not set

CT_PPL_VERSION="0.11"

CT_CLOOG_V_0_15_10=y

# CT_CLOOG_V_0_15_9 is not set

# CT_CLOOG_V_0_15_8 is not set

# CT_CLOOG_V_0_15_7 is not set

# CT_CLOOG_V_0_15_6 is not set

# CT_CLOOG_V_0_15_5 is not set

# CT_CLOOG_V_0_15_4 is not set

# CT_CLOOG_V_0_15_3 is not set

CT_CLOOG_VERSION="0.15.10"

CT_MPC_V_0_8_2=y

# CT_MPC_V_0_8_1 is not set

# CT_MPC_V_0_7 is not set

# CT_MPC_V_0_6 is not set

CT_MPC_VERSION="0.8.2"

CT_LIBELF_V_0_8_13=y

# CT_LIBELF_V_0_8_12 is not set

CT_LIBELF_VERSION="0.8.13"

 

#

# Companion libraries common options

#

# CT_COMPLIBS_CHECK is not set

CT_COMPLIBS_SHARED=y

# CT_TOOLS_WRAPPER_SCRIPT is not set

CT_TOOLS_WRAPPER_EXEC=y

CT_TOOLS_WRAPPER="exec"

 

#

# Companion tools

#

 

#

# READ HELP before you say 'Y' below !!!

#

CT_COMP_TOOLS=y

CT_COMP_TOOLS_m4=y

CT_COMP_TOOLS_autoconf=y

CT_COMP_TOOLS_automake=y

CT_COMP_TOOLS_libtool=y

 

#

# Test suite

#

CT_TEST_SUITE=y

CT_TEST_SUITE_GCC=y

 

Bonne chance.

Edited by djezzyman

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.




×
×
  • Create New...