wose / satnogs-monitor

Terminal UI monitor for your SatNOGS ground station.
GNU General Public License v3.0
78 stars 5 forks source link

Error. Could not compile 'void'. #2

Closed thebaldgeek closed 4 years ago

thebaldgeek commented 4 years ago

Stock satnogs Pi image. Installed Rust nightly with no errors.

I get the following error when trying to run;

pi@raspberrypi:~/satnogs-monitor/monitor $ cargo +nightly run --release -- -s 702 Compiling semver-parser v0.7.0 Compiling rand_core v0.3.0 Compiling void v1.0.2 Compiling nodrop v0.1.12 Compiling stable_deref_trait v1.1.1 error: Could not compile void.

Caused by: process didn't exit successfully: rustc --crate-name void /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/void-1.0.2/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C metadata=2bc7409b1d624623 -C extra-filename=-2bc7409b1d624623 --out-dir /home/pi/satnogs-monitor/target/release/deps -L dependency=/home/pi/satnogs-monitor/target/release/deps --cap-lints allow (signal: 11, SIGSEGV: invalid memory reference) warning: build failed, waiting for other jobs to finish... error: Could not compile rand_core.

Caused by: process didn't exit successfully: rustc --crate-name rand_core /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/rand_core-0.3.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 --cfg 'feature="alloc"' --cfg 'feature="std"' -C metadata=7492a7b97c73ff82 -C extra-filename=-7492a7b97c73ff82 --out-dir /home/pi/satnogs-monitor/target/release/deps -L dependency=/home/pi/satnogs-monitor/target/release/deps --cap-lints allow (signal: 11, SIGSEGV: invalid memory reference) warning: build failed, waiting for other jobs to finish... error: Could not compile semver-parser.

Caused by: process didn't exit successfully: rustc --crate-name semver_parser /home/pi/.cargo/registry/src/github.com-1ecc6299db9ec823/semver-parser-0.7.0/src/lib.rs --error-format=json --json=diagnostic-rendered-ansi,artifacts --crate-type lib --emit=dep-info,metadata,link -C opt-level=3 -C metadata=d7e52c1217dea32c -C extra-filename=-d7e52c1217dea32c --out-dir /home/pi/satnogs-monitor/target/release/deps -L dependency=/home/pi/satnogs-monitor/target/release/deps --cap-lints allow (signal: 11, SIGSEGV: invalid memory reference)

wose commented 4 years ago

Hi @thebaldgeek,

thx for reporting this.

I also get those errors when building with the current 1.38.0-beta.5 (d097af105 2019-09-03). I haven't taken a closer look yet. You can however build the satnogs-monitor with the current stable release 1.37.0 (eae3437df 2019-08-13), which works just fine or use the debian package (check releases).

wose commented 4 years ago

I took another look and the issue occurs when compiling a crate as release with libc dependency on armv7. A workaround (tested with +beta) is to use:

RUSTFLAGS='-Ccodegen-units=1' cargo +nightly run --release -- -s 702

For more information check this: rust-lang/rust#62896

Remember to copy and edit the example config file as described in the README. This is a mandatory manual step at the moment. However if you don't need beta or nightly builds just use stable.

thebaldgeek commented 4 years ago

By using nightly and those RUSTFLAGS I am up and running. Thanks very much for your help. Looks amazing. Plan to use an old Ipad as a dashboard. Again, many thanks for your help.