2009-11-12 40 views
3

有沒有人在Mac OS X上使用藍牙與Lazarus或FreePascal?有一個藍牙單元,但它目前只支持Linux。Mac OS X上的Lazarus/FreePascal上的藍牙

對現有單位的信息: http://wiki.freepascal.org/Bluetooth

我打算加強這方面的支持的Mac OS,但它會很高興地知道,如果任何人編寫的任何代碼,使用藍牙的Mac OS已經以避免重複工作。

另一方面,如果您使用XCode訪問藍牙,您使用了哪些庫?我確信我可以通過打開一些藍牙應用程序來發現XCode分析器。

注意:Mac OS X似乎沒有使用Linux提供的BlueZ庫,所以我不認爲解決方案與更改庫路徑一樣簡單。相反,它有位於/System/Library/Frameworks/IOBluetooth.framework的IOBluetooth「Framework」。

有一看,它看起來像:

 
    kaikei.ocn.ntt.com:IOBluetooth.framework $ file * 
    CodeResources: XML document text 
    Headers:  directory 
    IOBluetooth: Mach-O universal binary with 3 architectures 
    IOBluetooth (for architecture x86_64): Mach-O 64-bit dynamically linked shared library x86_64 
    IOBluetooth (for architecture i386): Mach-O dynamically linked shared library i386 
    IOBluetooth (for architecture ppc7400): Mach-O dynamically linked shared library ppc 
    Resources:  directory 
    Versions:  directory 

在另一方面,我認爲,如果有人這樣做了,我可能會能夠找到它在谷歌....在關閉我錯了,請回復並告訴我。

說明:我已經在(f.e. sqlite3)之前爲普通共享庫創建了綁定,但不是爲「框架」創建的。如果沒有人創建綁定或以其他方式使用FreePascal的MacOS藍牙框架,請注意如何使用FreePascal的框架功能。 (通常我正在移植的函數是基於C的,而不是Obj-C,所以我不知道如何在FPK中聲明Obj-C方法,但是如果我繼續搜索,我相信我將能夠找到一些樣本。經過翻譯的Mac OS X的框架Ç

回答

3

主要SVN倉庫是http://svn.freepascal.org/svn/macosxintf/trunk

不時,FPC發佈與託管有最新版本同步。請注意,該存儲庫中的文件(位於MPPInterfaces子目錄中)採用通用格式,可以自動轉換爲FPC,GPC或CodeWarrior Pascal版本。

要生成FPC版本,請使用「make fpcpinterfaces」,然後在Build/FPCPinterfaces文件夾中查找結果。

要翻譯的新報頭,從macosxintf庫的檢出的副本內執行這樣的事情:     ./Scripts/Convert.pl /System/Library/Frameworks/IOBluetooth.framework/Headers/IOBluetooth.h FORCE MPPInterfaces

之後,您仍然必須編輯生成的文件以添加/刪除單元,並清除其他未由自動翻譯過程處理的其他內容。完成後,您可能想要在bugs.freepascal.org上提交一份bug報告,並附上完成的單元。

(注:因爲我註冊的,我只能加在每個崗位一個網址,所以接下來的URL都有點錯位,以避開這一限制)

您也可以訂閱到Mac帕斯卡爾列表(lists.sonic.net/mailman/listinfo/mac-pascal)並詢問是否有人已經翻譯了這些標題。

藍牙框架確實也包含一些Objective-C頭文件。 Objective-Pascal支持僅在最新的FPC svn版本中提供,如FPC wiki上所述(谷歌FPC_PasCocoa)。您需要此支持才能與Objective-C交互。

翻譯的Objective-C是可能比較容易使用腳本其他地方FPC的SVN(svn.freepascal.org/svn/fpc/trunk/packages/cocoaint/utils/)

你可能想尋求幫助的上面提到的Mac Pascal列表,因爲所有維護上述翻譯和翻譯工具的人都在那裏訂閱。

+0

謝謝您的信息!我不知道macpascal列表。 – Noah 2011-03-03 02:29:08