DynamoRIO/drmemory

Add AArch64 support

Open

#2 016 ouverte le 7 août 2017

Voir sur GitHub
 (12 commentaires) (0 réactions) (0 assignés)C (289 forks)auto 404
Component-BuildOpSys-AArch64Type-Featurehelp wanted

Métriques du dépôt

Stars
 (2 727 stars)
Métriques de merge PR
 (Métriques PR en attente)

Description

I'm running this on an AArch64 system with Debian Stretch; Linux 4.9.0, gcc 6.3.0, cmake 3.7.2. It looks like the build system thinks it's running on x86-64. On the other hand, cmake prints The system is: Linux - 4.9.0-3-arm64 - aarch64 in CMakeOutput.log. Here's the output from cmake:

$ cmake ..
-- The C compiler identification is GNU 6.3.0
-- Check for working C compiler: /usr/bin/cc
-- Check for working C compiler: /usr/bin/cc -- works
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Detecting C compile features
-- Detecting C compile features - done
-- The CXX compiler identification is GNU 6.3.0
-- Check for working CXX compiler: /usr/bin/c++
-- Check for working CXX compiler: /usr/bin/c++ -- works
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Dr. Memory version number: 1.11.17353
-- Looking for include file asm-i386/stat.h
-- Looking for include file asm-i386/stat.h - not found
-- Performing Test HAVE_FVISIBILITY_INTERNAL
-- Performing Test HAVE_FVISIBILITY_INTERNAL - Success
-- Performing Test HAVE_FVISIBILITY_HIDDEN
-- Performing Test HAVE_FVISIBILITY_HIDDEN - Success
-- Building DynamoRIO from local sources /home/cosmin/drmemory/build/dynamorio/cmake
-- Version number: 6.2.17316
-- The ASM compiler identification is GNU
-- Found assembler: /usr/bin/as
/usr/bin/as missing flag "-mmnemonic.*intel"
/usr/bin/as too old: using /home/cosmin/drmemory/dynamorio/make/as-2.18.50
-- Found Perl: /usr/bin/perl (found version "5.24.1") 
-- Looking for sys/types.h
-- Looking for sys/types.h - found
-- Looking for stdint.h
-- Looking for stdint.h - found
-- Looking for stddef.h
-- Looking for stddef.h - found
-- Check size of uint
-- Check size of uint - done
-- Check size of ushort
-- Check size of ushort - done
-- Check size of bool
-- Check size of bool - failed
-- Check size of byte
-- Check size of byte - failed
-- Check size of sbyte
-- Check size of sbyte - failed
-- Check size of uint32
-- Check size of uint32 - failed
-- Check size of uint64
-- Check size of uint64 - failed
-- Check size of int32
-- Check size of int32 - failed
-- Check size of int64
-- Check size of int64 - failed
-- Check size of _Bool
-- Check size of _Bool - done
-- Performing Test no_stack_protector_avail
-- Performing Test no_stack_protector_avail - Success
-- Performing Test nounused_avail
-- Performing Test nounused_avail - Success
-- Performing Test HAVE_TYPELIMITS_CONTROL
-- Performing Test HAVE_TYPELIMITS_CONTROL - Success
-- Performing Test no_pie_avail
-- Performing Test no_pie_avail - Failed
-- Found ZLIB: /usr/lib/aarch64-linux-gnu/libz.so (found version "1.2.8") 
CMake Error at build/dynamorio/cmake/DynamoRIOConfig.cmake:1073 (message):
  *** /usr/bin/ld failed: ***

  /usr/bin/ld: unrecognised emulation mode: elf_x86_64

  Supported emulations: aarch64linux aarch64elf aarch64elf32 aarch64elf32b
  aarch64elfb armelf armelfb aarch64linuxb aarch64linux32 aarch64linux32b
  armelfb_linux_eabi armelf_linux_eabi

Call Stack (most recent call first):
  dynamorio/clients/drcachesim/CMakeLists.txt:150 (configure_DynamoRIO_client)
  dynamorio/clients/drcachesim/CMakeLists.txt:161 (add_drmemtrace)


-- Configuring incomplete, errors occurred!
See also "/home/cosmin/drmemory/build/CMakeFiles/CMakeOutput.log".
See also "/home/cosmin/drmemory/build/CMakeFiles/CMakeError.log".

CMakeError.log CMakeOutput.log

Guide contributeur