After update to Xcode 12 project would no longer build.
undefined symbols for architecture x86_64:
"_OBJC_CLASS_$_DDLog", referenced from:
objc-class-ref in Bouncer.o
ld: symbol(s) not found for architecture x86_64
DDLog is defined in CocoaLumberjack. which is a dependency of FrameworkA which is a dependency of FrameworkB (the Test Project)
Podspec extract FrameworkA:
Pod::Spec.new do |s|
[...]
s.default_subspec = 'Core'
s.subspec 'Core' do |co|
co.source_files = 'FrameworkA_Objc_DependencyIssue/Classes/**/*'
co.dependency 'CocoaLumberjack', '~> 3.1'
end
end
Podspec extract FrameworkB:
Pod::Spec.new do |s|
[...]
s.source_files = 'FrameworkB_Objc_DependencyIssue/Classes/**/*'
s.dependency 'FrameworkA_Objc_DependencyIssue/Core', '~> 0.1.2'
# s.dependency 'CocoaLumberjack' # Adding direkt dependency fixes problem!
end
This setup does compile with Xcode 11.