oneplus-enchilada cross-compilation failure [unbound]
Last bit of the log, from running nix log /nix/store/7rpnvb9ijlvj3pjfsd2gmhf7l4hiclsd-ruby-aarch64-unknown-linux-gnu-3.3.5.drv.
It looks like a rust warning killed it? Rust compiler too new I guess.
compiling time.c
compiling transcode.c
compiling util.c
compiling variable.c
compiling vm.c
compiling vm_backtrace.c
compiling vm_dump.c
compiling vm_sync.c
compiling vm_trace.c
compiling weakmap.c
compiling yjit.c
building Rust YJIT (release mode)
compiling ./missing/memcmp.c
compiling ./missing/crypt.c
compiling ./missing/setproctitle.c
compiling addr2line.c
compiling dmyext.c
compiling dmyenc.c
compiling ./main.c
generating aarch64-linux-fake.rb
generating encdb.h
encdb.h updated
creating verconf.h
verconf.h updated
compiling version.c
compiling prism/api_node.c
aarch64-linux-fake.rb updated
compiling prism/api_pack.c
compiling prism/diagnostic.c
compiling prism/encoding.c
compiling prism/extension.c
compiling prism/node.c
compiling prism/options.c
compiling prism/pack.c
compiling prism/prettyprint.c
compiling prism/regexp.c
compiling prism/serialize.c
compiling prism/token_type.c
compiling prism/util/pm_buffer.c
compiling prism/util/pm_char.c
compiling prism/util/pm_constant_pool.c
compiling prism/util/pm_list.c
compiling prism/util/pm_memchr.c
warning: this method call resolves to `<&Box<[T]> as IntoIterator>::into_iter` (due to backwards compatibility), but >
--> ./yjit/src/core.rs:982:49
|
982 | formatter.debug_list().entries(branches.into_iter()).finish()
| ^^^^^^^^^
|
= warning: this changes meaning in Rust 2024
= note: `#[warn(boxed_slice_into_iter)]` on by default
help: use `.iter()` instead of `.into_iter()` to avoid ambiguity
|
982 | formatter.debug_list().entries(branches.iter()).finish()
| ~~~~
help: or use `IntoIterator::into_iter(..)` instead of `.into_iter()` to explicitly iterate by value
|
982 | formatter.debug_list().entries(IntoIterator::into_iter(branches)).finish()
| ++++++++++++++++++++++++ ~
compiling prism/util/pm_newline_list.c
compiling prism/util/pm_state_stack.c
compiling prism/util/pm_string.c
compiling prism/util/pm_string_list.c
compiling prism/util/pm_strncasecmp.c
compiling prism/util/pm_strpbrk.c
compiling prism/prism.c
compiling prism_init.c
assembling coroutine/arm64/Context.S
compiling enc/ascii.c
compiling enc/us_ascii.c
compiling enc/unicode.c
compiling enc/utf_8.c
compiling enc/trans/newline.c
compiling builtin.c
generating enc.mk
compiling loadpath.c
making srcs under enc
make[1]: Entering directory '/build/ruby-3.3.5'
make[1]: Nothing to be done for 'srcs'.
make[1]: Leaving directory '/build/ruby-3.3.5'
generating transdb.h
transdb.h updated
warning: 1 warning emitted
touch yjit/target/release/libyjit.a
partial linking yjit/target/release/libyjit.a into yjit/target/release/libyjit.o
/nix/store/iy702bd9r8f6kiqsniwkbvjm43m794f1-aarch64-unknown-linux-gnu-binutils-2.43.1/bin/aarch64-unknown-linux-gnu-l>
/nix/store/iy702bd9r8f6kiqsniwkbvjm43m794f1-aarch64-unknown-linux-gnu-binutils-2.43.1/bin/aarch64-unknown-linux-gnu-l>
/nix/store/iy702bd9r8f6kiqsniwkbvjm43m794f1-aarch64-unknown-linux-gnu-binutils-2.43.1/bin/aarch64-unknown-linux-gnu-l>
make: *** [yjit/yjit.mk:48: yjit/target/release/libyjit.o] Error 1
make: *** Waiting for unfinished jobs....
backed up to commit 0e112e6485c20348570f319ce345d8043144cd5a (jan 19) since that didn't have a CI failure, but looks like the same problem.
See #771, from a quick gander at the log, looks like it's the related fix.
Oh, and re-reading your issue: you are likely looking at the output of a nix-build. This would interleaved log lines from builds running in parallel, if that is where that other warning is coming from...
... but it could also be from the parallel make run (make: *** Waiting for unfinished jobs....).
So be careful when interpreting logs, parallel builds are inherently messily logged.
For nix-build, using nix-store --read-log on the .drv that failed will show only that derivation's last attempt at building. Useful also to e.g. gist it all!
For make -jN? ¯\_(ツ)_/¯ There is literally nothing much other than carefully reading the logs, and learning the different projects. (Other than making it run with no parallelization)
Ok great, #771 seems to have gotten me past the ruby error. However now I'm stuck on the yacc one which may be unrelated to ruby.
The error from nix-build is:
e -DSRCDIR=. -g -O2 -flto -pthread -c util/alloc.c -fPIC -DPIC -o .libs/alloc.o
> yacc -d -o util/configparser.c ./util/configparser.y
> /nix/store/5mh7kaj2fyv8mk4sfq1brwxgc02884wi-bash-5.2p37/bin/bash: line 1: yacc: command not found
> make: *** [Makefile:514: util/configparser.h] Error 127
> make: *** Waiting for unfinished jobs....
For full logs, run 'nix log /nix/store/20s6mg06gqmj5n3dqygk6pwx8ivflp56-unbound-aarch64-unknown-linux-gnu-1.22.0.drv'.
And the "for full logs" command above yields:
nix log /nix/store/20s6mg06gqmj5n3dqygk6pwx8ivflp56-unbound-aarch64-unknown-linux-gnu-1.22.0.drv
Running phase: unpackPhase
@nix { "action": "setPhase", "phase": "unpackPhase" }
unpacking source archive /nix/store/0sy988hmxgja1qbc6d1cp1x65g187dvq-source
source root is source
Running phase: patchPhase
@nix { "action": "setPhase", "phase": "patchPhase" }
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Updating Autotools / GNU config script to a newer upstream version: ./config.sub
Updating Autotools / GNU config script to a newer upstream version: ./config.guess
Running phase: updateAutotoolsGnuConfigScriptsPhase
@nix { "action": "setPhase", "phase": "updateAutotoolsGnuConfigScriptsPhase" }
Updating Autotools / GNU config script to a newer upstream version: ./config.sub
Updating Autotools / GNU config script to a newer upstream version: ./config.guess
Running phase: configurePhase
@nix { "action": "setPhase", "phase": "configurePhase" }
fixing libtool script ./ltmain.sh
./configure
patching script interpreter paths in ./configure
./configure: interpreter directive changed from "#! /bin/sh" to "/nix/store/5mh7kaj2fyv8mk4sfq1brwxgc02884wi-bash-5.2>
configure flags: --disable-static --prefix=/nix/store/028i8k6rw1p2y2jswmfmmbi3940c5czz-unbound-aarch64-unknown-linux->
checking for aarch64-unknown-linux-gnu-gcc... aarch64-unknown-linux-gnu-gcc
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... yes
checking for suffix of object files... o
checking whether the compiler supports GNU C... yes
checking whether aarch64-unknown-linux-gnu-gcc accepts -g... yes
checking for aarch64-unknown-linux-gnu-gcc option to enable C11 features... none needed
checking for stdio.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for strings.h... yes
checking for sys/stat.h... yes
checking for sys/types.h... yes
checking for unistd.h... yes
checking for wchar.h... yes
checking for minix/config.h... no
checking for vfork.h... no
checking whether it is safe to define __EXTENSIONS__... yes
checking whether _XOPEN_SOURCE should be defined... no
checking for grep that handles long lines and -e... /nix/store/aap6cq56amx4mzbyxp2wpgsf1kqjcr1f-gnugrep-3.11/bin/grep
checking for an ANSI C-conforming const... yes
checking whether aarch64-unknown-linux-gnu-gcc supports -g... yes
checking whether aarch64-unknown-linux-gnu-gcc supports -O2... yes
checking for aarch64-unknown-linux-gnu-gcc... (cached) aarch64-unknown-linux-gnu-gcc
checking whether the compiler supports GNU C... (cached) yes
checking whether aarch64-unknown-linux-gnu-gcc accepts -g... (cached) yes
checking for aarch64-unknown-linux-gnu-gcc option to enable C11 features... (cached) none needed
checking aarch64-unknown-linux-gnu-gcc dependency flag... -MM
checking whether aarch64-unknown-linux-gnu-gcc supports -Werror... yes
checking whether aarch64-unknown-linux-gnu-gcc supports -Wall... yes
checking whether aarch64-unknown-linux-gnu-gcc supports -std=c99... yes
checking whether aarch64-unknown-linux-gnu-gcc supports -xc99... no
checking for getopt.h... yes
checking for time.h... yes
checking whether we need -std=c99 -D__EXTENSIONS__ -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_>
checking whether we need -std=c99 -D__EXTENSIONS__ -D_BSD_SOURCE -D_DEFAULT_SOURCE -D_POSIX_C_SOURCE=200112 -D_XOPEN_>
checking whether we need -std=c99 as a flag for aarch64-unknown-linux-gnu-gcc... no
checking whether we need -D_BSD_SOURCE -D_DEFAULT_SOURCE as a flag for aarch64-unknown-linux-gnu-gcc... no
checking whether we need -D_GNU_SOURCE as a flag for aarch64-unknown-linux-gnu-gcc... yes
checking whether we need -D_GNU_SOURCE -D_FRSRESGID as a flag for aarch64-unknown-linux-gnu-gcc... no
checking whether we need -D_POSIX_C_SOURCE=200112 as a flag for aarch64-unknown-linux-gnu-gcc... no
checking whether we need -D__EXTENSIONS__ as a flag for aarch64-unknown-linux-gnu-gcc... failed
checking if aarch64-unknown-linux-gnu-gcc supports -flto... yes
checking if aarch64-unknown-linux-gnu-gcc supports PIE... yes
checking if aarch64-unknown-linux-gnu-gcc supports -Wl,-z,relro,-z,now... yes
checking for inline... inline
checking whether the C compiler (aarch64-unknown-linux-gnu-gcc) accepts the "format" attribute... yes
checking whether the C compiler (aarch64-unknown-linux-gnu-gcc) accepts the "unused" attribute... yes
checking whether the C compiler (aarch64-unknown-linux-gnu-gcc) accepts the "weak" attribute... yes
checking whether the C compiler (aarch64-unknown-linux-gnu-gcc) accepts the "noreturn" attribute... yes
checking whether the C compiler (aarch64-unknown-linux-gnu-gcc) accepts the "fallthrough" attribute... yes
checking for flex... flex
checking for lex output file root... lex.yy
checking for lex library... none needed
checking whether yytext is a pointer... yes
checking for yylex_destroy... yes
checking for lex %option... yes
checking for bison... no
checking for byacc... no
checking for doxygen... no
checking for aarch64-unknown-linux-gnu-strip... aarch64-unknown-linux-gnu-strip
checking build system type... x86_64-unknown-linux-gnu
checking host system type... aarch64-unknown-linux-gnu
checking for aarch64-unknown-linux-gnu-ar... /nix/store/97hiadr3dgv6kj4w9mfx20ax09s8cyn3-aarch64-unknown-linux-gnu-gc>
checking how to print strings... printf
checking for a sed that does not truncate output... /nix/store/abm77lnrkrkb58z6xp1qwjcr1xgkcfwm-gnused-4.9/bin/sed
checking for egrep... /nix/store/aap6cq56amx4mzbyxp2wpgsf1kqjcr1f-gnugrep-3.11/bin/grep -E
checking for fgrep... /nix/store/aap6cq56amx4mzbyxp2wpgsf1kqjcr1f-gnugrep-3.11/bin/grep -F
checking for ld used by aarch64-unknown-linux-gnu-gcc... aarch64-unknown-linux-gnu-ld
checking if the linker (aarch64-unknown-linux-gnu-ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... aarch64-unknown-linux-gnu-nm
checking the name lister (aarch64-unknown-linux-gnu-nm) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 32768
checking how to convert x86_64-unknown-linux-gnu file names to aarch64-unknown-linux-gnu format... func_convert_file_>
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for aarch64-unknown-linux-gnu-ld option to reload object files... -r
checking for aarch64-unknown-linux-gnu-objdump... aarch64-unknown-linux-gnu-objdump
checking how to recognize dependent libraries... (cached) pass_all
checking for aarch64-unknown-linux-gnu-dlltool... no
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for aarch64-unknown-linux-gnu-ar... /nix/store/97hiadr3dgv6kj4w9mfx20ax09s8cyn3-aarch64-unknown-linux-gnu-gc>
checking for archiver @FILE support... @
checking for aarch64-unknown-linux-gnu-strip... (cached) aarch64-unknown-linux-gnu-strip
checking for aarch64-unknown-linux-gnu-ranlib... aarch64-unknown-linux-gnu-ranlib
checking for gawk... gawk
checking command to parse aarch64-unknown-linux-gnu-nm output from aarch64-unknown-linux-gnu-gcc object... failed
checking for sysroot... no
checking for a working dd... /nix/store/4s9rah4cwaxflicsk5cndnknqlk9n4p3-coreutils-9.5/bin/dd
checking how to truncate binary pipes... /nix/store/4s9rah4cwaxflicsk5cndnknqlk9n4p3-coreutils-9.5/bin/dd bs=4096 cou>
checking for aarch64-unknown-linux-gnu-mt... no
checking for mt... no
checking if : is a manifest tool... no
checking for dlfcn.h... yes
checking for objdir... .libs
checking if aarch64-unknown-linux-gnu-gcc supports -fno-rtti -fno-exceptions... no
checking for aarch64-unknown-linux-gnu-gcc option to produce PIC... -fPIC -DPIC
checking if aarch64-unknown-linux-gnu-gcc PIC flag -fPIC -DPIC works... yes
checking if aarch64-unknown-linux-gnu-gcc static flag -static works... no
checking if aarch64-unknown-linux-gnu-gcc supports -c -o file.o... yes
checking if aarch64-unknown-linux-gnu-gcc supports -c -o file.o... (cached) yes
checking whether the aarch64-unknown-linux-gnu-gcc linker (aarch64-unknown-linux-gnu-ld) supports shared libraries...>
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking for stdarg.h... yes
checking for stdbool.h... yes
checking for netinet/in.h... yes
checking for netinet/tcp.h... yes
checking for sys/param.h... yes
checking for sys/select.h... yes
checking for sys/socket.h... yes
checking for sys/un.h... yes
checking for sys/uio.h... yes
checking for sys/resource.h... yes
checking for arpa/inet.h... yes
checking for syslog.h... yes
checking for netdb.h... yes
checking for sys/wait.h... yes
checking for pwd.h... yes
checking for glob.h... yes
checking for grp.h... yes
checking for login_cap.h... no
checking for winsock2.h... no
checking for ws2tcpip.h... no
checking for endian.h... yes
checking for sys/endian.h... no
checking for libkern/OSByteOrder.h... no
checking for sys/ipc.h... yes
checking for sys/shm.h... yes
checking for ifaddrs.h... yes
checking for poll.h... yes
checking for net/if.h... yes
checking for TargetConditionals.h... no
checking for netioapi.h... no
checking for linux/net_tstamp.h... yes
checking for int8_t... yes
checking for int16_t... yes
checking for int32_t... yes
checking for int64_t... yes
checking for uint8_t... yes
checking for uint16_t... yes
checking for uint32_t... yes
checking for uint64_t... yes
checking for size_t... yes
checking for ssize_t... yes
checking how to run the C preprocessor... aarch64-unknown-linux-gnu-gcc -E
checking for uid_t in sys/types.h... yes
checking for pid_t... yes
checking for off_t... yes
checking for u_char... yes
checking for rlim_t... yes
checking for socklen_t... yes
checking for in_addr_t... yes
checking for in_port_t... yes
checking if memcmp compares unsigned... cross-compile no
checking size of time_t... 8
checking size of size_t... 8
checking for library containing inet_pton... none required
checking for library containing socket... none required
checking for working chown... yes
checking for fork... yes
checking for vfork... yes
checking for working fork... cross
configure: WARNING: result yes guessed because of cross compilation
checking for working vfork... (cached) yes
checking for _LARGEFILE_SOURCE value needed for large files... no
checking for special C compiler options needed for large files... no
checking for _FILE_OFFSET_BITS value needed for large files... no
checking whether we need -D_LARGEFILE_SOURCE=1 as a flag for aarch64-unknown-linux-gnu-gcc... no
checking if nonblocking sockets work... crosscompile(yes)
checking whether mkdir has one arg... no
checking for strptime... yes
checking whether strptime works... maybe
checking for GNU libc compatible malloc... no (crosscompile)
checking whether aarch64-unknown-linux-gnu-gcc is Clang... no
checking whether pthreads work with "-pthread" and "-lpthread"... yes
checking for joinable pthread attribute... PTHREAD_CREATE_JOINABLE
checking whether more special flags are required for pthreads... no
checking for PTHREAD_PRIO_INHERIT... yes
checking for pthread_spinlock_t... yes
checking for pthread_rwlock_t... yes
checking size of unsigned long... 8
checking size of pthread_t... 8
checking if -pthread unused during linking... no
checking for SSL... found in /nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-unknown-linux-gnu-3.3.2-dev
checking for EVP_sha256 in -lcrypto... yes
checking for openssl/ssl.h... yes
checking for openssl/err.h... yes
checking for openssl/rand.h... yes
checking if libssl needs libdl... no
checking if libssl needs -lcrypt32... no
checking for LibreSSL... no
checking for openssl/conf.h... yes
checking for openssl/engine.h... yes
checking for openssl/bn.h... yes
checking for openssl/dh.h... yes
checking for openssl/dsa.h... yes
checking for openssl/rsa.h... yes
checking for openssl/core_names.h... yes
checking for openssl/param_build.h... yes
checking for OPENSSL_config... yes
checking for EVP_sha1... yes
checking for EVP_sha256... yes
checking for EVP_sha512... yes
checking for FIPS_mode... no
checking for EVP_default_properties_is_fips_enabled... yes
checking for EVP_MD_CTX_new... yes
checking for OpenSSL_add_all_digests... no
checking for OPENSSL_init_crypto... yes
checking for EVP_cleanup... no
checking for ENGINE_cleanup... no
checking for ERR_load_crypto_strings... no
checking for CRYPTO_cleanup_all_ex_data... no
checking for ERR_free_strings... no
checking for RAND_cleanup... no
checking for DSA_SIG_set0... yes
checking for EVP_dss1... no
checking for EVP_DigestVerify... yes
checking for EVP_aes_256_cbc... yes
checking for EVP_EncryptInit_ex... yes
checking for HMAC_Init_ex... yes
checking for CRYPTO_THREADID_set_callback... no
checking for EVP_MAC_CTX_set_params... yes
checking for OSSL_PARAM_BLD_new... yes
checking for BIO_set_callback_ex... yes
checking for SSL_CTX_set_tmp_ecdh... no
checking for OPENSSL_init_ssl... yes
checking for SSL_CTX_set_security_level... yes
checking for SSL_set1_host... yes
checking for SSL_get0_peername... yes
checking for X509_VERIFY_PARAM_set1_host... yes
checking for SSL_CTX_set_ciphersuites... yes
checking for SSL_CTX_set_tlsext_ticket_key_evp_cb... yes
checking for SSL_CTX_set_alpn_select_cb... yes
checking for SSL_get0_alpn_selected... yes
checking for SSL_CTX_set_alpn_protos... yes
checking for SSL_get1_peer_certificate... yes
checking whether SSL_COMP_get_compression_methods is declared... yes
checking whether sk_SSL_COMP_pop_free is declared... yes
checking whether SSL_CTX_set_ecdh_auto is declared... yes
checking the return type of HMAC_Init_ex... int
checking for EVP_PKEY_set_type_str... yes
checking for EC_KEY_new... yes
checking if GOST works... maybe
checking for EVP_PKEY_fromdata... yes
checking whether OPENSSL_NO_EC is declared... no
checking whether NID_X9_62_prime256v1 is declared... yes
checking whether NID_secp384r1 is declared... yes
checking if openssl supports SHA2 and ECDSA with EVP... yes
checking whether NID_ED25519 is declared... yes
checking whether NID_ED448 is declared... yes
checking for libevent... found in /nix/store/q0b3vgl5cf70j79iy7gj6a222c27nvb6-libevent-aarch64-unknown-linux-gnu-2.1.>
checking for library containing clock_gettime... none required
checking for event.h... yes
checking whether EV_VERSION_MAJOR is declared... no
checking for library containing event_set... -levent
checking for event_base_free... yes
checking for event_base_once... yes
checking for event_base_new... yes
checking for event_base_get_method... yes
checking for ev_loop... no
checking for ev_default_loop... no
checking for event_assign... yes
checking whether evsignal_assign is declared... yes
checking for libexpat... found in /nix/store/9dhyzcl0iglgy6n40kjpi42j2rvic461-expat-aarch64-unknown-linux-gnu-2.6.4-d>
checking for expat.h... yes
checking whether XML_StopParser is declared... yes
checking for getaddrinfo... yes
checking for ioctlsocket... no
checking for daemon... yes
checking if daemon is deprecated... no
checking for struct sockaddr_un.sun_len... no
checking for struct in_pktinfo.ipi_spec_dst... yes
checking for htobe64... yes
checking for be64toh... yes
checking for library containing setusercontext... no
checking for tzset... yes
checking for sigprocmask... yes
checking for fcntl... yes
checking for getpwnam... yes
checking for endpwent... yes
checking for getrlimit... yes
checking for setrlimit... yes
checking for setsid... yes
checking for chroot... yes
checking for kill... yes
checking for chown... yes
checking for sleep... yes
checking for usleep... yes
checking for random... yes
checking for srandom... yes
checking for recvmsg... yes
checking for sendmsg... yes
checking for writev... yes
checking for socketpair... yes
checking for glob... yes
checking for initgroups... yes
checking for strftime... yes
checking for localtime_r... yes
checking for setusercontext... no
checking for _beginthreadex... no
checking for endservent... yes
checking for endprotoent... yes
checking for fsync... yes
checking for shmget... yes
checking for accept4... yes
checking for getifaddrs... yes
checking for if_nametoindex... yes
checking for poll... yes
checking for gettid... yes
checking for setresuid... yes
checking for setresgid... yes
checking whether inet_pton is declared... yes
checking whether inet_ntop is declared... yes
checking for inet_aton... yes
checking for inet_pton... yes
checking for inet_ntop... yes
checking for snprintf... yes
checking for strlcat... yes
checking for strlcpy... yes
checking for memmove... yes
checking for gmtime_r... yes
checking for isblank... yes
checking for explicit_bzero... yes
checking for reallocarray... yes
checking whether reallocarray is declared... yes
checking for arc4random... yes
checking for arc4random_uniform... yes
checking for ctime_r... yes
checking for strsep... yes
checking if make supports $< with implicit rule in scope... yes
configure: Stripping extension flags...
configure: creating ./config.status
config.status: creating Makefile
config.status: creating doc/example.conf
config.status: creating doc/libunbound.3
config.status: creating doc/unbound.8
config.status: creating doc/unbound-anchor.8
config.status: creating doc/unbound-checkconf.8
config.status: creating doc/unbound.conf.5
config.status: creating doc/unbound-control.8
config.status: creating doc/unbound-host.1
config.status: creating smallapp/unbound-control-setup.sh
config.status: creating dnstap/dnstap_config.h
config.status: creating dnscrypt/dnscrypt_config.h
config.status: creating contrib/libunbound.pc
config.status: creating contrib/unbound.socket
config.status: creating contrib/unbound.service
config.status: creating contrib/unbound_portable.service
config.status: creating config.h
config.status: executing libtool commands
configurePhase completed in 3 minutes 40 seconds
Running phase: buildPhase
@nix { "action": "setPhase", "phase": "buildPhase" }
build flags: -j8 SHELL=/nix/store/5mh7kaj2fyv8mk4sfq1brwxgc02884wi-bash-5.2p37/bin/bash
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
./libtool --tag=CC --mode=compile aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-op>
libtool: compile: aarch64-unknown-linux-gnu-gcc -I. -I/nix/store/my4kn79phl99aakvcpqihrzr0kcal0s0-openssl-aarch64-un>
yacc -d -o util/configparser.c ./util/configparser.y
/nix/store/5mh7kaj2fyv8mk4sfq1brwxgc02884wi-bash-5.2p37/bin/bash: line 1: yacc: command not found
make: *** [Makefile:514: util/configparser.h] Error 127
make: *** Waiting for unfinished jobs....
Attempting to go back through the commits with 'oneplus' in the description, I found 1302d1e7b4dd672f377e61a759f1fa3c2e5e3438 which builds. It doesn't actually have 'oneplus' in the description, but used it because of my flawed description search lol. Anyway may give that a go.
commit 1302d1e7b4dd672f377e61a759f1fa3c2e5e3438 (HEAD)
Author: Luflosi <[email protected]>
Date: Mon Mar 11 11:00:58 2024 +0100
pine64-pinephone: kernel 6.8.0-rc6 -> 6.8.0
Ed: did get this to install, but wouldn't boot completely. Got the mobile nixos splash and some bootup logs (that appear in various locations on the screen), but would get stuck and immediately reboot on power button press. Tried some different partitions and whatnot and now it won't boot into anything but the fastboot thing.
i guess this yacc thing is a regression, then.
I mean, yacc is packaged for nix, so can it just be put as an input for the failing derivation?
Wait, unbound already has bison as a dep, hmm.
Ah, possibly a cross-compilation issue? https://github.com/NixOS/nixpkgs/commit/a36d820bab68e43bf841e45ed168dc6f38bdf83c
Maybe worth reporting upstream.
Using #771 , as well as the following overlay, I'm able to build the image.
unbound = super.unbound.overrideAttrs (old: {
nativeBuildInputs = old.nativeBuildInputs ++ [
super.bison
super.flex
super.pkg-config
];
});
I managed to flash everything, I get the stage-1, the splashscreen, etc. but then it just freezes (I think), where the top of the screen looks like this:
The line that appears that changes, e.g. Created slice Slice /system/modprobe.
Is there anything I can try with this? Besides getting UART on this device, which doesn't look that fun :D
EDIT: For reference right before this, I did flash OnePlus6Oxygen_22.J.62_OTA_0620_all_2111252336_14afec75dd6fa.zip, to try to get the latest firmware on the device. Which I guess was a success.
looks similar to my experience; boot logs scrolling and then suddenly one cryptic line and a frozen ui.
I'll try making very sure that I have the newest firmware, and then trying again. Unsure if @samueldr have any guiding wisdom he can share along the way :D
No difference, stuck at the same point. I even ensured to flash the firmware + copy partitions as according to here https://wiki.lineageos.org/devices/enchilada/fw_update/
EDIT: they do list "somewhat" the same issue here https://wiki.postmarketos.org/wiki/OnePlus_6_(oneplus-enchilada)#Upgrading_firmware_without_Android_installed , however yes, I have a "blank" screen, but at the same time, I get the logo and stuff, it's "just" stage-2 that doesn't seem to want to play with me.
EDIT2: I tried out PostmarketOS. There stable releases work (plasma-mobile), the edge does not work (QUALCOM CrashDump Mode). Not that it's directly related, but.. idk, maybe. Grasping at straws.
EDIT3: I think I might get some wire, etc. and try to get UART on the device, to get a better idea what is happening.
EDIT4: Just to make this very explicit, the normal build (without the examples argument), I get the stage-1, I get the NixOS Mobile icon, I can even enter the "recovery" menu, with generations, etc. but it's just stage-2 when Plasma starts that doesn,t work. I just tried the hello example, and SOMETIMES I get a display, othertimes I don't. It never fully boots, as I get a INIT_EXCEPTION with Command failed... 'mount -t ext4 /dev/disk/by-label/MOBILE_HELLLO/mnt' (255) (System::CommandError).
EDIT5: It's only now that I read default.nix, where it states ** Note that an unconfigured image may appear to hang at boot. **, and I think what we're seeing is intended. :) - I also got past the mount error, by using the hello-but-squashfs, and flashing to the system partition, and not userdata.
EDIT6: I rented a VPS with arm64 arch, and build phosh, but I get the same as the hello-but-squashfs, where I have the logo, and it says "4 tasks are waiting on 6 unique dependencies", unsure what that is, and what it means. (hopefully you don't all get notifications for each edit. Please tell me if you do)
EDIT7: Eh, I need to be able to get the debug logs from the Rust application/startup manager, because I have no clue what services are not working etc. I'm unsure if it's because I'm building with squashfs that there are some issues. But this is also somewhat abusing this thread. Unbound is able to build with the overrides I provided.
So, after much trail and error. I can confirm doing the overlay that I provided in https://github.com/mobile-nixos/mobile-nixos/issues/785#issuecomment-2759383316 make it compile, and I've made a PR for it https://github.com/mobile-nixos/mobile-nixos/pull/789 , which is based on the ruby fix.
I've also gotten the hello application to work on my phone on development branch (commit 8956d72cf8fa9110dcc5fcbc537adee45a8014f5 right now), without too much work. I disabled adbd in examples/hello/configuration.nix, I applied the patch in #771 , as well as what I did in #789 (in theory only #789 is needed, as I base on #771). Then I have done what was suggested here https://github.com/mobile-nixos/mobile-nixos/issues/714#issuecomment-2764499300 , with flashing the vendor firmware.
Lastly, what REALLY screwed me over, and caused ALL these issues, was that I most likely had 2x partitions with the same name, like suggested here https://github.com/mobile-nixos/mobile-nixos/issues/512#issuecomment-1264725433 . So what I did was to boot into fastboot, and do.
fastboot erase --slot=all system
fastboot erase system_a
fastboot erase system_b
fastboot erase system
fastboot erase userdata
And then I have ONLY flashed to userdata from here on out. And yeah, a couple of those erase commands are excessive. Also, ENSURE that dtbo have been erased as well.
fastboot erase dtbo
fastboot erase dtbo_a
fastboot erase dtbo_b
And I guess all this should really be included in the documentation, since my comment has next to nothing to do with this build failure. sorry :)