mobile-nixos
mobile-nixos copied to clipboard
Can't built `examples/hello` for `oneplus-fajita` on x86_64-linux
when running nix-build examples/hello --argstr device oneplus-fajita -A outputs.default libhybris fails with:
`nix log /nix/store/551ny36jgm7qvnv3q5ln95c55cyy4yhf-libhybris-aarch64-unknown-linux-gnu-2019-12-02.drv`
stub linker.............: no
...skipping...
| ^~~
In file included from hooks.c:42:
/nix/store/038f6dc3ldcp64yild9jn8i5lj2gvw4q-aarch64-unknown-linux-gnu-gcc-14.2.1.20250322/aarch64-unknown-linux-gnu/sys-include/dirent.h:185:12: note: declared here
185 | extern int readdir_r (DIR *__restrict __dirp,
| ^~~~~~~~~
hooks.c: In function '_hybris_hook_scandirat':
hooks.c:1920:67: error: passing argument 4 of 'qsort' from incompatible pointer type [-Wincompatible-pointer-types]
1920 | qsort(result, nItems, sizeof(struct bionic_dirent *), compar);
| ^~~~~~
| |
| int (*)(const struct bionic_dirent **, const struct bionic_dirent **)
In file included from hooks.c:30:
/nix/store/038f6dc3ldcp64yild9jn8i5lj2gvw4q-aarch64-unknown-linux-gnu-gcc-14.2.1.20250322/aarch64-unknown-linux-gnu/sys-include/stdlib.h:971:34: note: expected '__compar_fn_t' {aka 'int (*)(const void *, const>
971 | __compar_fn_t __compar) __nonnull ((1, 4));
| ~~~~~~~~~~~~~~^~~~~~~~
hooks.c: In function '_hybris_hook_dladdr':
hooks.c:2556:12: error: returning 'int' from a function with return type 'void *' makes pointer from integer without a cast [-Wint-conversion]
2556 | return _android_dladdr(addr, info);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~
hooks.c: In function '_hybris_hook_android_set_application_target_sdk_version':
hooks.c:2612:5: error: implicit declaration of function 'android_set_application_target_sdk_version'; did you mean '_android_set_application_target_sdk_version'? [-Wimplicit-function-declaration]
2612 | android_set_application_target_sdk_version(target);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
| _android_set_application_target_sdk_version
hooks.c: At top level:
hooks.c:2986:5: warning: 'mallinfo' is deprecated [-Wdeprecated-declarations]
2986 | HOOK_DIRECT_NO_DEBUG(mallinfo),
| ^~~~~~~~~~~~~~~~~~~~
In file included from hooks.c:32:
/nix/store/038f6dc3ldcp64yild9jn8i5lj2gvw4q-aarch64-unknown-linux-gnu-gcc-14.2.1.20250322/aarch64-unknown-linux-gnu/sys-include/malloc.h:114:24: note: declared here
114 | extern struct mallinfo mallinfo (void) __THROW __MALLOC_DEPRECATED;
| ^~~~~~~~
hooks.c:2986:5: warning: 'mallinfo' is deprecated [-Wdeprecated-declarations]
2986 | HOOK_DIRECT_NO_DEBUG(mallinfo),
| ^~~~~~~~~~~~~~~~~~~~
/nix/store/038f6dc3ldcp64yild9jn8i5lj2gvw4q-aarch64-unknown-linux-gnu-gcc-14.2.1.20250322/aarch64-unknown-linux-gnu/sys-include/malloc.h:114:24: note: declared here
114 | extern struct mallinfo mallinfo (void) __THROW __MALLOC_DEPRECATED;
| ^~~~~~~~
hooks.c:3482:6: warning: conflicting types for 'android_set_application_target_sdk_version'; have 'void(uint32_t)' {aka 'void(unsigned int)'}
3482 | void android_set_application_target_sdk_version(uint32_t target)
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
hooks.c:2612:5: note: previous implicit declaration of 'android_set_application_target_sdk_version' with type 'void(uint32_t)' {aka 'void(unsigned int)'}
2612 | android_set_application_target_sdk_version(target);
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:610: libhybris_common_la-hooks.lo] Error 1
make[3]: Leaving directory '/build/source/hybris/common'
make[2]: *** [Makefile:696: all-recursive] Error 1
make[2]: Leaving directory '/build/source/hybris/common'
make[1]: *** [Makefile:430: all-recursive] Error 1
make[1]: Leaving directory '/build/source/hybris'
make: *** [Makefile:362: all] Error 2
As I understand the nixpkgs commit is pinned so there shouldn't be a problem there or am I mistaken?