2013-10-16 82 views
0

我已經構建了一個標準的ObjectiveC++動態庫,我想在QNX Momentics IDE中的BlackBerry 10項目中使用它。我可以在BlackBerry 10中使用Xcode編譯的armv7/armv7s .so庫嗎?

我使用libtool爲2個有效的Xcode體系結構提取我的.so文件:armv7和armv7s。

在添加這些庫QNX Momentics的,我得到以下...

庫未編譯爲正確的體系結構:路徑我 文件

如果任何人有爲什麼這些不正確的指導,將不勝感激。

我假設其他人編譯Xcode和進口他們的圖書館Momentics的黑莓手機項目。

兩者都運行在ARM架構上。是否有可能做到這一點?

謝謝! Frosty

回答

1

從來沒有嘗試過,但非常肯定你不能。 我期望Xcode構建Mach-O二進制文件,而QNX運行ELF。應該有其他顯着差異,例如運行時庫和平臺的ABI(例如系統調用號可能略有不同,等等)

+0

我懷疑有一個失蹤的Objective-C運行時和庫的內容與爲好小事。 – marko

+0

好的,這對我有意義。我正在嘗試使用Objective C++編寫的現有庫,並使用不透明指針(C++頭文件)封裝我的接口(PIMPL:[link](http://philjordan.eu/article/strategies-for-using-c++-in -objective-c-projects)) 黑莓本身會盡可能地記錄它:[link](https://developer.blackberry.com/native/documentation/cascades/dev/ios_porting/objccpp.html) 那就是說,我可以理解你說Mach-O會有所不同,所以我沒有看到沒有Xcode的情況下如何編譯......? – Frosty

+0

你可以用'clang'或'gcc'從終端編譯Objective C,編寫腳本等.Xcode不需要構建ObjectiveC。請注意,任何非平凡的ObjectiveC代碼都可能使用非Apple平臺上不可用的庫。 – Eugene

相關問題