Üçüncü taraf geliştiricilere derlediğimiz ve dağıttığımız bir Swift Framework'üm var. Projeye bazı C kodları eklemek istiyorum, ancak çalışmayı başarabilmemin tek yolu, C başlığını çerçevemin başlığına getirip C başlığını halka olarak ayarlamak. Bu, C kodunun tamamını istediğimiz şey olmayan 3. taraf geliştiricilere sunar. "Bu tekniği kullanarak inşa etmek herhangi çerçeveler tüketiciler de sahip olacak unutmayın edilir https://spin.atomicobject.com/2015/02/23/c-libraries-swift/C kodu Swift Framework'e nasıl derlerim?
Ancak bu yöntemin uyarı: çevrimiçi bunu nasıl için bulabilirsiniz
Her şey bir bu yöntemin varyasyon Modülü kendi Swift arama yollarına eklemek. " Bunu denedik ve 3. taraf geliştiricilerimizin, C başlığına işaret ettiğimiz modül olan Missing required module 'CGeodesic'
hatalarını almasını sağladık.
Kodu özel olarak korurken C kodunu doğrudan çerçevemize nasıl derleyebiliriz ve 3. taraf geliştiricilerin çalışmasını sağlamak için yapı ayarlarını değiştirmelerini istemeyiz? Bu altmodülleri bizim projemizde kurmak zorunda kalmıyorum, ancak günün sonunda doğrudan tek bir düz çerçeve ikiliye, dinamik bağlantılara veya arama yollarına veya bunun gibi herhangi bir şeye derlenmesini istiyorum.
düzenleme
projesi C kodu yan yana Swift kodu ile.
- Geodezik/
- Geodesic.h
- Geodesic.c
- Geodesic.swift
: Şöyle Projemdeki bir alt dizin var Swift dosyası, çalışmayı daha temiz hale getirmek için C kodunu sarar. Ben de bu dizinde bir module.modulemap dosyası vardı, ama daha önce çalışmadı dediğim gibi. C kodumuzu Swift kodumla yan yana tutmayı tercih ederim ama bu sorunu çözmek için bunu vermeye hazırım.
Geçerli ayarlarınız nedir? C kodu Swift koduyla yan yana mı? – zneak
https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/MixandMatch.html. Bu yardımcı olur mu? C kodu Objective-C'dir ve C ve Swift karışımında bir çerçeve yazabilir gibi görünür ve kullanıcılara tek bir dilde yazılmış gibi görünür. Henüz kendim denemedim. – OmniProg
@OmniProg, şu anda yaptığımız şey bu. Bu yöntemle ilgili problem, bu başlıkların tümünü kamuya açık bir şekilde ortaya çıkarmasıdır. Bu, kaçınmaya çalıştığımız şeydir. – user1084447