Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

350
Views
Evite la vinculación automática de marcos en Swift

Tengo un proyecto de ejemplo que consta de un objetivo principal ( LinkerTests ) y un marco dinámico dependiente ( Dynamic ).

Si ejecuta el proyecto, verá la siguiente carga binaria dyld:

 dyld: loaded: {DerivedDataPath}/Build/Products/Debug-iphonesimulator/Dynamic.framework/Dynamic

Esta carga binaria de dyld ocurre debido a import Dynamic en AppDelegate.swift a pesar de lo siguiente:

  1. Link Binary With Libraries está vacío
  2. CLANG_MODULES_AUTOLINK se establece en falso

Lo que necesito lograr es evitar este enlace implícito automático. es posible? ¡Gracias por adelantado!


Pregunta relacionada: ¿Ya no necesitamos vincular el marco al proyecto XCode?

over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Aparentemente, esta característica se llama enlace automático. El compilador de Swift emite implícitamente banderas de enlazador adicionales que enlazan en todos los módulos de los que depende el código fuente ( import Dynamic ).

No hay forma de desactivar esto por completo. Pero hay un indicador de compilador privado que le permite deshabilitar el enlace automático para un solo marco: swiftc -disable-autolink-framework <framework> .

Algunas referencias: https://gist.github.com/zrzka/c89705ff634ea01aebc1 https://github.com/niw/automatic_linking_tool/blob/master/README.md

Estoy bastante seguro de que puede agregar -v a swiftc e imprimirá todas las invocaciones subyacentes como comandos. Con suerte, también podrá ver las invocaciones del enlazador.

Debe envolver la bandera privada dentro de dos banderas -Xfrontend para permitir su uso:

 OTHER_SWIFT_FLAGS = "-Xfrontend -disable-autolink-framework -Xfrontend Dynamic"

Para que esto surta efecto, aún debe configurar Link Frameworks Automatically No en Apple Clang - Idioma - Módulos.

over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!