Google에 비슷한 질문이 많이 있습니다. 모두 시도했지만 아무도 작동하지 않아이 질문을 게시해야합니다.ARM 용 Valgrind를 교차 컴파일 할 수 없습니다.
내 장치 용으로 컴파일 된 일부 이진 파일에서 Valgrind를 사용하여 메모리 누수를 감지하려고합니다 (프로세서 : ARM926EJ-Rev5 (v5l) 사용).
따라서, 내 장치 용 특정 도구 체인을 사용하여 Valgrind를 컴파일하려고합니다.
여기 내 프로세스입니다 를 (이 지원되지 않는 건축가에 대해 불평하지 않도록) 나는 Valgrind의의 3.13.0 및
2/sed "s/armv7/arm/g" configure
1/cd Valgrind-3.13.0
우분투 16
error: bad value (cortex-a8) for -mcpu= switch
=> 내 장치 때문에 :
3/./configure --host=arm-none-linux-gnueabi
4/make
다음 오류가 팝업 (리눅스의 기본 대신 내 특정 크로스 컴파일러를 사용) ARM926EJ-S 프로세서를 사용하여 cortex-a8
을 Valgrin-3.13.0 폴더의 모든 파일 중 arm926ej-s
으로 바꿉니다.
다시 위의 단계를 실행하고 다른 오류가 나옵니다 : 내가 잘못 뭐하는 거지
m_dispatch/dispatch-arm-linux.S: Assembler messages:
m_dispatch/dispatch-arm-linux.S:104: Error: selected processor does not support `movw r1,#47'
m_dispatch/dispatch-arm-linux.S:105: Error: selected processor does not support `movw r2,#0'
m_dispatch/dispatch-arm-linux.S:157: Error: selected processor does not support `movw r1,#:lower16:vgPlain_stats__n_xindirs_32'
m_dispatch/dispatch-arm-linux.S:158: Error: selected processor does not support `movt r1,#:upper16:vgPlain_stats__n_xindirs_32'
m_dispatch/dispatch-arm-linux.S:165: Error: selected processor does not support `movw r1,#(((1<<15))-1)'
m_dispatch/dispatch-arm-linux.S:166: Error: selected processor does not support `movw r4,#:lower16:vgPlain_tt_fast'
m_dispatch/dispatch-arm-linux.S:169: Error: selected processor does not support `movt r4,#:upper16:vgPlain_tt_fast'
m_dispatch/dispatch-arm-linux.S:182: Error: selected processor does not support `movw r1,#:lower16:vgPlain_stats__n_xindir_misses_32'
m_dispatch/dispatch-arm-linux.S:183: Error: selected processor does not support `movt r1,#:upper16:vgPlain_stats__n_xindir_misses_32'
Makefile:3224: recipe for target 'm_dispatch/libcoregrind_arm_linux_a-dispatch-arm-linux.o' failed
?
또한 Valgrind를 교차 컴파일해야합니다. 나는이 흐름에 익숙하지 않다. –