jpoirier / stratux-setup

An alternative method for installing Stratux on your board's stock Linux OS.
BSD 3-Clause "New" or "Revised" License
13 stars 8 forks source link

Use debian packaged go, many small cleanups #40

Open lukepalmer opened 7 years ago

lukepalmer commented 7 years ago

I had to make some changes in order to get this happily working on current raspbian and did a bunch of cleanup along the way. Here's what I changed, in order:

  1. The bash shebang has to be there, particularly as the script is permissioned user executable. Unless the user goes out of the way to invoke with bash they'll just get sh and the script will behave badly.
  2. Batch up a bunch of the things we're asking aptitude to do, which makes it much faster
  3. golang 1.7 is now available as an official debian package! We can stop making guesses about the compiler to use, etc, and eliminate a bunch of setup work.
  4. Remove hardcoded paths where possible throughout
  5. Fix the final success message which used to make the script fail due to an unclosed single quote
cpignol commented 7 years ago

Try to use this branch instead of the Jpoirier branch (go embd issue). The makefile building xgen_gdl90 failed:

git submodule update --init cd dump1090 && make make[2]: Entering directory '/root/stratux/dump1090' gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W pkg-config --cflags librtlsdr -c dump1090.c -o dump1090.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c anet.c -o anet.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c interactive.c -o interactive.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c mode_ac.c -o mode_ac.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c mode_s.c -o mode_s.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c net_io.c -o net_io.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c crc.c -o crc.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c demod_2000.c -o demod_2000.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c demod_2400.c -o demod_2400.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c stats.c -o stats.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c cpr.c -o cpr.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c icao_filter.c -o icao_filter.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c track.c -o track.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c util.c -o util.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c convert.c -o convert.o gcc -g -o dump1090 dump1090.o anet.o interactive.o mode_ac.o mode_s.o net_io.o crc.o demod_2000.o demod_2400.o stats.o cpr.o icao_filter.o track.o util.o convert.o -lpthread -lm -lrt pkg-config --libs librtlsdr gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c view1090.c -o view1090.o gcc -g -o view1090 view1090.o anet.o interactive.o mode_ac.o mode_s.o net_io.o crc.o stats.o cpr.o icao_filter.o track.o util.o -lpthread -lm -lrt make[2]: Leaving directory '/root/stratux/dump1090' go get -t -d -v ./main ./test ./godump978 ./uatparse ./sensors github.com/kidoman/embd (download) github.com/golang/glog (download) github.com/westphae/goflying (download) github.com/dustin/go-humanize (download) github.com/jpoirier/gortlsdr (download) github.com/mattn/go-sqlite3 (download) Fetching https://golang.org/x/net/context?go-get=1 Parsing meta tags from https://golang.org/x/net/context?go-get=1 (status code 200) get "golang.org/x/net/context": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/context?go-get=1 get "golang.org/x/net/context": verifying non-authoritative meta tag Fetching https://golang.org/x/net?go-get=1 Parsing meta tags from https://golang.org/x/net?go-get=1 (status code 200) golang.org/x/net (download) github.com/ricochet2200/go-disk-usage (download) github.com/takama/daemon (download) github.com/tarm/serial (download) github.com/uavionix/serial (download) github.com/skelterjohn/go.matrix (download) /root/go-path/src/github.com/westphae/goflying/ahrsweb/kalman_listener.go:10:2: local import "..//ahrs" in non-local package Fetching https://golang.org/x/net/icmp?go-get=1 Parsing meta tags from https://golang.org/x/net/icmp?go-get=1 (status code 200) get "golang.org/x/net/icmp": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/icmp?go-get=1 get "golang.org/x/net/icmp": verifying non-authoritative meta tag Fetching https://golang.org/x/net/ipv4?go-get=1 Parsing meta tags from https://golang.org/x/net/ipv4?go-get=1 (status code 200) get "golang.org/x/net/ipv4": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/ipv4?go-get=1 get "golang.org/x/net/ipv4": verifying non-authoritative meta tag Fetching https://golang.org/x/net/websocket?go-get=1 Parsing meta tags from https://golang.org/x/net/websocket?go-get=1 (status code 200) get "golang.org/x/net/websocket": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/websocket?go-get=1 get "golang.org/x/net/websocket": verifying non-authoritative meta tag github.com/gansidui/geohash (download) github.com/gonum/plot (download) github.com/gonum/floats (download) github.com/gonum/internal (download) github.com/golang/freetype (download) Fetching https://golang.org/x/image/math/fixed?go-get=1 Parsing meta tags from https://golang.org/x/image/math/fixed?go-get=1 (status code 200) get "golang.org/x/image/math/fixed": found meta tag main.metaImport{Prefix:"golang.org/x/image", VCS:"git", RepoRoot:"https://go.googlesource.com/image"} at https://golang.org/x/image/math/fixed?go-get=1 get "golang.org/x/image/math/fixed": verifying non-authoritative meta tag Fetching https://golang.org/x/image?go-get=1 Parsing meta tags from https://golang.org/x/image?go-get=1 (status code 200) golang.org/x/image (download) Fetching https://golang.org/x/image/font?go-get=1 Parsing meta tags from https://golang.org/x/image/font?go-get=1 (status code 200) get "golang.org/x/image/font": found meta tag main.metaImport{Prefix:"golang.org/x/image", VCS:"git", RepoRoot:"https://go.googlesource.com/image"} at https://golang.org/x/image/font?go-get=1 get "golang.org/x/image/font": verifying non-authoritative meta tag github.com/llgcode/draw2d (download) Fetching https://golang.org/x/image/tiff?go-get=1 Parsing meta tags from https://golang.org/x/image/tiff?go-get=1 (status code 200) get "golang.org/x/image/tiff": found meta tag main.metaImport{Prefix:"golang.org/x/image", VCS:"git", RepoRoot:"https://go.googlesource.com/image"} at https://golang.org/x/image/tiff?go-get=1 get "golang.org/x/image/tiff": verifying non-authoritative meta tag bitbucket.org/zombiezen/gopdf (download) github.com/ajstarks/svgo (download) github.com/kellydunn/golang-geo (download) github.com/erikstmartin/go-testdb (download) github.com/kylelemons/go-gypsy (download) github.com/lib/pq (download) github.com/ziutek/mymysql (download) Makefile:15: recipe for target 'xgen_gdl90' failed make[1]: [xgen_gdl90] Error 1 make[1]: Leaving directory '/root/stratux' Makefile:12: recipe for target 'all' failed make: [all] Error 2 cp -f gen_gdl90 /usr/bin/gen_gdl90 cp: cannot stat ‘gen_gdl90’: No such file or directory Makefile:40: recipe for target 'install' failed make: *** [install] Error 1 ...done

my config Raspberry PI 3 Jessie lite Linux raspberrypi 4.9.24-v7+ #993 SMP Wed Apr 26 18:01:23 BST 2017 armv7l GNU/Linux

lukepalmer commented 7 years ago

@cpignol Can you post the bit where the build actually fails? This snippet shows a failure caused by an earlier build error.

Entirely possible that this could need a touch-up because we pull in HEAD of other projects, so it's a moving target.

cpignol commented 7 years ago

Here is the full log of the installation:

root@raspberrypi:~/stratux-setup# bash stratux-setup.sh


** Stratux Setup Starting... ***


** Stop exisiting services... *** stratux service stopped... isc-dhcp service found and stopped... ...done

** Installing dependencies... **** Get:1 http://ftp.debian.org jessie-backports InRelease [166 kB] Hit http://mirrordirector.raspbian.org jessie InRelease
Hit http://archive.raspberrypi.org jessie InRelease
Hit http://mirrordirector.raspbian.org jessie/main armhf Packages
Ign http://ftp.debian.org jessie-backports InRelease Hit http://mirrordirector.raspbian.org jessie/contrib armhf Packages
Hit http://archive.raspberrypi.org jessie/main armhf Packages
Hit http://mirrordirector.raspbian.org jessie/non-free armhf Packages
Hit http://mirrordirector.raspbian.org jessie/rpi armhf Packages
Hit http://archive.raspberrypi.org jessie/ui armhf Packages
Hit http://ftp.debian.org jessie-backports/main Translation-en Hit http://ftp.debian.org jessie-backports/main armhf Packages
Ign http://ftp.debian.org jessie-backports/main Translation-en_GB
Ign http://mirrordirector.raspbian.org jessie/contrib Translation-en_GB
Ign http://archive.raspberrypi.org jessie/main Translation-en_GB
Ign http://mirrordirector.raspbian.org jessie/contrib Translation-en
Ign http://mirrordirector.raspbian.org jessie/main Translation-en_GB
Ign http://archive.raspberrypi.org jessie/main Translation-en
Ign http://mirrordirector.raspbian.org jessie/main Translation-en
Ign http://mirrordirector.raspbian.org jessie/non-free Translation-en_GB
Ign http://archive.raspberrypi.org jessie/ui Translation-en_GB
Ign http://mirrordirector.raspbian.org jessie/non-free Translation-en
Ign http://mirrordirector.raspbian.org jessie/rpi Translation-en_GB
Ign http://archive.raspberrypi.org jessie/ui Translation-en
Ign http://mirrordirector.raspbian.org jessie/rpi Translation-en
Fetched 166 kB in 18s (8,769 B/s)
Reading package lists... Done W: GPG error: http://ftp.debian.org jessie-backports InRelease: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 8B48AD6246925553 NO_PUBKEY 7638D0442B90D010 Reading package lists... Done Building dependency tree
Reading state information... Done rpi-update is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom Performing self-update Relaunching after update Raspberry Pi firmware updater by Hexxeh, enhanced by AndrewS and Dom Your firmware is already up to date plymouth was already set on hold. Reading package lists... Done Building dependency tree
Reading state information... Done Calculating upgrade... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Reading package lists... Done Building dependency tree
Reading state information... Done The following package was automatically installed and is no longer required: libnl-route-3-200 Use 'apt-get autoremove' to remove it. The following packages will be REMOVED: hostapd 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. After this operation, 1,164 kB disk space will be freed. (Reading database ... 74628 files and directories currently installed.) Removing hostapd (1:2.3-1+deb8u4) ... Processing triggers for man-db (2.7.0.2-5) ... Reading package lists... Done Building dependency tree
Reading state information... Done Note, selecting 'libusb-1.0-0-dev' for regex 'libusb-1.0-0.dev' Note, selecting 'libfftw3-3' instead of 'fftw3' Note, selecting 'libfftw3-dev' instead of 'fftw3-dev' autoconf is already the newest version. automake is already the newest version. build-essential is already the newest version. git is already the newest version. isc-dhcp-server is already the newest version. iw is already the newest version. libfftw3-3 is already the newest version. libfftw3-dev is already the newest version. libjpeg-dev is already the newest version. libtool is already the newest version. libusb-1.0-0-dev is already the newest version. lshw is already the newest version. mercurial is already the newest version. pkg-config is already the newest version. python-daemon is already the newest version. python-dev is already the newest version. python-pil is already the newest version. python-pip is already the newest version. screen is already the newest version. tcpdump is already the newest version. wget is already the newest version. cmake is already the newest version. i2c-tools is already the newest version. python-smbus is already the newest version. The following NEW packages will be installed: hostapd 0 upgraded, 1 newly installed, 0 to remove and 0 not upgraded. Need to get 0 B/459 kB of archives. After this operation, 1,164 kB of additional disk space will be used. Selecting previously unselected package hostapd. (Reading database ... 74608 files and directories currently installed.) Preparing to unpack .../hostapd_1%3a2.3-1+deb8u4_armhf.deb ... Unpacking hostapd (1:2.3-1+deb8u4) ... Processing triggers for man-db (2.7.0.2-5) ... Processing triggers for systemd (215-17+deb8u7) ... Setting up hostapd (1:2.3-1+deb8u4) ... Reading package lists... Done Building dependency tree
Reading state information... Done golang-1.7 is already the newest version. 0 upgraded, 0 newly installed, 0 to remove and 84 not upgraded. Reading package lists... Done Building dependency tree
Reading state information... Done 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. Requirement already satisfied (use --upgrade to upgrade): wiringpi in /usr/local/lib/python2.7/dist-packages Cleaning up... ...done

** Hardware check... ***

Raspberry Pi detected...


** Raspberry Pi setup... ***


** Boot config settings... *** ...done

** Disable serial console... *** ...done

** RPi 0/2 check to enable Edimax wifi dongle option... *** ...done

** I2C setup... *** ...done

** Sysctl tweaks... *** ...done ...done

** Stratux USB devices udev rules to /etc/udev/rules.d/10-stratux.rules *** ...done

** SSH setup and config... *** ...done

** Hardware blacklisting... ***

** Go environment setup... *** ...done

** RTL-SDR library build... *** Cloning into 'librtlsdr'... remote: Counting objects: 1665, done. remote: Total 1665 (delta 0), reused 0 (delta 0), pack-reused 1665 Receiving objects: 100% (1665/1665), 458.27 KiB | 0 bytes/s, done. Resolving deltas: 100% (1181/1181), done. Checking connectivity... done. -- The C compiler identification is GNU 4.9.2 -- 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 -- Build type not specified: defaulting to release. -- Extracting version information from git describe... -- Found PkgConfig: /usr/bin/pkg-config (found version "0.28") -- Checking for module 'libusb-1.0' -- Found libusb-1.0, version 1.0.19 -- Looking for libusb_handle_events_timeout_completed -- Looking for libusb_handle_events_timeout_completed - found -- Looking for libusb_error_name -- Looking for libusb_error_name - found -- Found libusb-1.0: /usr/include/libusb-1.0, /usr/lib/arm-linux-gnueabihf/libusb-1.0.so -- Looking for include file pthread.h -- Looking for include file pthread.h - found -- Looking for pthread_create in pthreads -- Looking for pthread_create in pthreads - not found -- Looking for pthread_create in pthread -- Looking for pthread_create in pthread - found -- Found Threads: TRUE
-- Udev rules not being installed, install them with -DINSTALL_UDEV_RULES=ON -- Building with kernel driver detaching disabled, use -DDETACH_KERNEL_DRIVER=ON to enable -- Building for version: v0.5.3-23-gc977 / 0.5git -- Using install prefix: /usr/local -- Configuring done -- Generating done -- Build files have been written to: /root/librtlsdr/build Scanning dependencies of target rtlsdr_shared [ 3%] Building C object src/CMakeFiles/rtlsdr_shared.dir/librtlsdr.c.o [ 6%] Building C object src/CMakeFiles/rtlsdr_shared.dir/tuner_e4k.c.o [ 10%] Building C object src/CMakeFiles/rtlsdr_shared.dir/tuner_fc0012.c.o [ 13%] Building C object src/CMakeFiles/rtlsdr_shared.dir/tuner_fc0013.c.o [ 16%] Building C object src/CMakeFiles/rtlsdr_shared.dir/tuner_fc2580.c.o [ 20%] Building C object src/CMakeFiles/rtlsdr_shared.dir/tuner_r82xx.c.o [ 23%] Linking C shared library librtlsdr.so [ 23%] Built target rtlsdr_shared Scanning dependencies of target convenience_static [ 26%] Building C object src/CMakeFiles/convenience_static.dir/convenience/convenience.c.o [ 30%] Linking C static library libconvenience_static.a [ 30%] Built target convenience_static Scanning dependencies of target rtl_fm [ 33%] Building C object src/CMakeFiles/rtl_fm.dir/rtl_fm.c.o [ 36%] Linking C executable rtl_fm [ 36%] Built target rtl_fm Scanning dependencies of target rtl_sdr [ 40%] Building C object src/CMakeFiles/rtl_sdr.dir/rtl_sdr.c.o [ 43%] Linking C executable rtl_sdr [ 43%] Built target rtl_sdr Scanning dependencies of target rtlsdr_static [ 46%] Building C object src/CMakeFiles/rtlsdr_static.dir/librtlsdr.c.o [ 50%] Building C object src/CMakeFiles/rtlsdr_static.dir/tuner_e4k.c.o [ 53%] Building C object src/CMakeFiles/rtlsdr_static.dir/tuner_fc0012.c.o [ 56%] Building C object src/CMakeFiles/rtlsdr_static.dir/tuner_fc0013.c.o [ 60%] Building C object src/CMakeFiles/rtlsdr_static.dir/tuner_fc2580.c.o [ 63%] Building C object src/CMakeFiles/rtlsdr_static.dir/tuner_r82xx.c.o [ 66%] Linking C static library librtlsdr.a [ 66%] Built target rtlsdr_static Scanning dependencies of target rtl_tcp [ 70%] Building C object src/CMakeFiles/rtl_tcp.dir/rtl_tcp.c.o [ 73%] Linking C executable rtl_tcp [ 73%] Built target rtl_tcp Scanning dependencies of target rtl_test [ 76%] Building C object src/CMakeFiles/rtl_test.dir/rtl_test.c.o [ 80%] Linking C executable rtl_test [ 80%] Built target rtl_test Scanning dependencies of target rtl_adsb [ 83%] Building C object src/CMakeFiles/rtl_adsb.dir/rtl_adsb.c.o [ 86%] Linking C executable rtl_adsb [ 86%] Built target rtl_adsb Scanning dependencies of target rtl_eeprom [ 90%] Building C object src/CMakeFiles/rtl_eeprom.dir/rtl_eeprom.c.o [ 93%] Linking C executable rtl_eeprom [ 93%] Built target rtl_eeprom Scanning dependencies of target rtl_power [ 96%] Building C object src/CMakeFiles/rtl_power.dir/rtl_power.c.o [100%] Linking C executable rtl_power [100%] Built target rtl_power [ 23%] Built target rtlsdr_shared [ 30%] Built target convenience_static [ 36%] Built target rtl_fm [ 43%] Built target rtl_sdr [ 66%] Built target rtlsdr_static [ 73%] Built target rtl_tcp [ 80%] Built target rtl_test [ 86%] Built target rtl_adsb [ 93%] Built target rtl_eeprom [100%] Built target rtl_power Install the project... -- Install configuration: "Release" -- Installing: /usr/local/lib/pkgconfig/librtlsdr.pc -- Installing: /usr/local/include/rtl-sdr.h -- Installing: /usr/local/include/rtl-sdr_export.h -- Installing: /usr/local/lib/librtlsdr.so.0.5git -- Up-to-date: /usr/local/lib/librtlsdr.so.0 -- Up-to-date: /usr/local/lib/librtlsdr.so -- Installing: /usr/local/lib/librtlsdr.a -- Installing: /usr/local/bin/rtl_sdr -- Set runtime path of "/usr/local/bin/rtl_sdr" to "" -- Installing: /usr/local/bin/rtl_tcp -- Set runtime path of "/usr/local/bin/rtl_tcp" to "" -- Installing: /usr/local/bin/rtl_test -- Set runtime path of "/usr/local/bin/rtl_test" to "" -- Installing: /usr/local/bin/rtl_fm -- Set runtime path of "/usr/local/bin/rtl_fm" to "" -- Installing: /usr/local/bin/rtl_eeprom -- Set runtime path of "/usr/local/bin/rtl_eeprom" to "" -- Installing: /usr/local/bin/rtl_adsb -- Set runtime path of "/usr/local/bin/rtl_adsb" to "" -- Installing: /usr/local/bin/rtl_power -- Set runtime path of "/usr/local/bin/rtl_power" to "" ...done

** Stratux build and installation... *** Cloning into 'stratux'... remote: Counting objects: 7996, done. remote: Compressing objects: 100% (66/66), done. remote: Total 7996 (delta 46), reused 63 (delta 31), pack-reused 7899 Receiving objects: 100% (7996/7996), 42.06 MiB | 3.45 MiB/s, done. Resolving deltas: 100% (5407/5407), done. Checking connectivity... done. Checking out files: 100% (236/236), done. Submodule 'dump1090' (https://github.com/AvSquirrel/dump1090) registered for path 'dump1090' Cloning into 'dump1090'... remote: Counting objects: 4501, done. remote: Total 4501 (delta 0), reused 0 (delta 0), pack-reused 4501 Receiving objects: 100% (4501/4501), 5.69 MiB | 1.56 MiB/s, done. Resolving deltas: 100% (3056/3056), done. Checking connectivity... done. Submodule path 'dump1090': checked out '9a4fb850937565cfeadd1e5889cddbf93f45faf5' Note: checking out 'v1.3b2'.

You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may do so (now or later) by using -b with the checkout command again. Example:

git checkout -b new_branch_name

HEAD is now at c6e96b5... Merge remote-tracking branch 'origin/master' into ahrs_dev make xdump978 xdump1090 xgen_gdl90 fancontrol make[1]: Entering directory '/root/stratux' cd dump978 && make lib make[2]: Entering directory '/root/stratux/dump978' gcc -c -O2 -g -Wall -Werror -Ifec -fpic -DBUILD_LIB=1 dump978.c fec.c fec/decode_rs_char.c fec/init_rs_char.c gcc -shared -lm -o ../libdump978.so dump978.o fec.o decode_rs_char.o init_rs_char.o make[2]: Leaving directory '/root/stratux/dump978' sudo cp -f ./libdump978.so /usr/lib/libdump978.so git submodule update --init cd dump1090 && make make[2]: Entering directory '/root/stratux/dump1090' gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W pkg-config --cflags librtlsdr -c dump1090.c -o dump1090.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c anet.c -o anet.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c interactive.c -o interactive.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c mode_ac.c -o mode_ac.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c mode_s.c -o mode_s.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c net_io.c -o net_io.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c crc.c -o crc.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c demod_2000.c -o demod_2000.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c demod_2400.c -o demod_2400.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c stats.c -o stats.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c cpr.c -o cpr.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c icao_filter.c -o icao_filter.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c track.c -o track.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c util.c -o util.o gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c convert.c -o convert.o gcc -g -o dump1090 dump1090.o anet.o interactive.o mode_ac.o mode_s.o net_io.o crc.o demod_2000.o demod_2400.o stats.o cpr.o icao_filter.o track.o util.o convert.o -lpthread -lm -lrt pkg-config --libs librtlsdr gcc -DMODES_DUMP1090_VERSION=\"v1.15-stratux-3-g9a4fb85\" -O2 -g -Wall -Werror -W -c view1090.c -o view1090.o gcc -g -o view1090 view1090.o anet.o interactive.o mode_ac.o mode_s.o net_io.o crc.o stats.o cpr.o icao_filter.o track.o util.o -lpthread -lm -lrt make[2]: Leaving directory '/root/stratux/dump1090' go get -t -d -v ./main ./test ./godump978 ./uatparse ./sensors github.com/kidoman/embd (download) github.com/golang/glog (download) github.com/westphae/goflying (download) github.com/dustin/go-humanize (download) github.com/jpoirier/gortlsdr (download) github.com/mattn/go-sqlite3 (download) Fetching https://golang.org/x/net/context?go-get=1 Parsing meta tags from https://golang.org/x/net/context?go-get=1 (status code 200) get "golang.org/x/net/context": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/context?go-get=1 get "golang.org/x/net/context": verifying non-authoritative meta tag Fetching https://golang.org/x/net?go-get=1 Parsing meta tags from https://golang.org/x/net?go-get=1 (status code 200) golang.org/x/net (download) github.com/ricochet2200/go-disk-usage (download) github.com/takama/daemon (download) github.com/tarm/serial (download) github.com/uavionix/serial (download) github.com/skelterjohn/go.matrix (download) /root/go-path/src/github.com/westphae/goflying/ahrsweb/kalman_listener.go:10:2: local import "..//ahrs" in non-local package Fetching https://golang.org/x/net/icmp?go-get=1 Parsing meta tags from https://golang.org/x/net/icmp?go-get=1 (status code 200) get "golang.org/x/net/icmp": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/icmp?go-get=1 get "golang.org/x/net/icmp": verifying non-authoritative meta tag Fetching https://golang.org/x/net/ipv4?go-get=1 Parsing meta tags from https://golang.org/x/net/ipv4?go-get=1 (status code 200) get "golang.org/x/net/ipv4": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/ipv4?go-get=1 get "golang.org/x/net/ipv4": verifying non-authoritative meta tag Fetching https://golang.org/x/net/websocket?go-get=1 Parsing meta tags from https://golang.org/x/net/websocket?go-get=1 (status code 200) get "golang.org/x/net/websocket": found meta tag main.metaImport{Prefix:"golang.org/x/net", VCS:"git", RepoRoot:"https://go.googlesource.com/net"} at https://golang.org/x/net/websocket?go-get=1 get "golang.org/x/net/websocket": verifying non-authoritative meta tag github.com/gansidui/geohash (download) github.com/gonum/plot (download) github.com/gonum/floats (download) github.com/gonum/internal (download) github.com/golang/freetype (download) Fetching https://golang.org/x/image/math/fixed?go-get=1 Parsing meta tags from https://golang.org/x/image/math/fixed?go-get=1 (status code 200) get "golang.org/x/image/math/fixed": found meta tag main.metaImport{Prefix:"golang.org/x/image", VCS:"git", RepoRoot:"https://go.googlesource.com/image"} at https://golang.org/x/image/math/fixed?go-get=1 get "golang.org/x/image/math/fixed": verifying non-authoritative meta tag Fetching https://golang.org/x/image?go-get=1 Parsing meta tags from https://golang.org/x/image?go-get=1 (status code 200) golang.org/x/image (download) Fetching https://golang.org/x/image/font?go-get=1 Parsing meta tags from https://golang.org/x/image/font?go-get=1 (status code 200) get "golang.org/x/image/font": found meta tag main.metaImport{Prefix:"golang.org/x/image", VCS:"git", RepoRoot:"https://go.googlesource.com/image"} at https://golang.org/x/image/font?go-get=1 get "golang.org/x/image/font": verifying non-authoritative meta tag github.com/llgcode/draw2d (download) Fetching https://golang.org/x/image/tiff?go-get=1 Parsing meta tags from https://golang.org/x/image/tiff?go-get=1 (status code 200) get "golang.org/x/image/tiff": found meta tag main.metaImport{Prefix:"golang.org/x/image", VCS:"git", RepoRoot:"https://go.googlesource.com/image"} at https://golang.org/x/image/tiff?go-get=1 get "golang.org/x/image/tiff": verifying non-authoritative meta tag bitbucket.org/zombiezen/gopdf (download) github.com/ajstarks/svgo (download) github.com/kellydunn/golang-geo (download) github.com/erikstmartin/go-testdb (download) github.com/kylelemons/go-gypsy (download) github.com/lib/pq (download) github.com/ziutek/mymysql (download) Makefile:15: recipe for target 'xgen_gdl90' failed make[1]: [xgen_gdl90] Error 1 make[1]: Leaving directory '/root/stratux' Makefile:12: recipe for target 'all' failed make: [all] Error 2 cp -f gen_gdl90 /usr/bin/gen_gdl90 cp: cannot stat ‘gen_gdl90’: No such file or directory Makefile:40: recipe for target 'install' failed make: *** [install] Error 1 ...done

** Kalibrate build and installation... *** Cloning into 'kalibrate-rtl'... remote: Counting objects: 85, done. remote: Total 85 (delta 0), reused 0 (delta 0), pack-reused 85 Unpacking objects: 100% (85/85), done. Checking connectivity... done. configure.ac:9: installing './compile' configure.ac:34: installing './config.guess' configure.ac:34: installing './config.sub' configure.ac:4: installing './install-sh' configure.ac:4: installing './missing' Makefile.am: installing './INSTALL' src/Makefile.am: installing './depcomp' checking for a BSD-compatible install... /usr/bin/install -c checking whether build environment is sane... yes checking for a thread-safe mkdir -p... /bin/mkdir -p checking for gawk... no checking for mawk... mawk checking whether make sets $(MAKE)... yes checking whether make supports nested variables... yes checking for g++... g++ checking whether the C++ compiler works... yes checking for C++ compiler default output file name... a.out checking for suffix of executables... checking whether we are cross compiling... no checking for suffix of object files... o checking whether we are using the GNU C++ compiler... yes checking whether g++ accepts -g... yes checking for style of include used by make... GNU checking dependency style of g++... gcc3 checking for gcc... gcc checking whether we are using the GNU C compiler... yes checking whether gcc accepts -g... yes checking for gcc option to accept ISO C89... none needed checking whether gcc understands -c and -o together... yes checking dependency style of gcc... gcc3 checking whether ln -s works... yes checking for ranlib... ranlib checking how to run the C preprocessor... gcc -E checking for grep that handles long lines and -e... /bin/grep checking for egrep... /bin/grep -E checking for ANSI C header files... yes checking for sys/types.h... yes checking for sys/stat.h... yes checking for stdlib.h... yes checking for string.h... yes checking for memory.h... yes checking for strings.h... yes checking for inttypes.h... yes checking for stdint.h... yes checking for unistd.h... yes checking for stdlib.h... (cached) yes checking for string.h... (cached) yes checking sys/time.h usability... yes checking sys/time.h presence... yes checking for sys/time.h... yes checking for unistd.h... (cached) yes checking for stdbool.h that conforms to C99... yes checking for _Bool... yes checking for inline... inline checking for working strtod... yes checking for floor... no checking for getpagesize... yes checking for memset... yes checking for sqrt... no checking for strtoul... yes checking for strtol... yes checking for pkg-config... /usr/bin/pkg-config checking pkg-config is at least version 0.9.0... yes checking for FFTW3... yes checking for LIBRTLSDR... yes checking build system type... armv7l-unknown-linux-gnueabihf checking host system type... armv7l-unknown-linux-gnueabihf checking that generated files are newer than configure... done configure: creating ./config.status config.status: creating Makefile config.status: creating src/Makefile config.status: creating config.h config.status: executing depfiles commands make all-recursive make[1]: Entering directory '/root/kalibrate-rtl' Making all in src make[2]: Entering directory '/root/kalibrate-rtl/src' g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-arfcn_freq.o -MD -MP -MF .deps/kal-arfcn_freq.Tpo -c -o kal-arfcn_freq.o test -f 'arfcn_freq.cc' || echo './'arfcn_freq.cc mv -f .deps/kal-arfcn_freq.Tpo .deps/kal-arfcn_freq.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-c0_detect.o -MD -MP -MF .deps/kal-c0_detect.Tpo -c -o kal-c0_detect.o test -f 'c0_detect.cc' || echo './'c0_detect.cc mv -f .deps/kal-c0_detect.Tpo .deps/kal-c0_detect.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-circular_buffer.o -MD -MP -MF .deps/kal-circular_buffer.Tpo -c -o kal-circular_buffer.o test -f 'circular_buffer.cc' || echo './'circular_buffer.cc mv -f .deps/kal-circular_buffer.Tpo .deps/kal-circular_buffer.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-fcch_detector.o -MD -MP -MF .deps/kal-fcch_detector.Tpo -c -o kal-fcch_detector.o test -f 'fcch_detector.cc' || echo './'fcch_detector.cc mv -f .deps/kal-fcch_detector.Tpo .deps/kal-fcch_detector.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-kal.o -MD -MP -MF .deps/kal-kal.Tpo -c -o kal-kal.o test -f 'kal.cc' || echo './'kal.cc mv -f .deps/kal-kal.Tpo .deps/kal-kal.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-offset.o -MD -MP -MF .deps/kal-offset.Tpo -c -o kal-offset.o test -f 'offset.cc' || echo './'offset.cc mv -f .deps/kal-offset.Tpo .deps/kal-offset.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-usrp_source.o -MD -MP -MF .deps/kal-usrp_source.Tpo -c -o kal-usrp_source.o test -f 'usrp_source.cc' || echo './'usrp_source.cc mv -f .deps/kal-usrp_source.Tpo .deps/kal-usrp_source.Po g++ -DHAVE_CONFIG_H -I. -I.. -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -MT kal-util.o -MD -MP -MF .deps/kal-util.Tpo -c -o kal-util.o test -f 'util.cc' || echo './'util.cc mv -f .deps/kal-util.Tpo .deps/kal-util.Po g++ -I/usr/local/include/ -I/usr/include/libusb-1.0 -g -O2 -o kal kal-arfcn_freq.o kal-c0_detect.o kal-circular_buffer.o kal-fcch_detector.o kal-kal.o kal-offset.o kal-usrp_source.o kal-util.o -lfftw3 -L/usr/local/lib -lrtlsdr -lusb-1.0 -lrt make[2]: Leaving directory '/root/kalibrate-rtl/src' make[2]: Entering directory '/root/kalibrate-rtl' make[2]: Leaving directory '/root/kalibrate-rtl' make[1]: Leaving directory '/root/kalibrate-rtl' Making install in src make[1]: Entering directory '/root/kalibrate-rtl/src' make[2]: Entering directory '/root/kalibrate-rtl/src' /bin/mkdir -p '/usr/local/bin' /usr/bin/install -c kal '/usr/local/bin' make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/kalibrate-rtl/src' make[1]: Leaving directory '/root/kalibrate-rtl/src' make[1]: Entering directory '/root/kalibrate-rtl' make[2]: Entering directory '/root/kalibrate-rtl' make[2]: Nothing to be done for 'install-exec-am'. make[2]: Nothing to be done for 'install-data-am'. make[2]: Leaving directory '/root/kalibrate-rtl' make[1]: Leaving directory '/root/kalibrate-rtl' ...done

** System tweaks... *** ...done

** Setup /root/.stxAliases *** ...done

** Add .stxAliases command to /root/.bashrc *** ...done

** WiFi Access Point setup... *** Configuring wlan0 interface...

** Setup DHCP server for IP address management *** ...done

** Setup /etc/hostapd/hostapd.conf *** ...done

** Setup /etc/network/interfaces *** ...done

** Setup /usr/sbin/stratux-wifi.sh *** ...done

** Legacy wifiap cleanup *** ...done

** Copying motd file... *** ...done

** Copying fancontrol.py file... *** ...done

** Copying the hostapd_manager.sh utility... *** ...done

** Disable ntpd autostart... *** ...done

** Setup complete, don\'t forget to reboot! ***

lukepalmer commented 7 years ago

Hmm, the error is totally hidden unfortunately.

If you do

cd stratux make

Does it give you anything more interesting?

cpignol commented 7 years ago

Here is the output of make:

root@raspberrypi:~/stratux# make make xdump978 xdump1090 xgen_gdl90 fancontrol make[1]: Entering directory '/root/stratux' cd dump978 && make lib make[2]: Entering directory '/root/stratux/dump978' gcc -c -O2 -g -Wall -Werror -Ifec -fpic -DBUILD_LIB=1 dump978.c fec.c fec/decode_rs_char.c fec/init_rs_char.c gcc -shared -lm -o ../libdump978.so dump978.o fec.o decode_rs_char.o init_rs_char.o make[2]: Leaving directory '/root/stratux/dump978' sudo cp -f ./libdump978.so /usr/lib/libdump978.so git submodule update --init cd dump1090 && make make[2]: Entering directory '/root/stratux/dump1090' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/stratux/dump1090' go get -t -d -v ./main ./test ./godump978 ./uatparse ./sensors make[1]: go: Command not found Makefile:15: recipe for target 'xgen_gdl90' failed make[1]: [xgen_gdl90] Error 127 make[1]: Leaving directory '/root/stratux' Makefile:12: recipe for target 'all' failed make: [all] Error 2

lukepalmer commented 7 years ago

Oh. It's this. Probably PATH is broken somehow. Would appreciate contributions, otherwise can probably circle back to this over the next week or so.

go: Command not found

On Wed, May 24, 2017, 5:11 PM cpignol notifications@github.com wrote:

Here is the output of make:

root@raspberrypi:~/stratux# make

make xdump978 xdump1090 xgen_gdl90 fancontrol make[1]: Entering directory '/root/stratux' cd dump978 && make lib make[2]: Entering directory '/root/stratux/dump978' gcc -c -O2 -g -Wall -Werror -Ifec -fpic -DBUILD_LIB=1 dump978.c fec.c fec/decode_rs_char.c fec/init_rs_char.c gcc -shared -lm -o ../libdump978.so dump978.o fec.o decode_rs_char.o init_rs_char.o make[2]: Leaving directory '/root/stratux/dump978' sudo cp -f ./libdump978.so /usr/lib/libdump978.so git submodule update --init cd dump1090 && make make[2]: Entering directory '/root/stratux/dump1090'

make[2]: Nothing to be done for 'all'.

make[2]: Leaving directory '/root/stratux/dump1090' go get -t -d -v ./main ./test ./godump978 ./uatparse ./sensors

make[1]: go: Command not found

Makefile:15: recipe for target 'xgen_gdl90' failed

make[1]: *** [xgen_gdl90] Error 127

make[1]: Leaving directory '/root/stratux' Makefile:12: recipe for target 'all' failed make: *** [all] Error 2

You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/jpoirier/stratux-setup/pull/40#issuecomment-303852873, or mute the thread https://github.com/notifications/unsubscribe-auth/AExJAZTq23P0bssgL14hCWWIIvA6Wm4Tks5r9JzvgaJpZM4NTOM7 .

cpignol commented 7 years ago

For a test I had in the PATH the path of the go command and rerun the make command: The make failed

Makefile:15: recipe for target 'xgen_gdl90' failed make[1]: *** [xgen_gdl90] Error 1 make[1]: Leaving directory '/root/stratux' Makefile:12: recipe for target 'all' failed

Redo a test after a make clean and got the same problem

========================================================================= root@raspberrypi:~/stratux# make make xdump978 xdump1090 xgen_gdl90 fancontrol make[1]: Entering directory '/root/stratux' cd dump978 && make lib make[2]: Entering directory '/root/stratux/dump978' gcc -c -O2 -g -Wall -Werror -Ifec -fpic -DBUILD_LIB=1 dump978.c fec.c fec/decode_rs_char.c fec/init_rs_char.c gcc -shared -lm -o ../libdump978.so dump978.o fec.o decode_rs_char.o init_rs_char.o make[2]: Leaving directory '/root/stratux/dump978' sudo cp -f ./libdump978.so /usr/lib/libdump978.so git submodule update --init cd dump1090 && make make[2]: Entering directory '/root/stratux/dump1090' make[2]: Nothing to be done for 'all'. make[2]: Leaving directory '/root/stratux/dump1090' go get -t -d -v ./main ./test ./godump978 ./uatparse ./sensors github.com/gorilla/websocket (download) /root/go-path/src/github.com/westphae/goflying/ahrsweb/kalman_listener.go:10:2: local import "..//ahrs" in non-local package Makefile:15: recipe for target 'xgen_gdl90' failed make[1]: [xgen_gdl90] Error 1 make[1]: Leaving directory '/root/stratux' Makefile:12: recipe for target 'all' failed make: [all] Error 2