Xcode 10 (iOS 12) не содержит libstdc ++ 6.0.9 - PullRequest
0 голосов
/ 05 июня 2018

Я загружаю новейший Xcode от Apple, но обнаружил, что не могу найти библиотеку с именем "libstdc ++ 6.0.9".cant search libstdc++

Ответы [ 14 ]

0 голосов
/ 28 июня 2019

Это будет работать.Не копируйте файлы .dylib из / usr / lib в simruntime.

Список файлов и путей для копирования из Xcode 9.4.1 в Xcode 10.2.1

A) Скопируйте файл:libstdc ++. 6.0.9.tbd и libstdc ++. 6.tbd и libstdc ++. tbd

из> Xcode9_41 / Xcode9_41.app / Содержание / Разработчик / Платформы / iPhoneSimulator.platform / Разработчик / SDKs / iPhoneSimulator.sdk / usr/ lib

to> /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib

B) Скопировать файл:libstdc ++. 6.0.9.dylib и libstdc ++. 6.dylib и libstdc ++. dylib

из> Xcode9_41 / Xcode9_41.app / Содержание / Разработчик / Платформы / iPhoneOS.platform / Разработчик / Библиотека / CoreSimulator / Профили / Среды выполнения/iOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib

to> /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/CoreSimulator/Profiles/Runtimes/iOS.simruntime / Содержание / Ресурсы / RuntimeRoot / USR / Lib

0 голосов
/ 12 ноября 2018

Я столкнулся с той же проблемой после обновления до xcode 10. Я решил эту проблему, загрузив libstdc ++. 6.0.9.tbd и libstdc ++. 6.tbd из https://github.com/Kila2/libstdc-.6.0.9.tbd.

, затем скопировалэти файлы в папку моего проекта.После этого я добавил эти библиотеки в связанные фреймворки и библиотеки, выполнив следующие действия: «Проект»> «Цель»> «Основные»> «Связанные фреймворки и библиотеки», нажмите (+)> нажмите «Добавить другие»> «Перейти к папке проекта в« Открыть файл »и выберите этибиблиотеки и добавить.

Теперь запустите проект, он будет работать отлично ..

0 голосов
/ 17 декабря 2018

Мне удалось решить проблему сборки, скопировав необходимые файлы с 9.4 до 10.1, как библиотеки платформы, так и среды выполнения.Но это решает только случаи с симулятором.Мое приложение по-прежнему зависает при запуске (заставка) при работе на физическом устройстве.

0 голосов
/ 22 октября 2018

Для меня -l "stdc ++. 6" был добавлен во время pod install Я нашел его в 'Pods / Target \ Support \ Files / Pods-SomeTarget / Pods-SomeTarget.debug.xcconfig'

Toрешить проблему, вы можете использовать обработчик post_install в Podfile:

post_install do |installer|
    installer.pods_project.targets.each do |target|
        if target.name == "Pods-SomeTarget”
            puts "Updating #{target.name} OTHER_LDFLAGS"
            target.build_configurations.each do |config|
                xcconfig_path = config.base_configuration_reference.real_path
                xcconfig = File.read(xcconfig_path)
                new_xcconfig = xcconfig.gsub('-l"stdc++.6" ', '')
                File.open(xcconfig_path, "w") { |file| file << new_xcconfig }
            end
        end
    end
end
0 голосов
/ 01 ноября 2018

Вы должны удалить libstdc ++ из других флагов компоновщика в вашем проекте xcode

Проверьте это: enter image description here

0 голосов
/ 26 сентября 2018

Для симулятора просто удалите libstdc ++. 6.0.9.tbd из связанных фреймворков и библиотек .

0 голосов
/ 11 октября 2018

Поскольку apple удаляет libstdc ++ в Xcode 10.0, поэтому, если вы хотите решить проблему, вы можете попробовать вручную скопировать файл в lib.

1. iPhoneOS и iPhoneSimulator file

скопируйте файл: libstdc++.6.0.9.tbd и libstdc++.6.tbd и libstdc++.tbd в:

  • / Приложения / Xcode.app / Содержание / Разработчик / Платформы / iPhoneOS.platform / Разработчик/SDKs/iPhoneOS.sdk/usr/lib/

  • / Приложения / Xcode.app / Содержание / Разработчик / Платформы / iPhoneSimulator.platform / Разработчик / SDKs / iPhoneSimulator.sdk / usr /lib /

2. iOS.simruntime file

скопировать файл: libstdc++.6.0.9.dylib и libstdc++.6.dylib и libstdc++.dylib в:

  • / Приложения / Xcode.app / Содержание / Разработчик / Платформы / iPhoneOS.platform / Разработчик / Библиотека / CoreSimulator / Профили / Среды выполнения / iOS.simruntime / Содержание / Ресурсы / RuntimeRoot / usr / lib
0 голосов
/ 18 сентября 2018

Скопируйте его из старого Xcode (9.4), который будет работать на физических устройствах iOS.Для симуляторов проблемы с Did find: /usr/lib/libstdc++.6.dylib: mach-o, but not built for iOS simulator.Похоже, Apple убрала поддержку совместимости для симулятора.Просто скачайте симулятор iOS 11.4 и его можно будет запустить на нем.

0 голосов
/ 20 сентября 2018

Xcode 10 отменяет библиотеку libstdc ++ со встроенной библиотекой lib, поэтому мы должны вручную скопировать файл в библиотеку.

скопировать файл: (libstdc ++. 6.0.9.tbd) и (libstdc ++.6.tbd) to:

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS.sdk/usr/lib

и

/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator.sdk/usr/lib 

(обратите внимание на различие «iPhoneOS» и «iPhoneSimulator»)

очистите xcode и перестройте его.

Здесь - это файл.

0 голосов
/ 27 июня 2018

Ответ Джереми Хаддлстона Секвойи дал мне указание решить эту проблему.Поэтому, прежде чем идти дальше, убедитесь, что вы прочитали его ответ.

Даже после обновления библиотеки C ++ в вашем проекте вы можете столкнуться с ошибкой компоновки, когда Xcode не может связать ваш проект с этой libstdc ++ lib.

Решение состоит в том, что если в структуру вашего проекта включена библиотека libstdc ++, она могла бы покраснеть, потому что Xcode не смог найти ссылку на нее.Если вы удалите эту запись из структуры проекта и вместо этого добавите новую библиотеку (libc ++), все будет хорошо.

...