johnno1962 / injectionforxcode

Runtime Code Injection for Objective-C & Swift
MIT License
6.55k stars 565 forks source link

Swift can't use #133

Closed codwam closed 8 years ago

codwam commented 8 years ago

Xcode 7.3.1

* Learnt compile failed 

 at /Users/lh/Library/Application Support/Developer/Shared/Xcode/Plug-ins/InjectionPlugin.xcplugin/Contents/Resources/common.pm line 57.
 main::error('Learnt compile failed') called at /Users/lh/Library/Application Support/Developer/Shared/Xcode/Plug-ins/InjectionPlugin.xcplugin/Contents/Resources/injectSource.pl line 350
** Bundle build failed ***

johnno1962 commented 8 years ago

Is this https://github.com/johnno1962/injectionforxcode/issues/114?

codwam commented 8 years ago

clearing out DerivedData and rebuilding the project can't do it... The below is log:


Connection from: /Users/lh/Library/Developer/CoreSimulator/Devices/9CE9F81B-7326-4F15-8F43-82C14FA0EF0E/data/Containers/Data/Application/EBF24A43-2EC3-4C37-97C9-58C1C8E11196 x86_64 (65)
buidRoot: /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build
logDir: /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Logs/Build

Learnt compile: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -filelist /var/folders/nk/vw0v_1yd26s81zjb36y2608m0000gp/T/sources-47bdb3 -primary-file "/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/Source/Message Tab/MessageChat/Controller/MessageChatVC.swift" -target x86_64-apple-ios8.0 -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.3.sdk -I /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator -F /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator -F /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/ThirdParty -F /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/ThirdParty/geetest -enable-testing -g -import-objc-header /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/Koolink-Bridging-Header.h -module-cache-path /Users/lh/Library/Developer/Xcode/DerivedData/ModuleCache -D DEBUG -D COCOAPODS -D COCOAPODS -serialize-debugging-options -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-generated-files.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-own-target-headers.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-all-non-framework-target-headers.hmap -Xcc -ivfsoverlay -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/all-product-headers.yaml -Xcc -iquote -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-project-headers.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator/include -Xcc -I/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Pods/Headers/Public -Xcc -I/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Pods/Headers/Public/R.swift -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/DerivedSources/x86_64 -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/DerivedSources -Xcc -DDEBUG=1 -Xcc -DCOCOAPODS=1 -Xcc -working-directory/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios -emit-module-doc-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC~partial.swiftdoc -Onone -module-name Koolink -emit-module-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC~partial.swiftmodule -serialize-diagnostics-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.dia -emit-dependencies-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.d -emit-reference-dependencies-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.swiftdeps -o iOSInjectionProject/x86_64/injecting_class.o
sh: line 1: 70041 Segmentation fault: 11 /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -filelist /var/folders/nk/vw0v_1yd26s81zjb36y2608m0000gp/T/sources-47bdb3 -primary-file "/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/Source/Message Tab/MessageChat/Controller/MessageChatVC.swift" -target x86_64-apple-ios8.0 -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.3.sdk -I /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator -F /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator -F /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/ThirdParty -F /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/ThirdParty/geetest -enable-testing -g -import-objc-header /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/Koolink-Bridging-Header.h -module-cache-path /Users/lh/Library/Developer/Xcode/DerivedData/ModuleCache -D DEBUG -D COCOAPODS -D COCOAPODS -serialize-debugging-options -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-generated-files.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-own-target-headers.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-all-non-framework-target-headers.hmap -Xcc -ivfsoverlay -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/all-product-headers.yaml -Xcc -iquote -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-project-headers.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator/include -Xcc -I/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Pods/Headers/Public -Xcc -I/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Pods/Headers/Public/R.swift -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/DerivedSources/x86_64 -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/DerivedSources -Xcc -DDEBUG=1 -Xcc -DCOCOAPODS=1 -Xcc -working-directory/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios -emit-module-doc-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC~partial.swiftdoc -Onone -module-name Koolink -emit-module-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC~partial.swiftmodule -serialize-diagnostics-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.dia -emit-dependencies-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.d -emit-reference-dependencies-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.swiftdeps -o iOSInjectionProject/x86_64/injecting_class.o 2>&1

real 0m0.027s
user 0m0.004s
sys 0m0.021s
0 swift 0x000000010f40e66b llvm::sys::PrintStackTrace(llvm::raw_ostream&) + 43
1 swift 0x000000010f40d956 llvm::sys::RunSignalHandlers() + 70
2 swift 0x000000010f40eccf SignalHandler(int) + 287
3 libsystem_platform.dylib 0x00007fff8cccb52a _sigtramp + 26
4 libsystem_platform.dylib 000000000000000000 _sigtramp + 1932741360
5 swift 0x000000010d60ab09 readFileList(std::1::vector<std::1::basic_string<char, std::1::char_traits, std::1::allocator >, std::1::allocator<std::__1::basic_string<char, std::1::char_traits, std::_1::allocator > > >&, llvm::opt::Arg const, llvm::opt::Arg const_) + 153
6 swift 0x000000010d605759 swift::CompilerInvocation::parseArgs(llvm::ArrayRef<char const>, swift::DiagnosticEngine&, llvm::StringRef) + 1273
7 swift 0x000000010d15cf3b frontend_main(llvm::ArrayRef<char const>, char const, void) + 907
8 swift 0x000000010d1590ac main + 1932
9 libdyld.dylib 0x00007fff8c4005ad start + 1
Stack dump:
0. Program arguments: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/swift -frontend -c -filelist /var/folders/nk/vw0v_1yd26s81zjb36y2608m0000gp/T/sources-47bdb3 -primary-file /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/Source/Message Tab/MessageChat/Controller/MessageChatVC.swift -target x86_64-apple-ios8.0 -enable-objc-interop -sdk /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator9.3.sdk -I /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator -F /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator -F /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/ThirdParty -F /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/ThirdParty/geetest -enable-testing -g -import-objc-header /Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Koolink/Koolink-Bridging-Header.h -module-cache-path /Users/lh/Library/Developer/Xcode/DerivedData/ModuleCache -D DEBUG -D COCOAPODS -D COCOAPODS -serialize-debugging-options -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/swift-overrides.hmap -Xcc -iquote -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-generated-files.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-own-target-headers.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-all-non-framework-target-headers.hmap -Xcc -ivfsoverlay -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/all-product-headers.yaml -Xcc -iquote -Xcc /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Koolink-project-headers.hmap -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Products/Debug-iphonesimulator/include -Xcc -I/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Pods/Headers/Public -Xcc -I/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios/Pods/Headers/Public/R.swift -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/DerivedSources/x86_64 -Xcc -I/Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/DerivedSources -Xcc -DDEBUG=1 -Xcc -DCOCOAPODS=1 -Xcc -working-directory/Users/lh/Desktop/ØÄ•ŁÄ¬/koolink-ios -emit-module-doc-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC~partial.swiftdoc -Onone -module-name Koolink -emit-module-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC~partial.swiftmodule -serialize-diagnostics-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.dia -emit-dependencies-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.d -emit-reference-dependencies-path /Users/lh/Library/Developer/Xcode/DerivedData/Koolink-dovtjdrnykthingjbpwzyrndvsxk/Build/Intermediates/Koolink.build/Debug-iphonesimulator/Koolink.build/Objects-normal/x86_64/MessageChatVC.swiftdeps -o iOSInjectionProject/x86_64/injectingclass.o 

* Learnt compile failed 

 at /Users/lh/Library/Application Support/Developer/Shared/Xcode/Plug-ins/InjectionPlugin.xcplugin/Contents/Resources/common.pm line 57.
 main::error('Learnt compile failed') called at /Users/lh/Library/Application Support/Developer/Shared/Xcode/Plug-ins/InjectionPlugin.xcplugin/Contents/Resources/injectSource.pl line 350
**_ Bundle build failed ***



johnno1962 commented 8 years ago

You have more that 128 files in your target. I’m afraid injection won’t work for your project.

codwam commented 8 years ago

Is that limit for 128 files in Swift for injection ??

johnno1962 commented 8 years ago

more than 128 Swift Sources in a target, injection will not work

codwam commented 8 years ago

Very thanks

kaustubhkabra commented 7 years ago

@johnno1962 Is this still an open issue ? My project has 1200 files, out of which about 200 would be swift. Any quicker workaround apart from creating multiple targets ?