microsoft / WinObjC

Objective-C for Windows
MIT License
6.24k stars 810 forks source link

Tons upon tons of missing iOS SDK class implementations (linker errors) #178

Open mlfarrell opened 9 years ago

mlfarrell commented 9 years ago

Got it to compile! Linking is another story...

I know you guys likely know about most of these, just making sure the obscure ones are caught as well since my app depends on all of these. Removed duplicates the best I could

symbol ___objc_class_name_UIPasteboard
symbol ___objc_class_name_UIPopoverController
symbol ___objc_class_name_NSLocale
symbol _class_registerAlias_np
symbol __OBJC_CLASS_NSLocale
symbol _NSFontAttributeName
symbol __OBJC_CLASS_UIPasteboard
symbol __OBJC_CLASS_UIPopoverController
symbol _SecItemCopyMatching 
symbol _SecItemDelete 
symbol _SecItemUpdate 
symbol _SecItemAdd 
symbol _kSecClass 
symbol _kSecClassGenericPassword 
symbol _kSecAttrGeneric 
symbol _kSecMatchLimit 
symbol _kSecMatchLimitOne 
symbol _kSecReturnAttributes 
symbol _kSecAttrAccount 
symbol _kSecAttrAccount
symbol _kSecAttrAccount
symbol _kSecValueData 
symbol _kSecValueData
symbol _kSecValueData
symbol _kSecReturnData 
symbol _kSecAttrAccessGroup 
symbol ___objc_class_name_NSPropertyListSerialization
symbol __imp__CFStringConvertIANACharSetNameToEncoding 
symbol __imp__CFStringConvertEncodingToNSStringEncoding 
symbol __imp__CGImageCreateWithJPEGDataProvider 
symbol __imp__NSURLErrorFailingURLErrorKey
symbol __imp__NSLocalizedFailureReasonErrorKey
symbol ___objc_class_name_NSOutputStream
symbol __OBJC_CLASS_NSOutputStream
symbol ___objc_class_name_UIRotationGestureRecognizer
symbol ___objc_class_name_UILongPressGestureRecognizer
symbol __OBJC_CLASS_UIRotationGestureRecognizer
symbol __OBJC_CLASS_UILongPressGestureRecognizer 
symbol __imp__UIApplicationWillResignActiveNotification 
symbol __imp__UIApplicationDidBecomeActiveNotification
symbol __imp__UIApplicationWillEnterForegroundNotification 
symbol ___objc_class_name_NSLayoutConstraint
symbol __NSDictionaryOfVariableBindings
symbol __OBJC_CLASS_NSLayoutConstraint
symbol ___objc_class_name_UIImagePickerController
symbol __OBJC_CLASS_UIImagePickerController 
symbol _UIImagePickerControllerOriginalImage 
symbol ___objc_class_name_NSMutableParagraphStyle
symbol __OBJC_CLASS_NSMutableParagraphStyle
symbol _NSParagraphStyleAttributeName 
symbol _NSForegroundColorAttributeName 
symbol _glDeleteVertexArraysOES
symbol _glGenVertexArraysOES
symbol _glBindVertexArrayOES
symbol ___objc_class_name_CAGradientLayer
symbol ___objc_class_name_UIInterpolatingMotionEffect
symbol ___objc_class_name_UIMotionEffectGroup
symbol __imp__kCAFillModeForwards 
symbol __OBJC_CLASS_UIInterpolatingMotionEffect 
symbol __OBJC_CLASS_UIMotionEffectGroup 
symbol ___objc_class_name_MFMailComposeViewController
symbol ___objc_class_name_UIDocumentInteractionController
symbol _CGImageSourceCreateWithURL 
symbol _CGImageSourceCopyPropertiesAtIndex 
symbol __imp__CFNumberGetValue 
symbol __OBJC_CLASS_MFMailComposeViewController 
symbol _kCGImagePropertyPixelWidth 
symbol _kCGImagePropertyPixelHeight 
symbol __OBJC_CLASS_UIDocumentInteractionController
symbol _NSFileSize
symbol __imp__CFRunLoopGetMain 
symbol __imp__UIEdgeInsetsZero 
symbol ___objc_class_name_NSURLProtocol
symbol __imp__UIApplicationLaunchOptionsURLKey 
symbol __imp__UIApplicationLaunchOptionsSourceApplicationKey 
symbol __imp__UIApplicationLaunchOptionsAnnotationKey 
symbol __OBJC_CLASS_NSURLProtocol 
symbol __imp__UIBackgroundTaskInvalid
symbol ___objc_class_name_NSCountedSet
symbol __OBJC_CLASS_NSCountedSet
symbol ___objc_class_name_NSRegularExpression
symbol __OBJC_CLASS_NSRegularExpression
symbol _NSFileModificationDate
symbol ___objc_class_name_NSProcessInfo
symbol __OBJC_CLASS_NSProcessInfo 
symbol ___objc_class_name_NSAttributedString
symbol _CTFontGetGlyphsForCharacters 
symbol _CTFontCreatePathForGlyph 
symbol _CTLineCreateWithAttributedString
symbol _CTLineGetGlyphRuns 
symbol _CTRunGetAttributes 
symbol _CTRunGetGlyphCount 
symbol _CTRunGetGlyphs 
symbol _CTRunGetPositions 
symbol _CTFontCreateWithName
symbol __imp__CGPathApply 
symbol _kCTFontAttributeName
symbol __OBJC_CLASS_NSAttributedString 
symbol _NSStreamFileCurrentOffsetKey 
symbol _NSStreamDataWrittenToMemoryStreamKey
symbol __imp__UIApplicationDidReceiveMemoryWarningNotification
symbol ___objc_class_name_NSInputStream
symbol __imp__CFStringTransform 
symbol __imp__kCFBundleVersionKey 
symbol __imp__kCFBundleExecutableKey 
symbol __imp__kCFBundleIdentifierKey 
symbol _NSKeyValueChangeNewKey 
symbol ___objc_class_name_NSMapTable
symbol ___objc_class_name_NSPredicate
symbol __OBJC_CLASS_NSMapTable
symbol __OBJC_CLASS_NSPredicate
symbol ___objc_class_name_AFSecurityPolicy
symbol __OBJC_CLASS_AFSecurityPolicy
symbol ___objc_class_name_NSMachPort
symbol ___objc_class_name_NSURLCredential
symbol __OBJC_CLASS_NSMachPort 
symbol _NSURLAuthenticationMethodServerTrust 
symbol ___objc_class_name_NSMutableOrderedSet
symbol __OBJC_CLASS_NSMutableOrderedSet 
symbol __imp__CGPathContainsPoint
symbol _NSGregorianCalendar 
symbol ___objc_class_name_NSHashTable
symbol __OBJC_CLASS_NSHashTable 
symbol __imp__CGSizeApplyAffineTransform
symbol __imp__UIApplicationDidEnterBackgroundNotification 
symbol _CGPathCreateCopyByTransformingPath
symbol ___objc_class_name_NSMutableAttributedString
symbol _CTFramesetterCreateWithAttributedString 
symbol _CTFramesetterSuggestFrameSizeWithConstraints 
symbol _CTLineGetTypographicBounds 
symbol __OBJC_CLASS_NSMutableAttributedString 
symbol __imp__CGPathGetCurrentPoint 
symbol _CGPathAddRelativeArc 

I'm actually amazed it has gotten this far. This project is very far along compared to where I thought it would be w.r.t compiling such a complex app. Keep up the good work! (you all deserve raises) Sorry for flooding your issues forum. You won't hear from me again until next WinObjc release.

ryjen commented 8 years ago

I have the same problem, but at least its compiling after many ifdef's on a large app. I'm starting to think it might be the project settings but I am at a loss.

symbol _objc_class_name_NSPropertyListSerialization symbol ___objc_class_name_NSInputStream symbol impCFBundleGetValueForInfoDictionaryKey symbol impCFBundleGetMainBundle
symbol
impkCFBundleVersionKey symbol impkCFBundleIdentifierKey symbol impNSLocalizedFailureReasonErrorKey symbol _NSFileSize symbol impNSURLErrorFailingURLErrorKey
symbol _NSStreamDataWrittenToMemoryStreamKey
symbol _class_getClassMethod symbol _imp_implementationWithBlock symbol _method_getTypeEncoding symbol _objc_getMetaClass symbol
impNSLocalizedRecoverySuggestionErrorKey symbol NSStreamFileCurrentOffsetKey symbol objc_class_name_NSOutputStream symbol _objc_class_name_NSURLCredential symbol ___objc_class_name_NSURLCredentialStorage symbol impCFStringConvertIANACharSetNameToEncoding symbol impCFStringConvertEncodingToNSStringEncoding symbol impCFURLCopyUserName symbol impCFURLCopyPassword symbol impUIBackgroundTaskInvalid symbol _NSURLAuthenticationMethodServerTrust symbol _NSURLAuthenticationMethodClientCertificate symbol NSStreamDataWrittenToMemoryStreamKey symbol objc_class_name_UIPopoverController symbol _RAND_add symbol _EVP_MD_size symbol _EVP_sha1 symbol _EVP_CIPHER_block_size symbol _EVP_CIPHER_iv_length symbol _EVP_CIPHER_key_length symbol _OBJ_nid2sn symbol _EVP_CIPHER_nid symbol _EVP_get_cipherbyname symbol _EVP_CipherInit symbol _EVP_CIPHER_CTX_set_padding symbol _EVP_CipherUpdate symbol _EVP_CipherFinal symbol _EVP_CIPHER_CTX_cleanup symbol _PKCS5_PBKDF2_HMAC_SHA1 symbol _HMAC_CTX_init symbol _HMAC_Init_ex symbol _HMAC_Update symbol _HMAC_Final symbol _HMAC_CTX_cleanup symbol _RAND_bytes symbol _EVP_cleanup symbol _OPENSSL_add_all_algorithms_noconf symbol _NSGregorianCalendar symbol _S_ISDIR symbol _NSFileModificationDate symbol _NSFilePosixPermissions symbol _objc_class_name_NSProcessInfo symbol _UIAccessibilityPostNotification symbol impUIApplicationDidChangeStatusBarOrientationNotification symbol impUIWindowLevelNormal symbol _UIAccessibilityScreenChangedNotification symbol _UIAccessibilityAnnouncementNotification symbol _NSGregorianCalendar symbol _objc_class_nameNSProcessInfo symbol objc_class_name_UIPasteboard symbol _objc_class_nameNSPredicate symbol objc_class_name_CAGradientLayer symbol ___objc_class_name_MFMailComposeViewController symbol impUIBackgroundTaskInvalid symbol _objc_class_nameNSURLCache symbol objc_class_name_NSProcessInfo symbol _gcov_flush symbol _NSFoundationVersionNumber symbol imp_UIApplicationDidEnterBackgroundNotification symbol objc_class_name_CLLocationManager symbol _objc_class_name_NSProcessInfo symbol _objc_class_nameMFMailComposeViewController symbol objc_class_name_NSMutableAttributedString symbol NSFontAttributeName symbol impUIApplicationDidEnterBackgroundNotification symbol impUIApplicationWillEnterForegroundNotification symbol impUIApplicationWillResignActiveNotification symbol impUIApplicationDidBecomeActiveNotification symbol impUIApplicationDidEnterBackgroundNotification symbol objc_class_name_NSPredicate symbol _objc_class_name_MFMailComposeViewController symbol ___objc_class_name_UINavigationItem symbol impUIApplicationDidReceiveMemoryWarningNotification symbol _objc_class_nameUINavigationItem symbol objc_class_name_UIPopoverController symbol _objc_class_nameUIImagePickerController symbol objc_class_name_UIActivityViewController symbol UIActivityTypeAssignToContact symbol objc_class_name_UIRefreshControl symbol _objc_class_name_CAGradientLayer symbol _objc_class_nameUIRefreshControl symbol objc_class_name_NSRegularExpression symbol _objc_class_nameNSFileHandle symbol objc_class_name_UINib symbol _objc_class_nameNSPredicate symbol objc_class_name_NSDataDetector symbol _UIImagePickerControllerEditedImage symbol _UIImagePickerControllerOriginalImage symbol _UICollectionElementKindSectionHeader symbol _UICollectionElementKindSectionFooter symbol _objc_class_nameNSURLCache symbol objc_class_name_NSCachedURLResponse symbol _CTFontCreateWithName symbol _kCTFontAttributeName symbol kCTForegroundColorAttributeName symbol objc_class_name_CLLocationManager symbol _objc_class_name_NSURLProtocol symbol impUITableViewIndexSearch symbol UICollectionElementKindSectionHeader symbol objc_class_name_NSPredicate symbol _objc_class_name_UICollectionReusableView symbol _UICollectionElementKindSectionHeader symbol _UICollectionElementKindSectionFooter symbol _objc_class_nameAVCaptureDevice symbol objc_class_name_AVCaptureDeviceInput symbol _objc_class_nameAVCaptureSession symbol objc_class_name_AVCaptureVideoPreviewLayer symbol _AVMediaTypeVideo symbol _AVLayerVideoGravityResizeAspectFill symbol impSCNetworkReachabilityCreateWithName symbol impSCNetworkReachabilityCreateWithAddress symbol impSCNetworkReachabilitySetCallback symbol impSCErrorString symbol impSCError symbol impSCNetworkReachabilitySetDispatchQueue symbol impSCNetworkReachabilityGetFlags symbol impCFDataCreateMutableCopy symbol impCFDataGetLength symbol imp__CFDataGetBytes

nicholasgerard-msft commented 8 years ago

@mlfarrell Hi, could you give us an update on the status of your project here? Have you been able to get it to compile, link and run successfully?

mlfarrell commented 8 years ago

I can't right now, I am in the middle of some paid work this week. I'll get back to you ASAP.

I've been meaning to ask (sorry to hijack), will this SDK work with the Hololens? I only ask because the holo lens is one of the big incentives for me bringing my technology to the Windows platform

s5msft commented 8 years ago

will this SDK work with the Hololens

It could be made to work, but Hololens isn't super-high on our priority list so we haven't spent too much time with it.

mlfarrell commented 8 years ago

Now I can't even get to the linker stage.

error MSB6006: "clang.exe" exited with code -1073741819. I get this on one of my biggest files and I have no idea the cause.

I'm sorry but after months and months of being led on, I think I have to abandon this objc+win10 porting effort. It's just in complete shambles as far as I'm concerned

mlfarrell commented 8 years ago

Okay I got it this far....

I'm not gonna lie, the thousands of "is deprecated: property not yet implemented [-Wdeprecated-declarations]" I saw during compilation has me being very pessimistic about the actual state of the SDK as I mentioned above...

2>LINK : warning LNK4098: defaultlib 'msvcrtd' conflicts with use of other libs; use /NODEFAULTLIB:library 2>MaterialSelectorViewController_4ED8C2A5.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIPopoverController 2>VertoActionSheet_1DD8E17.obj : error LNK2001: unresolved external symbol __OBJC_CLASS_UIPopoverController 2>RenderPipelineEditorViewController_BE6AC788.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIPopoverController 2>Ortho_Sketch_3DViewController_F987F63A.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIPopoverController 2>VertoShapeEditorViewController_3FB0FA64.obj : error LNK2001: unresolved external symbol __OBJC_CLASS_UIPopoverController 2>TextureLibraryViewController_D9EE0206.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIPopoverController 2>DocumentView_DA0A043A.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIPopoverController 2>EAGLView_B867A724.obj : error LNK2019: unresolved external symbol OBJC_CLASS_UIRotationGestureRecognizer referenced in function catch$__i_EAGLViewinitWithCoder_$1 2>TCGLView_105A02BD.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIRotationGestureRecognizer 2>VertoShapeEditorCanvasView_FD10D4BD.obj : error LNK2001: unresolved external symbol __OBJC_CLASS_UIRotationGestureRecognizer 2>TextureLibraryViewController_D9EE0206.obj : error LNK2019: unresolved external symbol OBJC_CLASS_UIImagePickerController referenced in function i_TextureLibraryViewController__viewDidLoad 2>DocumentView_DA0A043A.obj : error LNK2019: unresolved external symbol OBJC_CLASS_UIDocumentInteractionController referenced in function _CGRectMake 2>CubeRendererEditorViewController_C7E0A1E2.obj : error LNK2001: unresolved external symbol OBJC_CLASS_UIDocumentInteractionController 2>AFURLSessionManager772EE6CA.obj : error LNK2001: unresolved external symbol objc_class_name_AFSecurityPolicy 2>AFHTTPRequestOperationManager_A48CF6B2.obj : error LNK2001: unresolved external symbol _objc_class_name_AFSecurityPolicy 2>AFURLConnectionOperationAF5FB72C.obj : error LNK2001: unresolved external symbol objc_class_name_AFSecurityPolicy 2>AFURLSessionManager_772EE6CA.obj : error LNK2019: unresolved external symbol OBJC_CLASS_AFSecurityPolicy referenced in function _af_swizzleSelector 2>AFHTTPRequestOperationManager_A48CF6B2.obj : error LNK2001: unresolved external symbol __OBJC_CLASS_AFSecurityPolicy 2>AFURLConnectionOperation_AF5FB72C.obj : error LNK2001: unresolved external symbol OBJC_CLASS_AFSecurityPolicy 2>VertoGLStateMachine_A239961B.obj : error LNK2019: unresolved external symbol "union _mat4 const mat4Identity" (?mat4Identity@@3T_mat4@@B) referenced in function i_VertoGLStateMachine__init 2>libSVGKit-iOS.1.2.0.lib(SVGKImage_EA8BEF31.obj) : error LNK2019: unresolved external symbol impNSStringFromCGRect referenced in function catch$i_SVGKImage__dealloc$0 2>libSVGKit-iOS.1.2.0.lib(SVGSVGElement_368D2E2A.obj) : error LNK2001: unresolved external symbol impNSStringFromCGRect 2>libSVGKit-iOS.1.2.0.lib(SVGKSourceLocalFile_5BFD9642.obj) : error LNK2019: unresolved external symbol OBJC_CLASS_NSInputStream referenced in function c_SVGKSourceLocalFilesourceFromFilename_ 2>libSVGKit-iOS.1.2.0.lib(SVGKSourceURL_2CB41910.obj) : error LNK2001: unresolved external symbol OBJC_CLASS_NSInputStream 2>libSVGKit-iOS.1.2.0.lib(SVGKSourceNSData_AA7131AE.obj) : error LNK2001: unresolved external symbol __OBJC_CLASS_NSInputStream 2>libSVGKit-iOS.1.2.0.lib(SVGKSourceString_DAE6381D.obj) : error LNK2001: unresolved external symbol OBJC_CLASS_NSInputStream 2>libSVGKit-iOS.1.2.0.lib(SVGSwitchElement_F68C317A.obj) : error LNK2019: unresolved external symbol OBJC_CLASS_NSLocale referenced in function i_SVGSwitchElementvisibleChildNodes 2>libSVGKit-iOS.1.2.0.lib(CSSStyleSheet_D3E57710.obj) : error LNK2019: unresolved external symbol OBJC_CLASS_NSRegularExpression referenced in function i_CSSStyleSheetinitWithString_ 2>libSVGKit-iOS.1.2.0.lib(SVGElement_EFB7A2B6.obj) : error LNK2001: unresolved external symbol OBJC_CLASS_NSRegularExpression 2>libSVGKit-iOS.1.2.0.lib(SVGElement_EFB7A2B6.obj) : error LNK2019: unresolved external symbol __OBJC_CLASSNSPredicate referenced in function 50-[SVGElement postProcessAttributesAddingErrorsTo:]_block_invoke 2>libSVGKit-iOS.1.2.0.lib(SVGTextElement_A5102BF.obj) : error LNK2019: unresolved external symbol OBJC_CLASS_NSMutableAttributedString referenced in function i_SVGTextElementnewLayer 2>libSVGKit-iOS.1.2.0.lib(SVGTextElement_A5102BF.obj) : error LNK2019: unresolved external symbol _kCTFontAttributeName referenced in function i_SVGTextElement__newLayer 2>libSVGKit-iOS.1.2.0.lib(SVGGradientElement_1729582E.obj) : error LNK2019: unresolved external symbol impNSStringFromCGPoint referenced in function _CGPointMake 3>Z:\vc projs\objc\verto\Ortho Sketch 3D\Classes/Ortho_Sketch_3DViewController.h(30,129): warning : cannot find protocol definition for 'ADBannerViewDelegate' 2>Z:\vc projs\objc\verto\Ortho Sketch 3D\Debug\Ortho Sketch 3D\Ortho Sketch 3D.exe : fatal error LNK1120: 15 unresolved externals

SNanjappa commented 8 years ago

@mlfarrell Even i am stuck with the same problem. Did you find any solution for the LinkerErrors? If so please let me know.

mlfarrell commented 8 years ago

I've abandoned winobjc in favor of a complete rewrite to C++. I'm sorry