看板 MacDev 關於我們 聯絡資訊
請問在Objective-C裡如何使用C++ libary呢? 客戶那邊的source code是C++寫成的 對方問我們要包成什麼樣的形式我們才可以使用 謝謝 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.132.176.151
Blueshiva:就...原始碼的形式啊,你可以查查看Objective-C++,基本 04/03 10:34
Blueshiva:上就是Obj-C和C++之間的橋梁 04/03 10:35
whitefur:呃...可是我們沒辦拿到C++的source code 04/03 10:36
whitefur:我知道Objective-C++可以同時存在Objective-C跟C++ 04/03 10:37
whitefur:但是我們只能拿到.a或.o檔之類的 不能拿到.cpp or .mm 04/03 10:38
Blueshiva:那就是拿.a檔和.h header檔,然後自己寫Obj-C++物件當橋 04/03 10:49
s8911124:樓上正解 04/03 12:11
charlesdc:順便問一個問題~~如果拿到的是.jar檔有辦法接嗎? 04/03 13:09
Blueshiva:以前Cocoa可以橋接Java,現在應該已經不行了 @.@ 04/03 13:10
whitefur:那對方要怎麼編出這個.a檔呢? 04/03 16:40
whitefur:因為我在terminal用g++ -c source.cpp 04/03 16:42
whitefur:ar rvs source.a source.o 04/03 16:43
whitefur:然後我把source.a拿到iOS project裡用, 結果不能跑 04/03 16:44
※ 編輯: whitefur 來自: 220.132.176.151 (04/03 16:45)
whitefur:一定要Xcode的Cocoa Touch Static Library project編出來 04/03 16:45
whitefur:的.a檔才能用在iOS project裡嗎?謝謝 04/03 16:46
Blueshiva:簡單來說,是的。因為編譯出來的.a是要跑在ARM CPU上的 04/03 17:02
Blueshiva:除非你要自己下gcc參數,不然用template比較方便 04/03 17:02
Blueshiva:我說的template就是那些project樣板,不是C++的template 04/03 17:03
whitefur:我懂了!謝謝! 04/03 17:42
uranusjr:不止 ARM 還要有 simulator 用的 binary, 除非你不用模擬 04/03 20:02
uranusjr:器測試一律使用實機 04/03 20:02