Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[libvpx] It does not support iOS/armv[x] target #22416

Closed
franramirez688 opened this issue Jan 18, 2024 · 2 comments · Fixed by #22440
Closed

[libvpx] It does not support iOS/armv[x] target #22416

franramirez688 opened this issue Jan 18, 2024 · 2 comments · Fixed by #22440
Assignees

Comments

@franramirez688
Copy link
Contributor

Hello @kambala-decapitator do you have an evidence that arm64 iOS device is supported? A full build log without patches, or an link to documentation/issue pointing it? Could you please share with us in case positive?

sure, here's an attempt to build with the recipe from the current PR changes:

$ conan install -pr:b default -pr:h ~/dev/other/vcmi/CI/conan/ios-arm64 libvpx/1.13.1@ --build=missing -o '*:shared=True'
Conan 1 is on a deprecation path, please consider migrating to Conan 2
Configuration (profile_host):
[settings]
arch=armv8
build_type=Release
compiler=apple-clang
compiler.cppstd=11
compiler.libcxx=libc++
compiler.version=14
os=iOS
os.sdk=iphoneos
os.version=12.0
[options]
*:shared=True
[build_requires]
[env]
[conf]
tools.apple:enable_bitcode=False
tools.cmake.cmaketoolchain:generator=Ninja

Configuration (profile_build):
[settings]
arch=armv8
arch_build=armv8
build_type=Release
compiler=apple-clang
compiler.libcxx=libc++
compiler.version=14
os=Macos
os_build=Macos
[options]
[build_requires]
[env]

Installing package: libvpx/1.13.1
Requirements
    libvpx/1.13.1 from 'conancenter' - Cache
Packages
    libvpx/1.13.1:INVALID - Invalid

Cross-build from 'Macos:armv8' to 'iOS:armv8'
Installing (downloading, building) binaries...
ERROR: There are invalid packages (packages that cannot exist for this configuration):
libvpx/1.13.1: Invalid ID: iOS target platform only supports 'iphonesimulator' SDK option and x86/x86_64 architectures

but if I try to build only the first commit from ths PR, then it seems fine:

$ conan install -pr:b default -pr:h ~/dev/other/vcmi/CI/conan/ios-arm64 libvpx/1.13.1@ --build=missing -o '*:shared=True'
Conan 1 is on a deprecation path, please consider migrating to Conan 2
Configuration (profile_host):
[settings]
arch=armv8
build_type=Release
compiler=apple-clang
compiler.cppstd=11
compiler.libcxx=libc++
compiler.version=14
os=iOS
os.sdk=iphoneos
os.version=12.0
[options]
*:shared=True
[build_requires]
[env]
[conf]
tools.apple:enable_bitcode=False
tools.cmake.cmaketoolchain:generator=Ninja

Configuration (profile_build):
[settings]
arch=armv8
arch_build=armv8
build_type=Release
compiler=apple-clang
compiler.libcxx=libc++
compiler.version=14
os=Macos
os_build=Macos
[options]
[build_requires]
[env]

Installing package: libvpx/1.13.1
Requirements
    libvpx/1.13.1 from 'conancenter' - Cache
Packages
    libvpx/1.13.1:709452ee89b653c609c05da0fa9c3124f38df9d3 - Build
Build requirements
    yasm/1.3.0 from 'conancenter' - Cache
Build requirements packages
    yasm/1.3.0:3eb32b976fb0626f3c40a8b87ace72156aa44204 - Cache

Cross-build from 'Macos:armv8' to 'iOS:armv8'
Installing (downloading, building) binaries...
yasm/1.3.0: Already installed!
yasm/1.3.0: Appending PATH environment variable: /Users/andrey.filipenkov/.conan/data/yasm/1.3.0/_/_/package/3eb32b976fb0626f3c40a8b87ace72156aa44204/bin
libvpx/1.13.1: Applying build-requirement: yasm/1.3.0
libvpx/1.13.1: Copying sources to build folder
libvpx/1.13.1: Building your package in /Users/andrey.filipenkov/.conan/data/libvpx/1.13.1/_/_/build/709452ee89b653c609c05da0fa9c3124f38df9d3
libvpx/1.13.1: Generator txt created conanbuildinfo.txt
libvpx/1.13.1: Calling generate()
libvpx/1.13.1: Aggregating env generators
libvpx/1.13.1: Calling build()
libvpx/1.13.1: apply_conandata_patches(): No patches defined in conandata
libvpx/1.13.1: Calling:
 > "/Users/andrey.filipenkov/.conan/data/libvpx/1.13.1/_/_/build/709452ee89b653c609c05da0fa9c3124f38df9d3/src/configure" '--enable-shared' '--disable-static' '--prefix=/tmp_install' '--libdir=/tmp_install/lib' '--disable-examples' '--disable-unit-tests' '--disable-tools' '--disable-docs' '--enable-vp9-highbitdepth' '--as=yasm' 
  enabling shared
  disabling static
  disabling examples
  disabling unit_tests
  disabling tools
  disabling docs
  enabling vp9_highbitdepth
  enabling vp8_encoder
  enabling vp8_decoder
  enabling vp9_encoder
  enabling vp9_decoder
Configuring for target 'arm64-darwin22-gcc'
  enabling arm64
  enabling pic
  enabling neon
using compiler as linker
  enabling libyuv
Creating makefiles for arm64-darwin22-gcc libs
...

$ vtool -show-build /Users/andrey.filipenkov/.conan/data/libvpx/1.13.1/_/_/package/709452ee89b653c609c05da0fa9c3124f38df9d3/lib/libvpx.dylib
/Users/andrey.filipenkov/.conan/data/libvpx/1.13.1/_/_/package/709452ee89b653c609c05da0fa9c3124f38df9d3/lib/libvpx.dylib:
Load command 8
      cmd LC_BUILD_VERSION
  cmdsize 32
 platform IOS
    minos 12.0
      sdk 13.1
   ntools 1
     tool LD
  version 820.1

P.S. In the successful build we still have warnings that should be solved in conan-io/conan#15429

clang: warning: using sysroot for 'MacOSX' but targeting 'iPhone' [-Wincompatible-sysroot]
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libpthread.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libm.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/libSystem.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libcache.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libcommonCrypto.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libcompiler_rt.tbd) built for macOS
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libcopyfile.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libcorecrypto.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libdispatch.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libdyld.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libkeymgr.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libmacho.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libquarantine.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libremovefile.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_asl.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_blocks.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_c.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_collections.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_configuration.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_containermanager.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_coreservices.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_darwin.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_dnssd.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_featureflags.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_info.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_kernel.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_m.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_malloc.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_networkextension.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_notify.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_platform.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_pthread.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_sandbox.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_secinit.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_symptoms.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libsystem_trace.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libunwind.tbd) built for macOS/Mac Catalyst
ld: warning: building for iOS, but linking in .tbd file (/Applications/Xcode-14.2.0.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.1.sdk/usr/lib/system/libxpc.tbd) built for macOS/Mac Catalyst

Originally posted by @kambala-decapitator in #22263 (comment)

@kambala-decapitator
Copy link
Contributor

well, armv7 target is not supported either at the moment, i.e. any arch of iOS device

@franramirez688 franramirez688 changed the title [libvpx] It does not support iOS/armv8 target [libvpx] It does not support iOS/armv[x] target Jan 18, 2024
@franramirez688
Copy link
Contributor Author

franramirez688 commented Jan 19, 2024

Hi @kambala-decapitator

I just opened a PR that is meant to solve this issue #22440
Could you try it?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants