AWS) crosscompile C sdk To ARM - not a dynamic Executable


I crosscompile AWS Embedded CSdk through gnueabigcc and put it in the device. But when I run it, there's an error that says I can't run it because I don't have a library. When I tried ldd "file name" with Linux, the phrase "not a dynamic Executable" appears.

I think it's because I can't connect to the library, so I'd like to ask you how to connect the compiled file and library to the ARM board.

this is objdump file

mqtt_demo_mutual_auth:     file format elf32-little

Program Header:
0x70000001 off    0x000107d8 vaddr 0x000207d8 paddr 0x000207d8 align 2**2
         filesz 0x00000008 memsz 0x00000008 flags r--
    PHDR off    0x00000034 vaddr 0x00010034 paddr 0x00010034 align 2**2
         filesz 0x00000120 memsz 0x00000120 flags r--
  INTERP off    0x00000154 vaddr 0x00010154 paddr 0x00010154 align 2**0
         filesz 0x00000013 memsz 0x00000013 flags r--
    LOAD off    0x00000000 vaddr 0x00010000 paddr 0x00010000 align 2**16
         filesz 0x000107e4 memsz 0x000107e4 flags r-x
    LOAD off    0x00010eec vaddr 0x00030eec paddr 0x00030eec align 2**16
         filesz 0x00000184 memsz 0x00000624 flags rw-
 DYNAMIC off    0x00010ef8 vaddr 0x00030ef8 paddr 0x00030ef8 align 2**2
         filesz 0x00000108 memsz 0x00000108 flags rw-
    NOTE off    0x00000168 vaddr 0x00010168 paddr 0x00010168 align 2**2
         filesz 0x00000044 memsz 0x00000044 flags r--
   STACK off    0x00000000 vaddr 0x00000000 paddr 0x00000000 align 2**4
         filesz 0x00000000 memsz 0x00000000 flags rw-
   RELRO off    0x00010eec vaddr 0x00030eec paddr 0x00030eec align 2**0
         filesz 0x00000114 memsz 0x00000114 flags r--

Dynamic Section:
  RUNPATH              /home/youna/aws-iot-device-sdk-embedded-c/a/lib
  INIT                 0x00011060
  FINI                 0x0001cc9c
  INIT_ARRAY           0x00030eec
  INIT_ARRAYSZ         0x00000004
  FINI_ARRAY           0x00030ef0
  FINI_ARRAYSZ         0x00000004
  GNU_HASH             0x000101ac
  STRTAB               0x00010924
  SYMTAB               0x00010434
  STRSZ                0x00000594
  SYMENT               0x00000010
  DEBUG                0x00000000
  PLTGOT               0x00031000
  PLTRELSZ             0x000000a8
  PLTREL               0x00000011
  JMPREL               0x00010fb8
  REL                  0x00010fa8
  RELSZ                0x00000010
  RELENT               0x00000008
  VERNEED              0x00010f58
  VERNEEDNUM           0x00000002
  VERSYM               0x00010eb8

Version References:
  required from
    0x0d696914 0x00 04 GLIBC_2.4
  required from
    0x06969197 0x00 03 GLIBC_2.17
    0x0d696914 0x00 02 GLIBC_2.4

and I ldd this file,

 $ ldd mqtt_demo_mutual_auth 
    not a dynamic executable

and this is file format

$ file mqtt_demo_mutual_auth 
mqtt_demo_mutual_auth: ELF 32-bit LSB executable, ARM, EABI5 version 1 (SYSV), dynamically linked, 
interpreter /lib/, BuildID[sha1]=0190fb3780b414008a5fe111fa7f05ad6f81ffc0, for GNU/Linux 
3.2.0, not stripped
asked on Stack Overflow Mar 30, 2021 by youna

0 Answers

Nobody has answered this question yet.

User contributions licensed under CC BY-SA 3.0