Installing dump1090 Aircraft Tracking on macOS Catalina (requires MacPorts)

In this video I go over the procedure to installing dump1090 on macOS Catalina. dump1090 is used to capture ADS-B (aircraft tracking) data and display it on a map.

RTL-SDR Blog V3 R820T2 (Amazon Affiliate)
US: https://amzn.to/2z4hpDu
CA: https://amzn.to/3e3Ln8K (dongle only)
UK: https://amzn.to/2AuUdin
IN: https://amzn.to/2ZNJHez
AU: https://amzn.to/3iDbW8l

Installing MacPorts: https://youtu.be/fJveW3f5p0c

Software Defined Radio Playlist: https://www.youtube.com/playlist?list=PLErU2HjQZ_ZPHRD_m-N5pzrPPdkXa8Fsf

Note: I have included error messages at the bottom of this page to populate search engines so people running into said issues can find these instructions.

Move to Desktop
cd Desktop
Download dump1090 Repository
git clone https://github.com/MalcolmRobb/dump1090.git
Move into dump1090 Directory
cd dump1090
Install Prerequisite Packages
sudo port install pkgconfig rtl-sdr libusb
Open librtlsdr.pc for Editing
sudo nano /opt/local/lib/pkgconfig/librtlsdr.pc
Add Values to these Lines
prefix=/opt/local
exec_prefix=${prefix}
libdir=${exec_prefix}/lib
includedir=${prefix}/include

Type control-o to save and control-x to exit.

Compile dump1090 and view1090
make
Copy Binaries to /opt/local/bin/
sudo cp dump1090 view1090 /opt/local/bin/
Run dump1090
dump1090 --net --interactive
Open Map in Web Browser

http://localhost:8080

These errors are related to pkgconfig not being found or configured properly:

gcc -O2 -g -Wall -W `pkg-config --cflags librtlsdr`  -c dump1090.c
/bin/sh: pkg-config: command not found
gcc -O2 -g -Wall -W `pkg-config --cflags librtlsdr`  -c anet.c
/bin/sh: pkg-config: command not found
gcc -O2 -g -Wall -W `pkg-config --cflags librtlsdr`  -c interactive.c
/bin/sh: pkg-config: command not found
gcc -O2 -g -Wall -W `pkg-config --cflags librtlsdr`  -c mode_ac.c
/bin/sh: pkg-config: command not found
gcc -O2 -g -Wall -W `pkg-config --cflags librtlsdr`  -c mode_s.c
/bin/sh: pkg-config: command not found
gcc -O2 -g -Wall -W `pkg-config --cflags librtlsdr`  -c net_io.c
/bin/sh: pkg-config: command not found
gcc -g -o dump1090 dump1090.o anet.o interactive.o mode_ac.o mode_s.o net_io.o `pkg-config --libs librtlsdr` -lpthread -lm 
/bin/sh: pkg-config: command not found
Undefined symbols for architecture x86_64:
  "_rtlsdr_cancel_async", referenced from:
      _main in dump1090.o
  "_rtlsdr_close", referenced from:
      _main in dump1090.o
  "_rtlsdr_get_device_count", referenced from:
      _modesInitRTLSDR in dump1090.o
      _verbose_device_search in dump1090.o
  "_rtlsdr_get_device_name", referenced from:
      _verbose_device_search in dump1090.o
  "_rtlsdr_get_device_usb_strings", referenced from:
      _modesInitRTLSDR in dump1090.o
      _verbose_device_search in dump1090.o
  "_rtlsdr_get_tuner_gain", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_get_tuner_gains", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_open", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_read_async", referenced from:
      _readerThreadEntryPoint in dump1090.o
  "_rtlsdr_reset_buffer", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_agc_mode", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_center_freq", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_freq_correction", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_sample_rate", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_tuner_gain", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_tuner_gain_mode", referenced from:
      _modesInitRTLSDR in dump1090.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [dump1090] Error 1

These are errors related to rtl-sdr not being found

Package librtlsdr was not found in the pkg-config search path.
Perhaps you should add the directory containing `librtlsdr.pc'
to the PKG_CONFIG_PATH environment variable
No package 'librtlsdr' found
Undefined symbols for architecture x86_64:
  "_rtlsdr_cancel_async", referenced from:
      _main in dump1090.o
  "_rtlsdr_close", referenced from:
      _main in dump1090.o
  "_rtlsdr_get_device_count", referenced from:
      _modesInitRTLSDR in dump1090.o
      _verbose_device_search in dump1090.o
  "_rtlsdr_get_device_name", referenced from:
      _verbose_device_search in dump1090.o
  "_rtlsdr_get_device_usb_strings", referenced from:
      _modesInitRTLSDR in dump1090.o
      _verbose_device_search in dump1090.o
  "_rtlsdr_get_tuner_gain", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_get_tuner_gains", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_open", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_read_async", referenced from:
      _readerThreadEntryPoint in dump1090.o
  "_rtlsdr_reset_buffer", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_agc_mode", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_center_freq", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_freq_correction", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_sample_rate", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_tuner_gain", referenced from:
      _modesInitRTLSDR in dump1090.o
  "_rtlsdr_set_tuner_gain_mode", referenced from:
      _modesInitRTLSDR in dump1090.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)
make: *** [dump1090] Error 1

Leave a comment

Your email address will not be published. Required fields are marked *