[iOS] iOS ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํ ์คํธ์ฑ์ ์ฐ๊ฒฐํ๊ธฐ
๋๋ ์ง๋์ฃผ์ ๊ณต๋ถํ๋ฉฐ ์บก์ฒํ ๊ฑฐ๋ผ ๊ฐ์ฅ ์๋์ ํ์ด๋ผ๋ฉด ํ์ ์ถ๊ฐํ์...
๋ด ๊ธฐ์ค์์ ๊ฐ์ฅ ์ฝ๊ฒ ๋ง๋ค์์....
์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ ๋ง๋ค๊ธฐ
1) Create a new Xcode project
2) Static Library > Next
3) Product Name, Language > Next
4) ์ด๋ ๊ฒ ์์ฑ์ด ๋จ
5) ๋ผ์ด๋ธ๋ฌ๋ฆฌ ํด๋ ์ฐํด๋ฆญ > New File… > C File
6) Name ์
๋ ฅ
7) Targets
8) Header file๊ณผ C file ์ด ์์ฑ๋๋ค. ํด๋น C ์ฝ๋์ ํ
์คํธ ํจ์๋ฅผ ์ ๋๋ค.
9) Header file์ ํ
์คํธ ํจ์์ ๋ํ ํค๋๋ฅผ ๋ฃ๋๋ค.
10) โถ ์ ๋๋ฌ ๋น๋ํ๋ค. (command + b ๋ฅผ ๋๋ฌ๋ ๋๋ค.)
11) libTest.a ๊ฐ ์์ฑ๋๋ค.
12) File > New > Project…
13) ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ํ
์คํธํ ํ
์คํธ์ฑ์ ๋ง๋ ๋ค. ์๋์ ๊ฐ์ด ์์ฑ๋จ
14) ์๋ ์ฌ์ง๊ณผ ๊ฐ์ด ๋๋๊ทธ ์ค ๋๋กญ์ผ๋ก Header File์ ํด๋ ์๋๋ก ์ด๋ํ๋ค.
15) Destination: Copy items if needed ์ฒดํฌ
16) Products > libTestLib.a > ์ฐํด๋ฆญ > Show in Finder
17) ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฅผ ๋๋๊ทธ์ค๋๋กญ์ผ๋ก ํด๋น ํ
์คํธ ์ฑ ํด๋ ๋๊ณ ์จ๋ค
18) Destination: Copy items if needed ์ฒดํฌ
Add to targets : ํ
์คํธ ์ฑ ์ด๋ฆ
19) ←→์ ํด๋ฆญํด ํ๋ฉด์ ๋ถํ
20) + ๋ฅผ ํด๋ฆญํด ์๋ Views ๋ชฉ๋ก์ ๋์ด๋ค > Button ํด๋ฆญ
21) Button ๊ธฐ๋ฅ ๋ชฉ๋ก ์ค์์ Touch Down ์ ํด๋ฆญ ํ ๋๋๊ทธ ์ค ์ฝ๋์์ ๋๋กญ
22) Name ์ ํด๋น ๋ฒํผ ๊ธฐ๋ฅ์ ๋ํ ํจ์ ์ด๋ฆ์ ์ ํด์ค
23) ๋ค์๊ณผ ๊ฐ์ด ๋จ๋ ๊ฒ ๋น์ฐ. ์์ง ๋ผ์ด๋ธ๋ฌ๋ฆฌ๋ฉฐ ํค๋๋ฉฐ ์ฐ๊ฒฐ์ ์ ํด์คฌ๊ธฐ ๋๋ฌธ
์ค์ท ์ฐ์ ํ์ ์๊ฒ ๋ ๊ฑด๋ฐ.. swift ๋ฌธ๋ฒ์ ๋ชฐ๋๊ธฐ ๋๋ฌธ์.
์ ๋ ๊ฒ ๋๋ฉด ๋ณ์ a์ b๋ฅผ ์ด๊ธฐํ๋ง ํด ์ฃผ๊ณ ์๋์์ ๋ฐ๋ก ๊ฐ์ ์ฃผ์ง ์์๊ธฐ ๋๋ฌธ์ ์๋์ ๊ฐ์ด warning ์ ๋๊ฐ ๋ฌ๋ค. -> ํด๊ฒฐ : ์๋ฃํ์ var์์ let์ผ๋ก ๋ฐ๊พผ๋ค. (๋ญ.. ๊ตณ์ด ๋ฐ๊พธ์ง ์์๋ ๋ ๋ฏ)
24) Library Search Paths์ ์ ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ(.a)๊ฐ ์๋ ํด๋๋ฅผ ๋งํฌํด ์ค๋ค.
25) Header Search Paths์ header file์ด ์์นํ ํด๋๋ฅผ ๋งํฌํด ์ค๋ค.
26) TestApp > ์ฐํด๋ฆญ > New File > Header File
27) (ํ๋ก์ ํธ๋ช
)-Bridging-Header.h ๋ง๋ค์ด์ฃผ๊ณ ,
28) Header File์ include ํด์ค๋ค.
29) Objective-C Bridging Header์ ์์์ ๋ง๋ ํค๋ํ์ผ ๊ฒฝ๋ก๋ฅผ ๋งํฌํด ์ค๋ค.
30) โถ ๋๋ฅด๋ฉด Build Succeeded ๊ฐ ๋จ
31) ๋ค์๊ณผ ๊ฐ์ด ์๋ฎฌ๋ ์ดํฐ๊ฐ ๋๋ค.
32) Console ์ฐฝ์์ ํ์ธ ๊ฐ๋ฅ
(์ฝ๋๋ฅผ ์์ฃผ ์กฐ๊ธ ์์ ํด ์ฃผ์๋ค.. ์๋ฃํ์ด๋ print ์ถ๋ ฅ๋ฌธ….)
l ํ์ ์๊ฒ ๋ ๊ฒ์ธ๋ฐ…
1. header file ์ด ๋ง๋ค๋ฉด include ํด๋์ ๊ฐ์ ๊ฒ์ ๋ฐ๋ก ๋ง๋ค์ด์ ๊ด๋ฆฌํ๊ณ ๊ฒฝ๋ก๋ฅผ ์ก์์ฃผ๋ ๊ฒ์ด ์ข์ ๊ฒ ๊ฐ๋ค. Library๋ ๋ง์ฐฌ๊ฐ์ง.
2. Build Settings ํ์ด์ง๋ฅผ ์ด๋ ค๋ฉด… ํ๋ก์ ํธ ์ด๋ฆ์ ๋๋ธํด๋ฆญ ํ๋ฉด ๋๋ค.