kewlbear / Open3D-iOS

Swift package for using Open3D in iOS apps
MIT License
63 stars 34 forks source link

lack of some xcframeworks for release: 0.0.20221129003814 #45

Closed thomas-graphopti closed 2 months ago

thomas-graphopti commented 3 months ago

Hi,

Thank you for your comprehensive repository. However, I encountered some issues with the latest release, 0.0.20221129003814, due to missing dependencies. In contrast, the release 0.0.20220804014308 includes all the necessary xcframeworks.

The build failure report can be found here: Build Report.

The specific errors are as follows:

The archive from 'https://github.com/kewlbear/Open3D-iOS/releases/download/0.0.20221129003814/libOpen3D.a.xcframework.zip' required by binary target 'libOpen3D.a' is invalid. The archive from 'https://github.com/kewlbear/Open3D-iOS/releases/download/0.0.20221129003814/libOpen3D_3rdparty_liblzf.a.xcframework.zip' required by binary target 'libOpen3D_3rdparty_liblzf.a' is invalid. The archive from 'https://github.com/kewlbear/Open3D-iOS/releases/download/0.0.20221129003814/libOpen3D_3rdparty_qhullcpp.a.xcframework.zip' required by binary target 'libOpen3D_3rdparty_qhullcpp.a' is invalid. The archive from 'https://github.com/kewlbear/Open3D-iOS/releases/download/0.0.20221129003814/libOpen3D_3rdparty_qhull_r.a.xcframework.zip' required by binary target 'libOpen3D_3rdparty_qhull_r.a' is invalid. The archive from 'https://github.com/kewlbear/Open3D-iOS/releases/download/0.0.20221129003814/pybind.a.xcframework.zip' required by binary target 'pybind.a' is invalid. Failed downloading 'https://github.com/kewlbear/Open3D-iOS/releases/download/0.0.20221129003814/Assimp.xcframework.zip', which is required by binary target 'Assimp'. It appears that the archives for the mentioned dependencies are either invalid or missing. Could you please look into this issue?

Thank you for your assistance.

thomas-graphopti commented 3 months ago

preview This is the problem indicated in my integration. And my environment: MacOS 17.5 MacBook Pro M1 Xcode 15.4

import package with .package(url: "https://github.com/kewlbear/Open3D-iOS.git", .branch("main"))

thomas-graphopti commented 2 months ago

Temporary Solution for Integrating Dependencies:

  1. Clone the Open3D-iOS Example Repository: Start by cloning the repository from GitHub:

      https://github.com/kewlbear/Open3D-iOS.git
  2. Open the Project in Xcode: Once cloned, open the example project in Xcode and build its package dependencies to ensure everything compiles correctly.

  3. Locate Package Dependencies: After building, locate the package dependencies in the Finder. They are typically found under a /checkout/ folder within the project directory.

  4. Copy Dependencies to Your Project: Manually copy the entire contents of the /checkout/ folder to a designated folder within your own project's directory.

  5. Import Dependencies Locally: Use Xcode package manager to import these dependencies with local folder. When importing these packages into your project, ensure they are added in the following order to resolve any dependency requirements:

    • PythonKit
    • Python-iOS
    • LAPACKE-iOS
    • BLAS-LAPACK-AppStore-Workaround
    • NumPy-iOS
    • Open3D-iOS

    This structured approach will help you manage and integrate these dependencies into your project temporarily until a more permanent solution is implemented.