close

從XE6升上XE7的專案,使用IOS8.1 SDK遇到以下Compile的問題:

cannot link directly with C:\Users\Tony\Documents\Embarcadero\Studio\SDKs\iPhoneOS8.1.sdk/usr/lib/system/libdispatch.dylib.  Link against the umbrella framework 'System.framework' instead.ld: cannot link directly with C:\Users\Tony\Documents\Embarcadero\Studio\SDKs\iPhoneOS8.1.sdk/usr/lib/system/libdispatch.dylib.  Link against the umbrella framework 'System.framework' instead. for architecture armv7

解決方法:

1. copy以下檔案到專案目錄下
C:\Program Files (x86)\Embarcadero\Studio\15.0\source\rtl\osx\Macapi.Dispatch.pas

2. 修改專案目錄的Macapi.Dispatch.pas檔案內容:

原始:

const
libdispatch = '/usr/lib/system/libdispatch.dylib'; 
DISPATCH_QUEUE_SERIAL = nil;

改為:

const
// libdispatch = '/usr/lib/system/libdispatch.dylib';
libdispatch = '/usr/lib/libSystem.dylib';
DISPATCH_QUEUE_SERIAL = nil;

3. 重新compile即可解決此問題

 

arrow
arrow
    創作者介紹
    創作者 無人知曉的Tony 的頭像
    無人知曉的Tony

    無人知曉的Tony

    無人知曉的Tony 發表在 痞客邦 留言(0) 人氣()