-
For the second part, I was able to resolve the “jq: command not found” by running
nix-env -iA nixpkgs.jq
. Found this solution here: How to build chirpstack V4 - #4 by siasjack -
The “No rule to make target” errors were “solved(?)” by changing directory into the chirpstack directory where the make file defines them
I still cannot build though. The “cross” command isn’t in the path. Below is the actual output, but just running cross build --target x86_64-unknown-linux-musl
results in a command not found which I assume is where the below “No such file or directory” is coming from.
(Total rust newbie here if it wasn’t obvious)
[nix-shell:~/repositories/chirpstack]$ make dist
make[1]: Entering directory '/home/myusername/repositories/chirpstack'
cd api && make grpc-web
make[2]: Entering directory '/home/myusername/repositories/chirpstack/api'
cd grpc-web && make
make[3]: Entering directory '/home/myusername/repositories/chirpstack/api/grpc-web'
yarn install
yarn install v1.22.19
[1/4] Resolving packages...
success Already up-to-date.
Done in 0.09s.
mkdir -p common
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/common/common.proto
mkdir -p api
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/internal.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/user.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/tenant.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/application.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/device_profile.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/device_profile_template.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/device.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/gateway.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/multicast_group.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/api/relay.proto
./node_modules/grpc-tools/bin/protoc -I=../proto --js_out=import_style=commonjs:. --grpc-web_out=import_style=commonjs+dts,mode=grpcwebtext:. ../proto/google/api/*.proto
make[3]: Leaving directory '/home/myusername/repositories/chirpstack/api/grpc-web'
make[2]: Leaving directory '/home/myusername/repositories/chirpstack/api'
cd chirpstack && make dist
make[2]: Entering directory '/home/myusername/repositories/chirpstack/chirpstack'
# Keep these in this order, as aarch64 is based on Debian Buster (older),
# the others on Bullseye. For some build scripts we want to build against
# least recent LIBC.
#cross build --target aarch64-unknown-linux-musl --release
cross build --target x86_64-unknown-linux-musl --release
make[2]: cross: No such file or directory
make[2]: *** [Makefile:16: dist] Error 127
make[2]: Leaving directory '/home/myusername/repositories/chirpstack/chirpstack'
make[1]: *** [Makefile:6: dist] Error 2
make[1]: Leaving directory '/home/myusername/repositories/chirpstack'