我需要在Firebreath項目中添加一些目標c代碼。問題是該項目是在C++語言。所以我正在嘗試使用Objective-C++代碼。插件項目名稱爲「OpenOnDesktopPlugin」,我將「OpenOnDesktopPluginAPI.cpp」重命名爲「OpenOnDesktopPluginAPI.mm」,並創建了一個名爲「DistributedNotification」的Objective-C類,並將.m擴展名更改爲.mm 我無法初始化從 「OpenOnDesktopPluginAPI.mm」 我的Objective-C類,我得到一些編譯錯誤:Firebreath項目與objective-C++
用於建築x86_64的未定義符號: 「_OBJC_CLASS _ $ _ DistributedNotification」,從引用:在OpenOnDesktopPluginAPI.o objc級-REF ld:找不到架構x86_64的符號 collect2:ld返回1退出狀態
另一個錯誤:
個爲i386硬件架構未定義符號: 「.objc_class_name_DistributedNotification」,引用從:在OpenOnDesktopPluginAPI.o LD 指針到字面-objc類名:符號(多個)未找到i386硬件架構 collect2: ld返回1退出狀態
任何人都可以幫助我嗎?
嗨JeremyP,目標的編譯文件列表在哪裏? – Ana
我已經找到它了。非常感謝!!!我的項目正在運行:) – Ana
你知道如何驗證我的方法被調用嗎?我有這樣的代碼:void OpenOnDesktopPluginAPI :: runNotification() { DistributedNotification * _class = [[DistributedNotification alloc] init]; [_class release]; }但似乎這個代碼從來沒有被調用... – Ana