ho trovato nel mio vero programma per ARM CortexA8 con Linux un problema descritto di seguito:Valgrind in ARM CortexA8 Problema "configure: error: architettura ospite non supportato"
´*** glibc detected *** ./PRUssExternal: double free or corruption (top): 0x00024fe8 ***´
`m alla ricerca di quella in web e ho trovato che il programma più utile per gestire questo problema è Valgrind.
How to track down a double free or corruption error in C++ with gdb
Allora provo a compilare al mio sistema in una compilation croce, con le seguenti opzioni nella configurazione. Io con Valgrind 3.8.1
@-virtual-machine:~/valgrind-3.8.1$ CC=arm-cortexa8-linux-gnueabi-gcc CFLAGS="-pipe -Os -mtune=cortex-a8 -march=armv7-a -mabi=aapcs-linux -msoft-float -I/opt/OSELAS.Toolchain-2011.11.3/arm-cortexa8-linux-gnueabi/gcc-4.6.2-glibc-2.14.1-binutils-2.21.1a-kernel-2.6.39-sanitez/sysroot-arm-cortexa8-linux-gnueabi/usr/include" LDFLAGS="-L/opt/OSELAS.Toolchain-2011.11.3/arm-cortexa8-linux-gnueabi/gcc-4.6.2-glibc-2.14.1-binutils-2.21.1a-kernel-2.6.39-sanitez/sysroot-arm-cortexa8-linux-gnueabi/usr/lib" ./configure -prefix=/opt/valgrid -host=arm-cortexa8-linux-gnueabi -target=arm-none-linux-gnueabi -build=x86_64-ubuntu-linux
E l'uscita di questa configurazione è:
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for arm-cortexa8-linux-gnueabi-strip... arm-cortexa8-linux-gnueabi-strip
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether to enable maintainer-specific portions of Makefiles... no
checking whether ln -s works... yes
checking for arm-cortexa8-linux-gnueabi-gcc... arm-cortexa8-linux-gnueabi-gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... yes
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether arm-cortexa8-linux-gnueabi-gcc accepts -g... yes
checking for arm-cortexa8-linux-gnueabi-gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of arm-cortexa8-linux-gnueabi-gcc... gcc3
checking whether arm-cortexa8-linux-gnueabi-gcc and cc understand -c and -o together... yes
checking how to run the C preprocessor... arm-cortexa8-linux-gnueabi-gcc -E
checking for arm-cortexa8-linux-gnueabi-g++... arm-cortexa8-linux-gnueabi-g++
checking whether we are using the GNU C++ compiler... yes
checking whether arm-cortexa8-linux-gnueabi-g++ accepts -g... yes
checking dependency style of arm-cortexa8-linux-gnueabi-g++... gcc3
checking for arm-cortexa8-linux-gnueabi-ranlib... arm-cortexa8-linux-gnueabi-ranlib
checking for a sed that does not truncate output... /bin/sed
checking for ar... /usr/bin/ar
checking for perl... /usr/bin/perl
checking for gdb... /usr/bin/gdb
checking dependency style of arm-cortexa8-linux-gnueabi-gcc... gcc3
checking for diff -u... yes
checking for a supported version of gcc... ok (4.6.2)
checking build system type... x86_64-ubuntu-linux-gnu
checking host system type... arm-cortexa8-linux-gnueabi
checking for a supported CPU... no (arm)
configure: error: Unsupported host architecture. Sorry
Nell'ultima riga di questa uscita, mia edizione è apparso anche se ho cercato un po 'di informazioni e la Cortexa8 è uno dei plattaforms supportati.
Per questa ragione la mia domanda è se la mia scheda non è supportata perché le librerie che uso non sono compatibili o potrebbe essere altra ragione. O in altra mano potrei compilare il valgrind senza paura e saltare questo controllo.
Grazie per il vostro tempo
-Regards
Breci01010 ...
Secondo http://sourceforge.net/mailarchive/forum.php?thread_name=4CD93681.2020608%40yandex.ru&forum_name=valgrind-users, questo potrebbe essere un effetto del tuo nome di toolchain insolitamente esplicito. Quindi, seguendo questo, potresti provare --host = armv7-unknown-linux-gnueabi. – unixsmurf
Grazie a unixsmurf, ho già provato a passare alla nuova configurazione nell'host e quindi funziona in modo efficace. Grazie per il tuo tempo -Regards – breci010101
Ciao, ho compilato e installato con successo il valdgrid nel CortexA8. Ma il problema che trovo ora è che non uso le libraie C standard [Come compilare valgrid] (http://blog.galemin.com/2010/10/how-to-build-valgrind- 3-6-0-per-beagleboard-xm-on-ubuntu /) Come qualcuno sa che altri sistemi funzionano più facilmente con le librerie non standard che non sono gdb. -Grazie – breci010101