Coder Social home page Coder Social logo

Comments (3)

kpgalligan avatar kpgalligan commented on June 9, 2024

llvm adds absolute paths to files for debugging purposes. The kotlin compiler certainly does this, and as I understand it, so does Swift. That means, if you have a binary built on your machine, you can debug it. If you get a binary from another machine (with different source paths), you can't. There are ways to fix this, which we're looking into. Packaging and distributing binaries is a big internal focus right now (both cocoapods and SPM/xcframework).

What are you using for xcframework and SPM, by the way? Curious. I've gotten xcframeworks to build locally, but haven't tried SPM integration yet.

from xcode-kotlin.

TrevorStoneEpic avatar TrevorStoneEpic commented on June 9, 2024

Oh that makes sense. Thank you for the clarification. I'll be excited to see what's coming down the line!

I currently have a pretty simple gradle task that calls out to xcodebuild and passes in the framework and dsym files to generate the xcframework and puts it in a specific frameworks folder in the github repo. I then defined a top level Package.swift file that defines a binaryTarget. Then with our standard release flow/tagging it's available for our iOS project. My biggest frustration so far is how to switch from a remote package to using a local one (don't seem to have a good alternative for something like mavenLocal), but otherwise it is an extremely easy way to have a versioned package for iOS.

The project isn't open source, but if you would like to see examples of any of those steps I would be happy to post generic versions

from xcode-kotlin.

kpgalligan avatar kpgalligan commented on June 9, 2024

Closing this. We are internally building tools for publishing and additions to the Xcode plugin to allow debugging of code built on other machines (CI, etc). This will also include SPM publishing tools.

from xcode-kotlin.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.