rhanziy

Xcode build setting(M3) ๋ณธ๋ฌธ

Development setting

Xcode build setting(M3)

rhanziy 2024. 5. 13. 00:23

2024.05.20 ์—…๋ฐ์ดํŠธ ๐Ÿฅน

๊ณ„์† ๋นŒ๋“œ๊ฐ€ ์•ˆ๋ผ์„œ ์ฐพ์•„๋ณด๋‹ค ํ•ด๊ฒฐํ•œ ๋ฐฉ๋ฒ•.... intel ๋Œ๋ฆฌ๋‹ค๊ฐ€ m3์นฉ์œผ๋กœ ๋งฅ๋ถ์„ ์—…๊ทธ๋ ˆ์ด๋“œํ•˜๊ณ  ์•ˆ๋๋˜ ๊ฐœ๋ฐœ์…‹ํŒ… ๊ณผ์ •์ด๋‹ค.

iterm2 ํ„ฐ๋ฏธ๋„์„ ์„ค์น˜ํ•˜๋Š” ์ด์œ ๊ฐ€ Intel๊ณผ Apple Silicon๊ฐ„์— ์†Œํ†ต์„ ๋„์™€์ฃผ๋Š” ๋กœ์ œํƒ€(Rosetta)๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋ผ๊ณ  ํ•œ๋‹ค. (์ผ๋ฐ˜ Terminal๊ณผ Iterm2(๋กœ์ œํƒ€ ์šฉ)๋กœ ๋‘๊ฐœ๋ฅผ ์‚ฌ์šฉํ•œ๋‹ค.)

 

๋จผ์ € ๋กœ์ œํƒ€๋ฅผ ์„ค์น˜ํ•ด์ฃผ๊ณ  agree๋ฅผ ์ž…๋ ฅํ•ด license๋™์˜๋ฅผ ํ•œ๋‹ค.

softwareupdate --intall-rosetta

 

 

๊ทธ ํ›„ ํŒŒ์ธ๋”(Finder) > ์‘์šฉํ”„๋กœ๊ทธ๋žจ(Application) > iterm ์šฐํด๋ฆญ ๋ฐ ์ •๋ณด๊ฐ€์ ธ์˜ค๊ธฐ ํด๋ฆญ > Rosetta๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ์—ด๊ธฐ ์ฒดํฌ

 

 

๊ทธ๋ฆฌ๊ณ  ํ”„๋กœ์ ํŠธ ๊ฒฝ๋กœ๋กœ ๋“ค์–ด๊ฐ€์„œ yarn ios๋ฅผ ํ–ˆ๋”๋‹ˆ ๋นŒ๋“œ์™„ ใ… ใ… ใ… ใ… ใ… ใ… ใ… ใ… ใ… 

์ง„์งœ ๋Œ€์‚ฝ์งˆ์˜ ์‚ฝ์งˆ์˜ ์‚ฝ์งˆ๋กœ ๋ฉฐ์น ๋‚ด๋‚ด ๋™๋™๋Œ”๋Š”๋ฐ.... ์ด๋ ‡๊ฒŒ ์‹คํ–‰์ด๋˜๋‹ค๋‹ˆ ๊ฐ๊ฒฉ์ด ์•„๋‹์ˆ˜๊ฐ€์—†๋‹ค.

 

https://velog.io/@pagkusd/React-Native-Cli-%EC%84%A4%EC%B9%98-%EC%9D%B4%EC%8A%88-%EC%A0%95%EB%A6%ACMac-OS-M2

 

React Native Cli ์„ค์น˜ ์ด์Šˆ ์ •๋ฆฌ[Mac OS, M2]

๊ฒฐ๋ก ์ ์œผ๋กœ ๋งŽ์ด ํž˜๋“ค์—ˆ๋‹ค.๋‚˜๋Š” ๊ธฐ์กด intel์นฉ ๊ธฐ๋ฐ˜ ๋งฅ๋ถํ”„๋กœ๋ฅผ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ๋˜ํ„ฐ๋ผ, ๊ฐœ๋ฐœํ™˜๊ฒฝ ์„ค์น˜์— ํž˜๋“ ์ ์€ ๋”ฑํžˆ ์—†์—ˆ๋‹ค.๊ทผ๋ฐ, ์ด M2์นฉ ๊ธฐ๋ฐ˜์˜ ๊ฐœ๋ฐœํ™˜๊ฒฝ ์…‹ํŒ…์€ ๋‚ด๊ฐ€ ์Œ“์•„์˜จ ๊ฒฝํ—˜๊ณผ ๋‹ค์†Œ ๋ฒ—์–ด๋‚ฌ

velog.io

์ฐธ๊ณ ํ–ˆ๋˜ ๋ธ”๋กœ๊ทธ,, ๋‹ค์Œ๋ฒˆ์— ์…‹ํŒ…ํ•  ์ผ ์ƒ๊ธฐ๋ฉด ์ฐจ๊ทผ์ฐจ๊ทผ ์„ค์น˜ํ•ด๋ณด์ž

 


 

https://velog.io/@darcyu83/mac-M1-React-native-%ED%99%98%EA%B2%BD-%EC%85%8B%EC%97%85

 

mac M1 React native ํ™˜๊ฒฝ ์…‹์—…

๊ณต์‹ ํ™ˆ ์„ค์น˜ ๋ฐฉ๋ฒ• ์ •๋ณด react-native official setup flow : https://reactnative.dev/docs/environment-setup ์„ค์น˜์‹œ์—๋Š” arch -x86_64๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์—†๋‹ค. ๋‹ค๋งŒ ๋งˆ์ง€๋ง‰ app ๊ตฌ๋™ํ•  ๊ฒฝ์šฐ

velog.io

 

Mac os m1 chip์€ CPU ์•„ํ‚คํ…์ณ arm64๋ฅผ ์‚ฌ์šฉํ–ˆ๋‹ค.
๊ทธ๋ž˜์„œ ๊ธฐ์กด์˜ ํ”„๋กœ๊ทธ๋žจ๋“ค์„ ๊ฐ€์ ธ์™€์„œ ์“ฐ๊ธฐ๊ฐ€ ํž˜๋“ค๋‹ค.
m1 : arch -arm64
intel ๊ณ„์—ด : arch -x86_64

 

์ผ๋‹จ ํ”„๋กœ์ ํŠธ build setting์—  Excluded Architectures ํ•˜์œ„์˜ต์…˜ arm64๋กœ ๋ณ€๊ฒฝ

Xcode

Xcode๋กœ IOS์•ฑ์„ ์‹ค์ œ ๋””๋ฐ”์ด์Šค์™€ ์‹œ๋ฎฌ๋ ˆ์ดํ„ฐ์— ๊ตฌ๋™. 

๊ฐœ๋ฐœ์ž ์•„์ด๋”” ๋“ฑ๋ก ํ•„์š” (๊ณ„์ •์ •๋ณด in google drive) 

Simulator๋กœ ๊ตฌ๋™ _: xcode ๋นŒ๋“œ ๋˜๋Š” vscode cli command

project ๊ฒฝ๋กœ์—์„œ npm or yarn run ios  

ios ์•ฑ ๊ตฌ๋™ํ•  ๊ฒฝ์šฐ xcode์— ๋ณ„๋„์˜ ์„ค์ •์ด ํ•„์š”ํ•จ. 
Build setting > excluded architecture > any ios simulator SDK> arm64 ์ถ”๊ฐ€

์‹ค์ œ ๋””๋ฐ”์ด์Šค๋กœ ๊ตฌ๋™_ : xcode์—์„œ build ๋ฒ„ํŠผ์„ ์‚ฌ์šฉํ•จ.

Build setting > excluded architecture > any ios simulator SDK> arm64 ์‚ญ์ œ

์—ฐ๊ฒฐ๋œ ๋””๋ฐ”์ด์Šค ์„ ํƒ 

Xcode clean build ๋ฐฉ๋ฒ• 
(์—๋Ÿฌ ๋ฐœ์ƒ ์‹œ ์ž์ฃผ ์‚ฌ์šฉ) 

1. cmd + shift + k  (Xcode)
2. rm -rf ~/Library/Developer/Xcode/DerivedData/* (Terminal)

 

 

CocoaPods & pod install

์—ฌ๊ธฐ์„œ ์—๋Ÿฌ๊ฐ€ ๋งŽ์ด ๋‚จ. ํŠนํžˆ ๊ธฐ์กด์— ๋งŒ๋“ค์–ด๋‘” ios์•ฑ์„ ๊ตฌ๋™ํ•  ๊ฒฝ์šฐ

pod install : project name / ios ํด๋” ์•ˆ์—์„œ
npx pod-install : project name ํด๋” ์•ˆ์—์„œ

A . pod install ์˜ค๋ฅ˜ ๋ฐœ์ƒ ์‹œ

rm -rf pods podfile.lock
pod cache clean -- all 
pod install 

*ํ•ด๊ฒฐ ์•ˆ๋  ๊ฒฝ์šฐ

sudo arch -x86_64 gem install ffi 

in ios ํด๋”

arch -x86_64 pod install 
arch -x86_64 pod install —repo-update

*๊ทธ๋ž˜๋„ ์•ˆ๋  ๊ฒฝ์šฐ

sudo gem install cocoapods ๋กœ ์„ค์น˜ํ•œ ๊ฒฝ์šฐ์— ์ฐธ๊ณ ๋ฐ”๋žŒ.

CocoaPods ์‚ญ์ œ & gem ์‚ญ์ œ

sudo gem uninstall cocoapods
gem list --local | grep cocoapods | awk '{print $1}' | xargs sudo gem uninstall

์žฌ์„ค์น˜

sudo arch -x86_64 gem install ffi 
sudo arch -x86_64 gem install cocoapods

in ios ํด๋”

arch -x86_64 pod install 

 

 

 

https://velog.io/@dbqls200/Alamofire-%EC%84%A4%EC%B9%98-M1

 

Alamofire ์„ค์น˜ (M1)

M1์—์„œ pod install์„ ์ง„ํ–‰ํ•ด๋ณด์ž !! (+ ๋ค์œผ๋กœ Alamofire๋„ ์„ค์น˜ํ•ด๋ณด์ž.)

velog.io

 

Pod install์„ ํ•ด๋ณด์ž

1. ๋จผ์ € pod install์„ ์ง„ํ–‰ํ•  ํ”„๋กœ์ ํŠธ๋กœ ์ด๋™!

> cd ํ”„๋กœ์ ํŠธ ๊ฒฝ๋กœ

2. vi ํŽธ์ง‘๊ธฐ๋ฅผ ์—ด์–ด ์„ค์น˜ํ•  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋Œ€ํ•ด ์จ์ฃผ๊ธฐ!

  • Alamofire๋ฅผ ์„ค์น˜ํ•  ๊ฒƒ์ด๊ธฐ ๋•Œ๋ฌธ์— ์•„๋ž˜์ฒ˜๋Ÿผ ์ผ์Šต๋‹ˆ๋‹ค.
> vi podfile
  • podfile์— ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•ด์ค€๋‹ค. (์„ค์น˜ํ•˜๊ณ ์ž ํ•˜๋Š” ๋ฒ„์ „ ์ž˜ ํ™•์ธํ•˜๋„๋ก!)
> pod 'Alamofire', '~> 5.2'

esc ๋ˆ„๋ฅธ ํ›„, :wq๋ฅผ ์ž…๋ ฅํ•ด์ฃผ๊ณ  ๋น ์ ธ๋‚˜์˜จ๋‹ค.

3. ๋ณธ๊ฒฉ pod install ์ง„ํ–‰

> sudo arch -x86_64 gem install ffi

๋น„๋ฐ€๋ฒˆํ˜ธ ์ž˜ ์ž…๋ ฅํ•ด์ฃผ๋ฉด ์„ค์น˜๊ฐ€ ์ง„ํ–‰๋œ๋‹ค.
์ด ๋ช…๋ น์–ด ์ˆ˜ํ–‰ํ•˜๊ณ  ๋‚˜๋‹ˆ ํ”„๋กœ์ ํŠธ ํด๋”์— podfile์ด ์ƒ๊ฒผ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ,

> arch -x86_64 pod install

์ด๋ ‡๊ฒŒ ํ•˜๋ฉด ํ”„๋กœ์ ํŠธ์—์„œ import Alamofire๊ฐ€ ์˜ค๋ฅ˜์—†์ด ์ž‘๋™๋˜๋Š” ๊ฒƒ ํ™•์ธ ๊ฐ€๋Šฅ !

pod ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ผฌ์ธ ๊ฒฝ์šฐ

์—ฌ๋Ÿฌ ๋ช…์ด ์ž‘์—…ํ•˜๊ฑฐ๋‚˜ pod ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ๊ผฌ์ด๋Š” ๊ฒฝ์šฐ๊ฐ€ ์ข…์ข… ๋ฐœ์ƒํ•จ.
์ด ๋•Œ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋ฅผ ํ•œ ๋ฒˆ ์ •๋ฆฌํ•ด์ค˜์•ผ ํ•œ๋‹ค.

> sudo gem install cocoapods-deintegrate cocoapods-clean
> pod deintegrate
> pod clean
> pod install // ์ธ๋ฐ, ๋งŒ์•ฝ m1์—์„œ ์˜ค๋ฅ˜ ๋œจ๋ฉด ์œ„์˜ arch~~~๋กœ ์ง„ํ–‰.

pod์„ ์„ค์น˜ํ–ˆ์„ ๋•Œ

.xcworkspace๋กœ ํ”„๋กœ์ ํŠธ๋ฅผ ์—ด์–ด์ค˜์•ผ ํ•œ๋‹ค.

 

๊ฒฐ๊ตญ ์ตœ์ข… change๋œ pod ์ฝ”๋“œ

//project.pbxproj
EXCLUDED_ARCHS[sdk=iphonesimulator*] = i386 -> arm64;

//Podfile.lock
COCOAPODS: 1.13.0 -> 1.15.2

//Podfile
+
pod 'Alamofire', '~> 5.2'

 

Comments