Coder Social home page Coder Social logo

Comments (7)

zanderso avatar zanderso commented on May 18, 2024 1

I suspect those locations are enough. As for clang_x64 and clang_arm64, there isn't any way to programmatically retrieve those locations from somewhere that I can think of off the top of my head, but those are the standard names for the output directory for targets that are cross-built during our GN build.

You might also walk the tree looking for paths that end in .../gen/SDKs/, and assume that the contents is the symlinks that need to be removed.

from flutter.

keyonghan avatar keyonghan commented on May 18, 2024

src/out/host_debug_unopt_arm64/gen/SDKs/MacOSX13.3.sdk is a symlink pointing to osx_sdk/xcode_14e300c/XCode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX13.3.sdk.

Too many levels of symbolic links happens due to some defult symlinks related to ruby from the xcode CIPD pacakge.

from flutter.

keyonghan avatar keyonghan commented on May 18, 2024

Have tried a couple of LED runs based on the drone build:

Failed:

  • Attempt1: remove symlink, copy target to src/out, copy directly from xcode/sdk (self.m.path['cache'].join('osx_sdk', 'xcode_14e300c', 'XCode.app', 'Contents', 'Developer', 'Platforms', 'MacOSX.platform', 'Developer', 'SDKs', 'MacOSX13.3.sdk') to build_dir.join('gen', 'SDKs', 'MacOSX13.3.sdk') - Too many levels of symbolic links
  • Attempt2: remove symlink, copy target to src/out, zip xcode/sdk - Not all files were readable
  • Attempt3: remove symlink, copy target to src/out, recreate symlink in src/out pointing to xcode/sdk - infra error when uploaded to cas
  • Attempt4: copy target to src/out with symlinks=True - infra error when uploaded to cas

Succeeded:

  • Attempt5: remove symlink, copy target to src/out, upload without MacOS_SDK - Pass

from flutter.

keyonghan avatar keyonghan commented on May 18, 2024

Following up with the above Attempt5. By removing symlink and upload to CAS without MacOS_SDK, it also passes on parent build:
Linux mac_unopt
Mac mac_ios_engine
Mac mac_host_engine

Since this affects only the digest uploaded to CAS, it would not affect artifacts uploaded to GCS and then should not affect Framework side.

from flutter.

keyonghan avatar keyonghan commented on May 18, 2024

To make it work, I have to manually remove the symlinks of MacOS SDK in three locations:

src/out/`build name`/gen/SDKs - host_debug_unopt & host_debug_unopt_arm64
src/out/`build name`/clang_x64/gen/SDKs - ios_debug_sim
src/out/`build name`/clang_arm64/gen/SDKs - ios_debug_sim_arm64_extension_safe

@zanderso Are these three locations enough? Is there any way to auto retrieve these three locations, I mean clang_x64/clang_arm64?

from flutter.

keyonghan avatar keyonghan commented on May 18, 2024

https://flutter-review.googlesource.com/c/recipes/+/53803 is a potential fix. But a better approach to move the MacOS SDK to a different location works. Closing.

from flutter.

github-actions avatar github-actions commented on May 18, 2024

This thread has been automatically locked since there has not been any recent activity after it was closed. If you are still experiencing a similar issue, please open a new bug, including the output of flutter doctor -v and a minimal reproduction of the issue.

from flutter.

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.