I'm trying to install tcpdump to monitor network traffic. I've tried multiple versions from link1 and link2. Whenever I try to execute I get an error:

~$ adb connect
~$ adb root
~$ adb push tcpdump /data/local
~$ adb shell
~$ su
~# cd /data/local
~# chmod 777 tcpdump
~# ./tcpdump -s 0 -v -w out.pcap
/system/bin/sh: ./tcpdump: not executable: 32-bit ELF file

Any help is appreciated.


~$ uname -m
  • 1
    using the wrong tcpdump ... Use a 64bit version ( arm64 ) Apr 10 '19 at 0:52
  • @Zillinium Where do you recommend I get a 64-bit ? Can't seem to find any
    – Deffjm
    Apr 11 '19 at 2:15

You are on x86 architecture but trying to run a tcpdump binary built for ARM architecture. Link2 provides source code and link1 a 32-bit ARM binary which won't work obviously. You need a 32-bit executable for Intel / AMD processors which you can build from source code, or try this one.

RELATED: ARM vs. x86.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.