NativeScript / NativeScript/nativescript-cli

Intermittent build issues: "ld: can't open file, errno=13 file TNSWidgets" for architecture

Offen
#5,464 0 Kommentare 2 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen

Dieses Issue hat noch niemand übernommen.

Vorherrschende Sprache
JavaScript
Sterne
1.1k
Forks
204
Ø Merge
1 T. 9 Std.
Gemergte PRs (30 T.)
8

Beschreibung

Environment
Using VueJS

  • CLI: 7.0.12
  • Cross-platform modules:
  • Android Runtime: X - not installed we do not have to worry about this
  • iOS Runtime: 7.0.6
  • XCode Version: 12.2 (Was on 12.3 but downgraded and still saw issues)
  • Plugin(s): nativescript-custom-entitlements and a custom internal one that doesn't add any npm dependencies it's just a company managed CocoaPod.

Describe the bug
Build/Rebuild timeframe (Xcode experiences the same issue when executing a build). It happens when we are debugging it against the device and the app recompiles. I have seen this error for architecture arm64 or x86_64.

I keep getting variations of the following (with different architecture)

ld: can't open file, errno=13 file '<path_to_project>/node_modules/@nativescript/core/platforms/ios/TNSWidgets.framework/TNSWidgets' for architecture <architecture>
clang: error: linker command failed with exit code 1 (use -v to see invocation)

I see this when it's working (if that helps):

ld: warning: dylib (<path_to_project>/node_modules/@nativescript/core/platforms/ios/TNSWidgets.framework/TNSWidgets) was built for newer iOS version (9.2) than being linked (9.0)

Here is the verbose output when running build.
build_log.txt

Sometimes cleaning and rebuilding causes it to go away but it will then randomly show up again when the app re-builds during an ns run ios --device <DEVICE_ID>.

To Reproduce

  • ns build ios

It also appears intermittently when running:

  • ns run ios --device <DEVICE_ID>

Expected behavior

Shouldn't crash/fail intermittently. This seemed to have randomly started up mid last week.

Sample project
Just a base VueJS project that is taking advantage of the WebView. The only downside is I'm using an internal CocoaPod that is managed by another team at my company. Though this shouldn't be the primary issue.

Additional context
I've followed some of the bug tickets and most conclude to use Xcode 12.2 (I was on 12.3 and downgraded but still experienced the issue).

I also added VALIDATE_WORKSPACE = YES; to my build.xcconfig

Beitragsleitfaden

Beitragsleitfaden öffnen

Erste Schritte

  1. Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
  2. Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
  3. Forke das Repository und arbeite in einem Branch.
  4. Öffne einen Pull Request, der die Issue-Nummer nennt.

Rechercherichtung

Beginne mit der angehängten build_log.txt und reproduziere das Problem mit ns build ios oder ns run ios --device <DEVICE_ID>. Vergleiche die fehlgeschlagene und die erfolgreiche Linker-Ausgabe rund um den Pfad zu TNSWidgets.framework und überprüfe die hinzugefügte Einstellung VALIDATE_WORKSPACE = YES; in build.xcconfig. Als erledigt gilt die Identifizierung und Verhinderung des intermittierenden Linker-Fehlers über alle gemeldeten Architekturen hinweg.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
ios, javascript
Bereich
build-system, cli, mobile-dev
Issue-Typ
Bug
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Muss geklärt werden
Anfängerfreundlichkeit
25/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.