静的リンクライブラリ

11

Click here to load reader

Upload: atsushi-yoshimura

Post on 13-Jun-2015

13.466 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 静的リンクライブラリ

静的リンクライブラリと少し仲良くなるコツ

13年8月31日土曜日

Page 2: 静的リンクライブラリ

Undefined symbols for architecture...

Expected identifier or (...

No such file or directory...

No

such

file

or d

irecto

ry...

Unknown type name...

Undefined symbols for architecture...

13年8月31日土曜日

Page 3: 静的リンクライブラリ

外部ライブラリって

結構トラブルありますよね?(迫真)

13年8月31日土曜日

Page 4: 静的リンクライブラリ

コツ1

Header Search Pathsにドラッグ&ドロップしちゃえ!

$(SRCROOT)マクロは便利

recursiveフラグは臨機応変に

13年8月31日土曜日

Page 5: 静的リンクライブラリ

コツ2

ライブラリはコンパイルしなきゃ、だめなんですか?

どうしてもビルドできなかったら、ライブラリの説明を無視して

ソースコードを丸々プロジェクトに加えよう

13年8月31日土曜日

Page 6: 静的リンクライブラリ

コツ3アーキテクチャを知る

CPUによって、方言がある!→これが面倒な問題を常に引き起こす

armv7, armv7s等 x86_64, i386等

13年8月31日土曜日

Page 7: 静的リンクライブラリ

コツ4

実機を対象にすると実機用のバイナリシミュレータを対象にするとシミュレータ用のバイナリ

 この2つはそれぞれ別なアーキテクチャ向けにコンパイルされたものである!

13年8月31日土曜日

Page 8: 静的リンクライブラリ

コツ5.aファイルのアーキテクチャを調べる

lipo -info [filename]

13年8月31日土曜日

Page 9: 静的リンクライブラリ

コツ6ユニバーサルバイナリを作ろう!

lipo -create [~~.a] [~~.a] -output [output.a]

これでやっとシミュレータと実機両方で使える静的ライブラリができた!

13年8月31日土曜日

Page 10: 静的リンクライブラリ

コツ7

リンクの設定は Other Linker Flagsでやろう!

$(SRCROOT)マクロは便利

13年8月31日土曜日

Page 11: 静的リンクライブラリ

がんがんライブラリに寄生しよう!

13年8月31日土曜日