Open dagelf opened 2 years ago
Interesting. Our CI does successfully build and run tests on Sandstorm, so I think all the dependencies should line up with: https://github.com/sandstorm-io/sandstorm/blob/master/.github/workflows/build.yml though the GitHub runners do preinstall a few things.
I will see if I can get you an answer on this too, it's outside my personal expertise.
Can you post the full build log?
What happens if you run ./find-meteor-dev-bundle.sh
? Annoyingly, the build will not stop if that step fails; I made an attempt to #3385, but never fully debugged it.
I have had the same problem on Ubuntu 20.04. If I run ./find-meteor-dev-bundle.sh
, I get:
Finding meteor-tool installation (can take a few seconds)..../find-meteor-dev-bundle.sh: line 56: meteor: command not found
@tgupper, did you install meteor per https://docs.sandstorm.io/en/latest/install/#prerequisites ?
Oh, it seems like I had not, sorry for that! I now executed all of the following, as described in the prerequisites:
sudo apt-get install build-essential libcap-dev xz-utils zip \
unzip strace curl discount git python3 zlib1g-dev \
golang-go cmake strace flex bison locales
curl https://install.meteor.com/ | sh
The original problem still persists though:
install: node-capnp/node-capnp.ekam-manifest
✘ compile: node-capnp/capnp.cc
/ekam-provider/canonical/node-capnp/capnp.cc:29:10: fatal error: 'node.h' file not found
#include <node.h>
^~~~~~~~
1 error generated.
✘ jstest: node-capnp/capnp-test.js
full log: tmp/node-capnp/capnp-test.js.log
✘ test: kj/async-io-test
✘ test: kj/async-unix-xthread-test
✘ test: kj/mutex-test
make: *** [Makefile:271: tmp/.ekam-run] Error 1
user:~/sandstorm# ./find-meteor-dev-bundle.sh
Finding meteor-tool installation (can take a few seconds)...
You are attempting to run Meteor as the 'root' superuser. If you are
developing, this is almost certainly *not* what you want to do and will likely
result in incorrect file permissions. However, if you are running this command
in a build process (CI, etc.), or you are absolutely sure you know what you are
doing, set the METEOR_ALLOW_SUPERUSER environment variable or pass
--allow-superuser to proceed.
@tgupper can you post the full build log? sometimes things further back in the log can provide some insight.
Here you go. In addition to everything installed through the commands in the prerequisites, I now also installed glibc.
user:~/sandstorm# make
Finding meteor-tool installation (can take a few seconds)...
You are attempting to run Meteor as the 'root' superuser. If you are
developing, this is almost certainly *not* what you want to do and will likely
result in incorrect file permissions. However, if you are running this command
in a build process (CI, etc.), or you are absolutely sure you know what you are
doing, set the METEOR_ALLOW_SUPERUSER environment variable or pass
--allow-superuser to proceed.
Finding meteor-tool installation (can take a few seconds)...
You are attempting to run Meteor as the 'root' superuser. If you are
developing, this is almost certainly *not* what you want to do and will likely
result in incorrect file permissions. However, if you are running this command
in a build process (CI, etc.), or you are absolutely sure you know what you are
doing, set the METEOR_ALLOW_SUPERUSER environment variable or pass
--allow-superuser to proceed.
==== building sandstorm with ekam ====
learn: sandstorm/jstest.ekam-rule
learn: sandstorm/js.ekam-rule
learn: sandstorm/seccomp-bpf/bpf_asm.ekam-rule
learn: bpf_asm/lex-yacc.ekam-rule
learn: ekam-rules/include.ekam-rule
lex-yacc: bpf_asm/bpf_exp.l
lex-yacc: bpf_asm/bpf_exp.y
learn: ekam-rules/intercept.ekam-rule
learn: ekam-rules/compile.ekam-rule
learn: ekam-rules/test.ekam-rule
learn: ekam-rules/proto.ekam-rule
learn: ekam-rules/install.ekam-rule
compile: ekam-rules/intercept.c
compile: bpf_asm/bpf_asm.c
compile: sandstorm/seccomp-bpf/gen-clean-h.c
link: sandstorm/seccomp-bpf/gen-clean-h.o
compile: joyent-http/http_parser.c++
compile: libseccomp/arch-arm-syscalls.c
compile: libseccomp/arch-x32-syscalls.c
learn: capnp/capnpc.ekam-rule
compile: libseccomp/arch-s390x.c
capnpc: capnp/stream.capnp
capnpc: capnp/rpc-twoparty.capnp
capnpc: capnp/compat/json.capnp
capnpc: capnp/compiler/lexer.capnp
capnpc: capnp/compiler/grammar.capnp
capnpc: capnp/rpc.capnp
capnpc: capnp/schema.capnp
capnpc: capnp/c++.capnp
capnpc: capnp/persistent.capnp
compile: kj/async-win32.c++
compile: kj/async-win32-test.c++
compile: kj/async-win32-xthread-test.c++
compile: kj/memory.c++
compile: kj/filesystem-disk-win32.c++
compile: kj/async-io-win32.c++
lex-yacc: bpf_asm/bpf_exp.l
learn: sandstorm/seccomp-bpf/clean-header.ekam-rule
lex-yacc: bpf_asm/bpf_exp.y
compile: kj/thread-test.c++
compile: libseccomp/arch-x86-syscalls.c
compile: libseccomp/hash.c
compile: bpf_asm/bpf_exp.yacc.c
compile: libseccomp/arch-mips64.c
compile: libseccomp/arch-x86.c
compile: libseccomp/arch-mips.c
compile: libseccomp/arch-s390-syscalls.c
compile: libseccomp/arch-mips64-syscalls.c
compile: libseccomp/arch-parisc.c
compile: kj/table.c++
compile: libseccomp/arch-riscv64.c
compile: libseccomp/arch-s390.c
compile: libseccomp/arch-x32.c
compile: libseccomp/arch-ppc64.c
compile: libseccomp/arch-parisc-syscalls.c
compile: libseccomp/arch-ppc.c
compile: libseccomp/arch-syscall-check.c
compile: libseccomp/arch-mips64n32-syscalls.c
compile: libseccomp/arch.c
compile: libseccomp/arch-syscall-dump.c
compile: libseccomp/arch-riscv64-syscalls.c
compile: libseccomp/arch-parisc64.c
compile: libseccomp/gen_pfc.c
compile: libseccomp/arch-aarch64-syscalls.c
compile: libseccomp/helper.c
compile: libseccomp/arch-ppc64-syscalls.c
compile: libseccomp/system.c
compile: libseccomp/arch-s390x-syscalls.c
compile: libseccomp/arch-x86_64.c
compile: libseccomp/arch-aarch64.c
compile: libseccomp/gen_bpf.c
compile: libseccomp/arch-mips-syscalls.c
compile: libseccomp/arch-ppc-syscalls.c
compile: libseccomp/api.c
compile: libseccomp/arch-arm.c
compile: libseccomp/arch-mips64n32.c
compile: libseccomp/arch-x86_64-syscalls.c
compile: libseccomp/db.c
compile: capnp/compat/json.capnp.c++
compile: capnp/compat/websocket-rpc.c++
compile: capnp/compiler/type-id.c++
compile: capnp/compiler/lexer-test.c++
compile: capnp/compat/json.c++
compile: capnp/compiler/error-reporter.c++
compile: capnp/compiler/type-id-test.c++
compile: capnp/compiler/capnpc-capnp.c++
compile: capnp/compiler/grammar.capnp.c++
compile: capnp/compiler/capnp.c++
compile: capnp/compiler/lexer.capnp.c++
compile: capnp/compiler/node-translator.c++
compile: capnp/compiler/lexer.c++
compile: capnp/compiler/generics.c++
compile: capnp/compiler/evolution-test.c++
compile: capnp/compiler/module-loader.c++
compile: capnp/ez-rpc.c++
compile: capnp/schema.capnp.c++
compile: capnp/dynamic.c++
compile: capnp/endian-fallback-test.c++
compile: capnp/schema.c++
compile: capnp/dynamic-capability.c++
compile: capnp/compiler/parser.c++
compile: capnp/rpc.capnp.c++
compile: capnp/serialize.c++
compile: capnp/stringify.c++
compile: capnp/layout.c++
compile: capnp/c++.capnp.c++
compile: capnp/serialize-async.c++
compile: capnp/serialize-text.c++
compile: capnp/compiler/capnpc-c++.c++
compile: capnp/blob.c++
compile: capnp/schema-loader.c++
compile: capnp/schema-parser.c++
compile: capnp/rpc.c++
compile: capnp/list.c++
compile: capnp/capability.c++
compile: capnp/reconnect.c++
compile: capnp/any.c++
compile: capnp/serialize-packed.c++
compile: capnp/layout-test.c++
compile: capnp/membrane.c++
compile: capnp/endian-test.c++
compile: capnp/stream.capnp.c++
compile: capnp/arena.c++
compile: capnp/persistent.capnp.c++
compile: capnp/endian-reverse-test.c++
compile: capnp/message.c++
compile: sandstorm/send-fd.c++
compile: capnp/compiler/compiler.c++
compile: sandstorm/fuse-test-bind.c++
compile: capnp/rpc-twoparty.capnp.c++
compile: kj/timer.c++
compile: kj/string.c++
compile: kj/async-test.c++
compile: kj/table-test.c++
compile: kj/compat/gzip.c++
compile: kj/compat/tls.c++
compile: kj/compat/url.c++
compile: kj/compat/readiness-io-test.c++
compile: kj/compat/gzip-test.c++
compile: kj/compat/readiness-io.c++
compile: kj/compat/url-test.c++
compile: kj/compat/tls-test.c++
compile: kj/parse/char-test.c++
compile: kj/parse/common-test.c++
compile: sandstorm/util/http.c++
compile: kj/compat/http.c++
compile: kj/async-io-unix.c++
compile: kj/async-unix-test.c++
compile: kj/units-test.c++
compile: kj/common-test.c++
compile: kj/filesystem-disk-test.c++
compile: kj/std/iostream-test.c++
compile: kj/test-test.c++
compile: kj/compat/http-socketpair-test.c++
compile: kj/async-queue-test.c++
compile: kj/compat/http-test.c++
compile: kj/list-test.c++
compile: kj/string-test.c++
compile: kj/exception-test.c++
compile: kj/exception.c++
compile: kj/async-unix.c++
compile: kj/thread.c++
compile: kj/io.c++
compile: kj/list.c++
compile: kj/array.c++
compile: kj/encoding.c++
compile: kj/units.c++
compile: kj/common.c++
compile: kj/time.c++
compile: kj/debug.c++
compile: kj/map-test.c++
compile: kj/main.c++
compile: kj/filesystem-disk-unix.c++
compile: kj/async-io.c++
compile: kj/filesystem-disk-generic-test.c++
compile: kj/mutex.c++
compile: kj/test.c++
link: kj/test.o
compile: kj/mutex-test.c++
compile: kj/filesystem-test.c++
compile: kj/time-test.c++
link: kj/time-test.o
compile: kj/async-coroutine-test.c++
compile: kj/hash.c++
✔ test: kj/time-test
compile: kj/tuple-test.c++
compile: kj/io-test.c++
link: kj/tuple-test.o
✔ test: kj/tuple-test
compile: kj/async-unix-xthread-test.c++
compile: kj/threadlocal-test.c++
link: kj/threadlocal-test.o
✔ test: kj/threadlocal-test
compile: kj/test-helpers.c++
compile: kj/function-test.c++
link: kj/function-test.o
✔ test: kj/function-test
compile: kj/string-tree-test.c++
compile: kj/refcount-test.c++
link: kj/refcount-test.o
✔ test: kj/refcount-test
compile: kj/string-tree.c++
compile: kj/memory-test.c++
link: kj/memory-test.o
✔ test: kj/memory-test
compile: kj/source-location.c++
compile: bpf_asm/bpf_exp.l.lex.c
link: bpf_asm/bpf_asm.o
link: libseccomp/arch-syscall-check.o
link: libseccomp/arch-syscall-dump.o
compile: kj/encoding-test.c++
link: kj/encoding-test.o
✔ test: kj/encoding-test
link: capnp/compiler/capnp.o
link: capnp/compiler/capnpc-capnp.o
link: capnp/compiler/evolution-test.o
compile: kj/array-test.c++
link: capnp/compiler/capnpc-c++.o
link: kj/array-test.o
✔ test: kj/array-test
✔ test: capnp/compiler/evolution-test
link: kj/filesystem-disk-generic-test.o
link: kj/map-test.o
✔ test: kj/map-test
✔ test: kj/filesystem-disk-generic-test
link: kj/exception-test.o
✔ test: kj/exception-test
link: kj/list-test.o
link: kj/string-test.o
✔ test: kj/list-test
✔ test: kj/string-test
link: kj/compat/http-test.o
link: kj/async-queue-test.o
link: kj/compat/http-socketpair-test.o
✔ test: kj/async-queue-test
✔ test: kj/compat/http-test
link: kj/test-test.o
link: kj/std/iostream-test.o
✔ test: kj/compat/http-socketpair-test
✔ test: kj/std/iostream-test
✔ test: kj/test-test
link: kj/common-test.o
link: kj/units-test.o
link: kj/filesystem-disk-test.o
✔ test: kj/common-test
✔ test: kj/units-test
✔ test: kj/filesystem-disk-test
link: kj/parse/common-test.o
link: kj/async-unix-test.o
link: kj/parse/char-test.o
✔ test: kj/parse/common-test
✔ test: kj/parse/char-test
link: kj/compat/url-test.o
✔ test: kj/compat/url-test
✔ test: kj/async-unix-test
link: kj/compat/tls-test.o
link: kj/compat/gzip-test.o
link: kj/compat/readiness-io-test.o
compile: kj/async-io-test.c++
✔ test: kj/compat/readiness-io-test
✔ test: kj/compat/gzip-test
link: kj/async-io-test.o
link: kj/table-test.o
link: kj/async-test.o
✔ test: kj/async-test
✔ test: kj/compat/tls-test
link: kj/arena-test.o
link: kj/one-of-test.o
✔ test: kj/arena-test
link: kj/async-xthread-test.o
✔ test: kj/one-of-test
link: kj/filesystem-disk-old-kernel-test.o
link: kj/debug-test.o
✔ test: kj/filesystem-disk-old-kernel-test
✔ test: kj/async-xthread-test
✔ test: kj/debug-test
link: capnp/endian-test.o
✔ test: capnp/endian-test
link: capnp/endian-reverse-test.o
link: capnp/layout-test.o
✔ test: capnp/endian-reverse-test
link: capnp/endian-fallback-test.o
✔ test: capnp/endian-fallback-test
✔ test: capnp/layout-test
link: capnp/compiler/type-id-test.o
✔ test: capnp/compiler/type-id-test
link: kj/thread-test.o
link: capnp/compiler/lexer-test.o
✔ test: kj/thread-test
link: kj/async-unix-xthread-test.o
✔ test: capnp/compiler/lexer-test
link: kj/io-test.o
✔ test: kj/io-test
✔ test: kj/async-unix-xthread-test
link: kj/filesystem-test.o
link: kj/string-tree-test.o
link: kj/mutex-test.o
✔ test: kj/string-tree-test
✔ test: kj/filesystem-test
install: capnp/compiler/capnp.ekam-manifest
bpf_asm: sandstorm/seccomp-bpf/filter.s
capnpc: capnp/test-import.capnp
capnpc: capnp/test-import2.capnp
capnpc: capnp/compat/json-test.capnp
capnpc: capnp/compat/http-over-capnp.capnp
capnpc: capnp/test.capnp
capnpc: capnp/compat/byte-stream.capnp
capnpc: capnp/compat/json-rpc.capnp
capnpc: node-capnp/test.capnp
✔ test: kj/table-test
capnpc: sandstorm/appid-replacements-test.capnp
capnpc: sandstorm/email-impl.capnp
capnpc: sandstorm/backend.capnp
capnpc: sandstorm/supervisor.capnp
capnpc: sandstorm/test-app/test-app.capnp
compile: capnp/compat/json-rpc.capnp.c++
capnpc: sandstorm/identity-impl.capnp
capnpc: sandstorm/mime.capnp
capnpc: sandstorm/email.capnp
capnpc: sandstorm/api-session.capnp
capnpc: sandstorm/web-session.capnp
capnpc: sandstorm/web-publishing.capnp
capnpc: sandstorm/control-socket.capnp
capnpc: sandstorm/app-index/keybase-api.capnp
capnpc: sandstorm/appid-replacements.capnp
capnpc: sandstorm/app-index/submit.capnp
capnpc: sandstorm/app-index/app-index.capnp
capnpc: sandstorm/sandstorm-http-bridge.capnp
capnpc: sandstorm/update-tool.capnp
capnpc: sandstorm/activity.capnp
capnpc: sandstorm/hack-session.capnp
compile: sandstorm/app-index/keybase-api.capnp.c++
capnpc: sandstorm/persistentuiview.capnp
capnpc: sandstorm/package.capnp
capnpc: sandstorm/powerbox.capnp
compile: node-capnp/test.capnp.c++
capnpc: sandstorm/sandstorm-http-bridge-internal.capnp
capnpc: sandstorm/ip.capnp
capnpc: sandstorm/api-session-impl.capnp
capnpc: sandstorm/identity.capnp
capnpc: sandstorm/bridge-proxy.capnp
capnpc: sandstorm/payments.capnp
capnpc: sandstorm/util.capnp
capnpc: sandstorm/grain.capnp
compile: capnp/test.capnp.c++
✔ learn: capnp/bootstrap-test.ekam-rule
✔ learn: capnp/compiler/capnp-test.ekam-rule
compile: sandstorm/ip.capnp.c++
compile: capnp/test-import2.capnp.c++
compile: capnp/test-import.capnp.c++
compile: capnp/compat/http-over-capnp.capnp.c++
compile: capnp/compat/json-test.capnp.c++
compile: capnp/fuzz-test.c++
compile: capnp/compat/http-over-capnp.c++
compile: sandstorm/supervisor.c++
/ekam-provider/canonical/sandstorm/supervisor.c++:809:19: warning: 'readdir_r' is deprecated [-Wdeprecated-
declarations]
int error = readdir_r(dir, &entry, &eptr);
^
/usr/include/dirent.h:186:28: note: 'readdir_r' has been explicitly marked deprecated here
__nonnull ((1, 2, 3)) __attribute_deprecated__;
^
/usr/include/x86_64-linux-gnu/sys/cdefs.h:251:51: note: expanded from macro '__attribute_deprecated__'
# define __attribute_deprecated__ __attribute__ ((__deprecated__))
^
1 warning generated.
compile: capnp/compat/http-over-capnp-test.c++
compile: capnp/compat/json-test.c++
compile: capnp/compat/json-rpc-test.c++
compile: capnp/blob-test.c++
link: capnp/blob-test.o
✔ test: capnp/blob-test
compile: capnp/schema-parser-test.c++
link: capnp/schema-parser-test.o
✔ test: capnp/schema-parser-test
compile: capnp/encoding-test.c++
compile: capnp/any-test.c++
compile: capnp/message-test.c++
compile: capnp/serialize-packed-test.c++
compile: capnp/reconnect-test.c++
link: capnp/reconnect-test.o
✔ test: capnp/reconnect-test
compile: capnp/dynamic-test.c++
compile: capnp/afl-testcase.c++
compile: capnp/membrane-test.c++
link: capnp/membrane-test.o
✔ test: capnp/membrane-test
compile: capnp/test-util.c++
compile: capnp/stringify-test.c++
link: capnp/stringify-test.o
✔ test: capnp/stringify-test
compile: capnp/capability-test.c++
link: capnp/capability-test.o
✔ test: capnp/capability-test
compile: capnp/common-test.c++
link: capnp/common-test.o
✔ test: capnp/common-test
compile: capnp/llvm-fuzzer-testcase.c++
compile: capnp/ez-rpc-test.c++
link: capnp/ez-rpc-test.o
✔ test: capnp/ez-rpc-test
compile: capnp/schema-test.c++
link: capnp/schema-test.o
✔ test: capnp/schema-test
compile: capnp/rpc-twoparty-test.c++
link: capnp/rpc-twoparty-test.o
compile: capnp/orphan-test.c++
compile: capnp/canonicalize-test.c++
✔ test: capnp/rpc-twoparty-test
link: capnp/orphan-test.o
link: capnp/canonicalize-test.o
✔ test: capnp/canonicalize-test
✔ test: capnp/orphan-test
compile: capnp/serialize-test.c++
link: capnp/serialize-test.o
✔ test: capnp/serialize-test
compile: capnp/serialize-async-test.c++
compile: capnp/serialize-text-test.c++
link: capnp/serialize-async-test.o
link: capnp/serialize-text-test.o
compile: capnp/schema-loader-test.c++
✔ test: capnp/serialize-text-test
link: capnp/schema-loader-test.o
✔ test: capnp/serialize-async-test
✔ test: capnp/schema-loader-test
compile: capnp/compat/byte-stream.capnp.c++
compile: capnp/compat/websocket-rpc-test.c++
link: capnp/compat/websocket-rpc-test.o
✔ test: capnp/compat/websocket-rpc-test
compile: capnp/compat/json-rpc.c++
compile: capnp/compat/byte-stream-test.c++
compile: sandstorm/appid-replacements-test.capnp.c++
compile: sandstorm/email-impl.capnp.c++
compile: sandstorm/appid-replacements-test.c++
compile: sandstorm/backend.capnp.c++
compile: capnp/compat/byte-stream.c++
/ekam-provider/canonical/capnp/compat/byte-stream.c++:944:84: warning: missing field 'capCount' initializer [-
Wmissing-field-initializers]
auto req = capnpStream->writeRequest(MessageSize { 8 + size / sizeof(word) });
^
1 warning generated.
compile: capnp/rpc-test.c++
link: capnp/rpc-test.o
✔ test: capnp/rpc-test
compile: sandstorm/supervisor.capnp.c++
compile: sandstorm/backend.c++
compile: sandstorm/gateway.c++
compile: sandstorm/identity-impl.capnp.c++
compile: sandstorm/mime.capnp.c++
compile: sandstorm/email.capnp.c++
compile: sandstorm/api-session.capnp.c++
compile: sandstorm/test-app/test-app.c++
compile: sandstorm/run-bundle.c++
compile: sandstorm/app-index/keybase.c++
compile: sandstorm/app-index/app-index.c++
compile: sandstorm/web-session.capnp.c++
compile: sandstorm/web-publishing.capnp.c++
compile: sandstorm/control-socket.capnp.c++
compile: sandstorm/bridge-proxy.c++
compile: sandstorm/appid-replacements.capnp.c++
compile: sandstorm/app-index/indexer.c++
compile: sandstorm/appid-replacements.c++
compile: sandstorm/spk.c++
/ekam-provider/canonical/sandstorm/spk.c++:297:28: warning: 'parseDiskFile' is deprecated: Use parseFromDirectory()
instead. [-Wdeprecated-declarations]
auto schema = parser.parseDiskFile(filename, filename, importPathPtrs);
^
/ekam-provider/c++header/capnp/schema-parser.h:103:7: note: 'parseDiskFile' has been explicitly marked deprecated
here
CAPNP_DEPRECATED("Use parseFromDirectory() instead.");
^
/ekam-provider/c++header/capnp/common.h:63:26: note: expanded from macro 'CAPNP_DEPRECATED'
#define CAPNP_DEPRECATED KJ_DEPRECATED
^
/ekam-provider/c++header/kj/common.h:279:20: note: expanded from macro 'KJ_DEPRECATED'
__attribute__((deprecated(reason)))
^
/ekam-provider/canonical/sandstorm/spk.c++:1408:10: warning: variable 'hashThread' set but not used [-Wunused-but-
set-variable]
auto hashThread = new kj::Thread([&]() {
^
2 warnings generated.
compile: sandstorm/app-index/submit.capnp.c++
compile: sandstorm/web-session-bridge.c++
compile: sandstorm/update-tool.capnp.c++
compile: sandstorm/sandstorm-http-bridge.capnp.c++
compile: sandstorm/app-index/app-index.capnp.c++
compile: sandstorm/activity.capnp.c++
compile: sandstorm/update-tool.c++
compile: sandstorm/persistentuiview.capnp.c++
compile: sandstorm/package.capnp.c++
compile: sandstorm/test-app/test-app.capnp.c++
compile: sandstorm/spk-standalone.c++
compile: sandstorm/sandstorm-http-bridge.c++
compile: sandstorm/id-to-text-test.c++
compile: sandstorm/union-fs.c++
compile: sandstorm/powerbox.capnp.c++
compile: sandstorm/id-to-text.c++
compile: sandstorm/bridge-proxy.capnp.c++
compile: sandstorm/identity.capnp.c++
compile: sandstorm/api-session-impl.capnp.c++
compile: sandstorm/sandstorm-http-bridge-internal.capnp.c++
compile: sandstorm/util.capnp.c++
compile: sandstorm/payments.capnp.c++
compile: sandstorm/hack-session.capnp.c++
compile: sandstorm/smtp-proxy.c++
compile: sandstorm/util-test.c++
compile: sandstorm/cgroup2.c++
compile: sandstorm/fuse.c++
compile: sandstorm/sandbox.c++
compile: sandstorm/util.c++
link: capnp/dynamic-test.o
compile: sandstorm/backup.c++
✔ test: capnp/dynamic-test
link: capnp/serialize-packed-test.o
link: capnp/message-test.o
compile: sandstorm/grain.capnp.c++
✔ test: capnp/message-test
✔ test: capnp/serialize-packed-test
compile: sandstorm/config.c++
link: capnp/any-test.o
link: capnp/encoding-test.o
link: capnp/compat/json-test.o
link: capnp/compat/json-rpc-test.o
✔ test: capnp/any-test
✔ test: capnp/compat/json-test
✔ test: capnp/encoding-test
✔ test: capnp/compat/json-rpc-test
link: capnp/afl-testcase.o
link: capnp/fuzz-test.o
link: capnp/compat/byte-stream-test.o
link: capnp/compat/http-over-capnp-test.o
link: sandstorm/app-index/app-index.o
✔ test: capnp/compat/byte-stream-test
✔ test: capnp/compat/http-over-capnp-test
link: sandstorm/appid-replacements-test.o
link: sandstorm/test-app/test-app.o
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `operator()':
/ekam-provider/canonical/kj/async-io-unix.c++:1234: warning: Using 'getaddrinfo' in statically linked applications
requires at runtime the shared libraries from the glibc version used for linking
link: sandstorm/run-bundle.o
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `operator()':
/ekam-provider/canonical/kj/async-io-unix.c++:1234: warning: Using 'getaddrinfo' in statically linked applications
requires at runtime the shared libraries from the glibc version used for linking
link: sandstorm/spk-standalone.o
link: sandstorm/sandstorm-http-bridge.o
/usr/bin/ld: tmp/kj/async-io-unix.o: in function `operator()':
/ekam-provider/canonical/kj/async-io-unix.c++:1234: warning: Using 'getaddrinfo' in statically linked applications
requires at runtime the shared libraries from the glibc version used for linking
✔ test: sandstorm/appid-replacements-test
link: sandstorm/id-to-text-test.o
✔ test: sandstorm/id-to-text-test
link: sandstorm/fuse-test-bind.o
install: sandstorm/sandstorm.ekam-manifest
link: sandstorm/util-test.o
link: sandstorm/update-tool.o
✔ test: sandstorm/util-test
✔ test: capnp/fuzz-test
✘ install: node-capnp/node-capnp.ekam-manifest
node-capnp/capnp.node: not found
✘ test: kj/mutex-test
✘ jstest: node-capnp/capnp-test.js
full log: tmp/node-capnp/capnp-test.js.log
✘ compile: node-capnp/capnp.cc
/ekam-provider/canonical/node-capnp/capnp.cc:29:10: fatal error: 'node.h' file not found
#include <node.h>
^~~~~~~~
1 error generated.
✘ test: kj/async-io-test
make: *** [Makefile:271: tmp/.ekam-run] Error 1
Drat, I don't see anything obvious.
It should be pulling node.h out of the meteor dev bundle.
What does ./find-meteor-dev-bundle.sh
print? Does it point to a directory that contains a file include/node/node.h
?
When I execute ./find-meteor-dev-bundle.sh
, this is what I get:
user:~/sandstorm# ./find-meteor-dev-bundle.sh
Finding meteor-tool installation (can take a few seconds)...
You are attempting to run Meteor as the 'root' superuser. If you are
developing, this is almost certainly *not* what you want to do and will likely
result in incorrect file permissions. However, if you are running this command
in a build process (CI, etc.), or you are absolutely sure you know what you are
doing, set the METEOR_ALLOW_SUPERUSER environment variable or pass
--allow-superuser to proceed.
When I then execute ./find-meteor-dev-bundle.sh --allow-superuser
, I get:
Finding meteor-tool installation (can take a few seconds)...Please specify a package or release name to show information about it.
The file node.h exists in ./.meteor, but it doesn't seem like ./find-meteor-dev-bundle.sh
points to it.
Have you tried running the build as a non-root user?
Quoting tgupper (2022-09-29 04:30:28)
When I execute ./find-meteor-dev-bundle.sh, this is what I get: user:~/sandstorm# ./find-meteor-dev-bundle.sh Finding meteor-tool installation (can take a few seconds)... You are attempting to run Meteor as the 'root' superuser. If you are developing, this is almost certainly not what you want to do and will likely result in incorrect file permissions. However, if you are running this command in a build process (CI, etc.), or you are absolutely sure you know what you are doing, set the METEOR_ALLOW_SUPERUSER environment variable or pass --allow-superuser to proceed.
When I then execute ./find-meteor-dev-bundle.sh --allow-superuser, I get: Finding meteor-tool installation (can take a few seconds)...Please specify a pac kage or release name to show information about it.
The file node.h exists in ./.meteor, but it doesn't seem like ./find-meteor-dev-bundle.sh points to it.
-- Reply to this email directly, [1]view it on GitHub, or [2]unsubscribe. You are receiving this because you commented. Message ID: @.***>
Verweise
So I am seeing this issue, but it's intermittent. I did a test where the CI failed here, and then I re-ran CI and it succeeded.
Here's an example of it failing in CI: https://github.com/sandstorm-io/sandstorm/actions/runs/3034304360/jobs/4883247374
I have tried the build instructions on Ubuntu 18, 20, 22, Debian latest, and Fedora 34 and latest. On Fedora the meteor install fails. On all the others, a variant of this error pops up:
Which dependency is missing? I have tried a few, but couldn't find the right one.
The easiest way to get more people to help out is to at least make sure that the project can easily be built.