Я изменил свой рабочий процесс GitHub Actions, который работает в macOS 13, чтобы указать Xcode 15.2. . Когда я создаю свой проект локально, я не получаю никаких изменений в файле проекта Xcode. Но когда я запускаю GitHub Actions, я всегда получаю следующие различия в файле проекта.
Код: Выделить всё
- OTHER_LDFLAGS = "$(inherited)";
+ OTHER_LDFLAGS = (
+ "$(inherited)",
+ "-Wl",
+ "-ld_classic",
+ );
Двоичные файлы, использующие символы со слабым определением, аварийно завершают работу во время выполнения на iOS 14/macOS. 12 лет и старше. Это затрагивает в первую очередь проекты C++ из-за широкого использования слабых символов. (114813650) (FB13097713).
Обходное решение: увеличьте минимальную цель развертывания до iOS 15, macOS 12, watchOS 8 или tvOS 15 или добавьте -Wl,-ld_classic в параметр сборки OTHER_LDFLAGS.
Поэтому я увеличил минимальное развертывание до iOS 16 и запустил снова, но изменения все еще вносятся.
Конечно , мне не нужны какие-либо локальные изменения в моем репозитории при запуске сборки, и я проверяю, что репозиторий git чист, прежде чем запускать сборку с помощью Fastlane. Изменение должно произойти еще до начала сборки, потому что проверка на чистоту репозитория — это первый шаг на моей полосе обгона. Мой рабочий процесс GitHub Actions использует setup-xcode для выбора Xcode 15.2 на GitHub-бегунах.
Я не вижу ничего конкретного по этому поводу в примечаниях к выпуску Xcode 15.2
Кто-нибудь знает, как это предотвратить? Почему это происходит только с GitHub Actions?
Я не знаю, возникает ли эта проблема также с GitHub Actions с Xcode 15.3, но эта версия Xcode работает только на Sonoma, и мы еще не совсем готов к переходу.
Подробнее здесь: https://stackoverflow.com/questions/784 ... oject-file
Мобильная версия