libpasori 共有ライブラリ化なんて、gcc のオプションをちょこっと変更してあげればOKでしょ?くらいに思っていたんだけど、何だか Mac の gcc はちょっと勝手が違うらしい。
Using static and shared libraries across platforms共有ライブラリの拡張子も libhoge.so じゃなくて libhoge.dylib なんだそうだ。いままで気が付かなかった。gcc のオプションいろいろ試してみるがなかなかうまくいかない。もういいやと諦めかけたころ、ふと Xcode の存在を思いだした。Mac Switch 歴 10ヶ月、いままで全く使ったことは無かったし必要も無かったけれども、これを機会に試してみよう。
MacPorts を使うため Developer Tools は導入済み。Xcode を起動し、ファイル -> 新規プロジェクト... を選択。
それらしいプロジェクト発見!

こんな画面が開きます。

libpasori のソースコードを追加しましょう。
左ペイン「グループとファイル」にある、Source を右クリック -> 追加 -> 既存のファイル... を選択します。

以下のファイルを選択し、追加します。

ディスティネーショングループのフォルダに項目をコピーするをチェックします。

こんな感じになります。

プロジェクト -> プロジェクト情報を編集 -> ビルド にてビルド設定できるようです。
何を設定すべきかは、libpasori 添付のビルドスクリプトを参考にしましょう。
buildline-libusb.sh
#!/bin/sh gcc -o lpdump `libusb-config --cflags` -D__LIBPASORI_WITH_LIBUSB lptest.c libpasori_command.c libpasori_com_libusb.c libpasori_polling.c `libusb-config --libs`
バッククォートの部分を実行してみます。
% libusb-config --cflags -I/opt/local/include
% libusb-config --libs -L/opt/local/lib -lusb -Wl,-framework -Wl,IOKit -Wl,-framework -Wl,CoreFoundation -Wl,-prebind
これらを参考にして、以下のように設定します。

必要ライブラリ・フレームワークを追加します。
プロジェクト(pasori) を右クリック -> 追加 -> 既存のファイル... から以下のファイルを追加します。
/opt/local/lib/libusb.dylib
プロジェクト(pasori) を右クリック -> 追加 -> 既存フレームワーク... から以下のフレームワークを追加します。
/System/Library/Frameworks/IOKit.framework
/System/Library/Frameworks/CoreFoundation.framework
すると、こうなります。

それではビルドしてみましょう。金槌アイコンクリックです。

無事完成したようです。

これで Ruby から libpasori を利用する準備は完了です。
2 comments:
jordan shoes
nike x off white
supreme new york
supreme
stephen curry shoes
pandora
nike lebron 16
lebron shoes
lebron james shoes
curry 8
yuuanhs243
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
golden goose outlet
Post a Comment