mobile-nixos icon indicating copy to clipboard operation
mobile-nixos copied to clipboard

Can't built `examples/hello` for `oneplus-fajita` on x86_64-linux

Open Libadoxon opened this issue 7 months ago • 0 comments

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?

Libadoxon avatar May 29 '25 16:05 Libadoxon