I recall my previous mail about cross-compilation.
When i did exactly what is recommended, I managed to cross-compile.
The unexpected issue appeared when I run wvalgrind myappw:
FATAL: kernel too old
My kernel is 2.6.37 and seemed to be ok.
Is it final or can I do something further? Old Valgrind version, for
example?

Thank a lot!!!

On Tue, 28 Feb 2023 at 13:52, Leon Pollak <leon.pol...@gmail.com> wrote:

> Thank you, Paul - you were right - I missed the autogen.sh script.
> Doing it and trying to satisfy its and configure requirements brought me
> to so many incompatible version errors, that I gave up on "native"
> compilation (for DM8148 arm Cortex-A8, Linux 2.6.37) and decided to switch
> to cross-compilation. My PC is x86_64 Fedora 35.
> So, autogen.sh ran smoothly.
> Than I ran:
> export CROSS_COMPILE=/opt/gcc-linaro/bin/arm-linux-gnueabihf-
> ./configure --target=arm-linux-gnueabihf --host=x86_64-redhat-linux
> --prefix=/opt/valgrind CFLAGS=-static CC=${CROSS_COMPILE}gcc \
>              CPP=${CROSS_COMPILE}cpp CXX=${CROSS_COMPILE}g++
> LD=${CROSS_COMPILE}ld AR=${CROSS_COMPILE}ar
> Everything runs smoothly till:
> /opt/gcc-linaro/bin/arm-linux-gnueabihf-gcc -DHAVE_CONFIG_H -I. -I..  -I..
> -I../include -I../include -I../VEX/pub -I../VEX/pub -DVGA_amd64=1
> -DVGO_linux=1 -DVGP_amd64_linux=1 -DVGPV_amd64_linux_vanilla=1  -I../
> coregrind -DVG_LIBDIR="\"/opt/valgrind/libexec/valgrind"\"
> -DVG_PLATFORM="\"amd64-linux\""  -O2 -g -Wall -Wmissing-prototypes -Wshadow
> -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wcast-align -Wc
> ast-qual -Wwrite-strings -Wempty-body -Wformat -Wformat-signedness
> -Wformat-security -Wignored-qualifiers -Wmissing-parameter-type
> -Wlogical-op -Wold-style-declaration -finline-functions
> -fno-stack-protector -f
> no-strict-aliasing -fno-builtin   -fomit-frame-pointer   -static -MT
> valgrind-launcher-linux.o -MD -MP -MF .deps/valgrind-launcher-linux.Tpo -c
> -o valgrind-launcher-linux.o `test -f 'launcher-linux.c' || echo '
> ./'`launcher-linux.c
> In file included from ../include/pub_tool_vki.h:61:0,
>                 from pub_core_vki.h:42,
>                 from launcher-linux.c:39:
> ../include/vki/vki-xen.h:82:2: error: #error "Need to define per-ARCH Xen
> types for this platform"
> #error "Need to define per-ARCH Xen types for this platform"
>  ^~~~~
> ../include/vki/vki-xen.h:85:1: error: ‘void’ must be the only parameter
> DEFINE_VKI_XEN_GUEST_HANDLE(void);
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~
>
> and further thousands of errors.
>
>
> On Mon, 27 Feb 2023 at 23:24, Paul Floyd <pjfl...@wanadoo.fr> wrote:
>
>>
>>
>> On 27-02-23 22:11, Leon Pollak wrote:
>> > Hello, all.
>> > I am trying to compile Valgrind 3.20.0 on ARMv7 Linux 2.6.37 (not
>> cross!).
>> > At first, compilation produced a lot of errors with binary constants in
>> > the form 0bXXXX, but I replaced them with normal numbers and
>> compilation
>> > continued.
>> > It failed with:
>> > ../coregrind/link_tool_exe_linux 0x58000000 gcc -std=gnu99     -o
>> > memcheck-arm-linux  -O2 -g -Wall -Wmissing-prototypes -Wshadow
>> > -Wpointer-arith -Wstrict-prototypes -Wmissing-declarations -Wcast-qual
>> > -Wwrite-st
>> > rings -Wformat -Wformat-security -finline-functions
>> -fno-stack-protector
>> > -fno-strict-aliasing -fno-builtin   -marm -mcpu=cortex-a8 -O2 -static
>> > -nodefaultlibs -nostartfiles -u _start   memcheck_arm_linux-mc_leak
>> > check.o memcheck_arm_linux-mc_malloc_wrappers.o
>> > memcheck_arm_linux-mc_main.o memcheck_arm_linux-mc_main_asm.o
>> > memcheck_arm_linux-mc_translate.o memcheck_arm_linux-mc_machine.o
>> > memcheck_arm_linux-mc_errors.o ../
>> > coregrind/libcoregrind-arm-linux.a ../VEX/libvex-arm-linux.a -lgcc
>> > ../coregrind/libgcc-sup-arm-linux.a
>> > ../coregrind/link_tool_exe_linux: line 58: use: command not found
>> > ../coregrind/link_tool_exe_linux: line 59: use: command not found
>> > ../coregrind/link_tool_exe_linux: line 62: die: command not found
>> > ../coregrind/link_tool_exe_linux: line 70: syntax error near unexpected
>> > token `$ala'
>> > ../coregrind/link_tool_exe_linux: line 70: `    if (length($ala) < 3 ||
>> > index($ala, "0x") != 0);'
>>
>> It sounds to me as though the script is failing to find the perl
>> interpreter and is running in whatever your default shell is.
>>
>> Can you ensure that you have perl installed?
>>
>> Is the path in link_tool_exe_linux correct?
>> If not you may need to run "autogen.sh" in the top source directory and
>> then rerun configure.
>>
>> A+
>> Paul
>>
>>
>>
>> _______________________________________________
>> Valgrind-users mailing list
>> Valgrind-users@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/valgrind-users
>>
>
_______________________________________________
Valgrind-users mailing list
Valgrind-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/valgrind-users

Reply via email to