GCC-Fehler beim Ausführen von 'cc1'

12

Ich habe einen Linux-Kernel für meinen Raspberry Pi auf einem Laptop (unter Debian 7) crosskompiliert (befolgte die Anweisungen hier ); Aber wenn ich mit compiling ( make ARCH=arm CROSS_COMPILE=${CCPREFIX}) beginne , erhalte ich die folgenden Meldungen:

  CHK     include/linux/version.h
  CHK     include/generated/utsrelease.h
make[1]: `include/generated/mach-types.h' is up to date.
  CC      kernel/bounds.s
gcc: error trying to exec 'cc1': execvp: No such file or directory
make[1]: *** [kernel/bounds.s] Error 1
make: *** [prepare0] Error 2

Ich stellte fest, dass das Problem darin bestand, dass cc1 nicht gefunden oder gccnicht richtig installiert wurde (und so habe ich gcc erneut installiert, apt-get --reinstall install gccaber ohne Glück).

gcc -v gibt:

Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i486-linux-gnu/4.7/lto-wrapper
Target: i486-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Debian 4.7.2-5' --with-bugurl=file:///usr/share/doc/gcc-4.7/README.Bugs --enable-languages=c,c++,go,fortran,objc,obj-c++ --prefix=/usr --program-suffix=-4.7 --enable-shared --enable-linker-build-id --with-system-zlib --libexecdir=/usr/lib --without-included-gettext --enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.7 --libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug --enable-libstdcxx-time=yes --enable-gnu-unique-object --enable-plugin --enable-objc-gc --enable-targets=all --with-arch-32=i586 --with-tune=generic --enable-checking=release --build=i486-linux-gnu --host=i486-linux-gnu --target=i486-linux-gnu
Thread model: posix
gcc version 4.7.2 (Debian 4.7.2-5)

gcc -print-prog-name=cc1 gibt:

/usr/lib/gcc/i486-linux-gnu/4.7/cc1

gcc -print-search-dirs gibt:

install: /usr/lib/gcc/i486-linux-gnu/4.7/
programs: =/usr/lib/gcc/i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/bin/i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/bin/i386-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/bin/
libraries: =/usr/lib/gcc/i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/lib/i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/lib/i386-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/lib/../lib/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../i486-linux-gnu/4.7/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../i386-linux-gnu/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../lib/:/lib/i486-linux-gnu/4.7/:/lib/i386-linux-gnu/:/lib/../lib/:/usr/lib/i486-linux-gnu/4.7/:/usr/lib/i386-linux-gnu/:/usr/lib/../lib/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../../i486-linux-gnu/lib/:/usr/lib/gcc/i486-linux-gnu/4.7/../../../:/lib/:/usr/lib/

und find / -type f -name cc1gibt:

/opt/tools/arm-bcm2708/arm-bcm2708-linux-gnueabi/libexec/gcc/arm-bcm2708-linux-gnueabi/4.7.1/cc1
/opt/tools/arm-bcm2708/gcc-linaro-arm-linux-gnueabihf-raspbian/libexec/gcc/arm-linux-gnueabihf/4.7.2/cc1
/opt/tools/arm-bcm2708/arm-bcm2708hardfp-linux-gnueabi/libexec/gcc/arm-bcm2708hardfp-linux-gnueabi/4.7.1/cc1
/usr/lib/gcc/i486-linux-gnu/4.6/cc1
/usr/lib/gcc/i486-linux-gnu/4.7/cc1

Laufen dpkg -S cc1gibt:

libopencc1:i386: /usr/share/doc/libopencc1/changelog.Debian.gz
g++-4.7: /usr/lib/gcc/i486-linux-gnu/4.7/cc1plus
cpp-4.6: /usr/lib/gcc/i486-linux-gnu/4.6/cc1
libopencc1:i386: /usr/share/doc/libopencc1
cpp-4.7: /usr/lib/gcc/i486-linux-gnu/4.7/cc1
libopencc1:i386: /usr/share/doc/libopencc1/copyright
libgcc1:i386: /usr/share/lintian/overrides/libgcc1
ncurses-term: /usr/share/terminfo/x/xterm+pcc1
libgcc1:i386: /usr/share/doc/libgcc1

Irgendwelche Ideen?

Bulkmustache
quelle
Versuchen Sie, das build-essential - Paket zu installieren, wurde gleiches Problem berichtet ubuntu einen Blick hier nehmen ubuntuforums.org/showthread.php?t=540528
vfbsilva
@vfbsilva Bereits versucht, aber kein Glück (sah auch diesen Thread)
Bulkmoustache
Ich könnte geneigt sein, das Make-through-Verfahren zu versuchen, um zu sehen, was ein bisschen mehr vor sich geht. strace make.
slm
Ich habe versucht, mit Strace zu laufen, aber ich bin mir nicht sicher, wo ich nach dem Problem suchen soll ...
Bulkmoustache
Was ist CCPREFIX? Welchen Cross-Compiler haben Sie installiert und wo haben Sie ihn installiert?
Gilles 'SO- hör auf böse zu sein'

Antworten:

4

Es scheint, dass Sie zwischen dem nativen Compiler und dem Cross-Compiler verwechselt sind, nicht wahr?

Die Befehle, die Sie versucht haben, den nativen Compiler zu verwenden:

gcc -v
gcc -print-prog-name=cc1

Du solltest es versuchen

${CCPREFIX}gcc -v
${CCPREFIX}gcc -print-prog-name=cc1

Wenn Sie Ihre Kommentare lesen, haben Sie den GCC-Cross-Compiler wie folgt installiert: / home / jorge / tools / arm-bcm2708 / arm-bcm2708-linux-gnueabi / bin / arm-bcm2708-linux-g‌ nueabi-gcc. Wenn es der Fall ist, sollten Sie es versuchen

make ARCH=arm \
CROSS_COMPILE=/home/jorge/tools/arm-bcm2708/arm-bcm2708-linux-gnueabi/bin/arm-bcm2708-linux-g‌​nueabi-
mpromonet
quelle