๐Ÿ‘ฉ๐Ÿป‍๐ŸŒพ

[Linux] gcc๋กœ C์–ธ์–ด ์ปดํŒŒ์ผํ•˜๊ธฐ ๋ณธ๋ฌธ

Language/Linux

[Linux] gcc๋กœ C์–ธ์–ด ์ปดํŒŒ์ผํ•˜๊ธฐ

์ฅฌ์Šค์ด 2023. 2. 10. 11:11
728x90

์šฐ์„ , C์ปดํŒŒ์ผ๋Ÿฌ์ธ GCC๋ถ€ํ„ฐ ์„ค์น˜๋ฅผ ํ•ด๋ณด์ž.

 

GCC์˜ ์„ค์น˜์—ฌ๋ถ€๋Š” ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ํ†ตํ•ด ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

$ gcc

์•„๋ž˜์™€ ๊ฐ™์€ ๋ฉ”์„ธ์ง€๊ฐ€ ๋œจ๋ฉด gcc ์„ค์น˜๊ฐ€ ๋˜์–ด์žˆ๋Š” ๊ฒƒ์ด๋‹ค.

gcc๋ฒ„์ „์€ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž…๋ ฅํ•˜๋ฉด ํ™•์ธํ•  ์ˆ˜ ์žˆ๊ณ 

$ gcc -v

๋งŒ์•ฝ ์„ค์น˜๊ฐ€ ์•ˆ๋˜์–ด์žˆ์„ ๊ฒฝ์šฐ์—๋Š” ์•„๋ž˜ ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•ด์ฃผ๋ฉด ์„ค์น˜ ํ•  ์ˆ˜ ์žˆ๋‹ค.

$ sudo apt-get install gcc

๋‹ค์Œ์œผ๋กœ, ์ƒ˜ํ”Œ cํŒŒ์ผ์„ ์ƒ์„ฑํ•ด์ค€๋‹ค.

$ vim [ํŒŒ์ผ๋ช…].c

ํŒŒ์ผ์„ ์ €์žฅํ•  ๋•Œ๋Š”,  ESC๋ฅผ ๋ˆ„๋ฅธ ๋’ค :wq๋ฅผ ์ž…๋ ฅํ•˜์—ฌ ํŒŒ์ผ์„ ์ €์žฅํ•˜๊ณ  vi ํŽธ์ง‘๊ธฐ๋ฅผ ์ข…๋ฃŒํ•œ๋‹ค.

"hello"๋ฅผ ์ถœ๋ ฅํ•˜๋Š” ๊ฐ„๋‹จํ•œ ํ”„๋กœ๊ทธ๋žจ์„ ์ž‘์„ฑ ํ›„, ์ €์žฅํ•˜๋ฉด ์•„๋ž˜ ์‚ฌ์ง„์—์„œ ๋ณด์ด๋Š” ๊ฑฐ์™€ ๊ฐ™์ด ์ •์ƒ์ ์œผ๋กœ ํŒŒ์ผ์ด ์ €์žฅ๋œ ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

์ด์ œ, ์‹คํ–‰ํŒŒ์ผ์„ ๋งŒ๋“ค์–ด์ค„๊ฑด๋ฐ  [์ถœ๋ ฅํŒŒ์ผ_์ด๋ฆ„]์— ์›ํ•˜๋Š” ํŒŒ์ผ๋ช…์„ ์ง€์ •ํ•ด์ฃผ๋ฉด ๋œ๋‹ค.

$ gcc -o [์ถœ๋ ฅํŒŒ์ผ_์ด๋ฆ„] [์†Œ์ŠคํŒŒ์ผ_์ด๋ฆ„]

์ฝ”๋“œ ์ž‘์„ฑ ํ›„, ํŒŒ์ผ ๋ชฉ๋ก์„ ๋ณด๋ฉด test ์ด๋ฆ„์˜ Object ํŒŒ์ผ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

ํŒŒ์ผ์„ ์‹คํ–‰์‹œํ‚ค๊ธฐ ์œ„ํ•ด์„œ ์•„๋ž˜์™€ ๊ฐ™์ด ์ž‘์„ฑํ•ด์ฃผ๋ฉด 

$ ./[์ถœ๋ ฅํŒŒ์ผ_์ด๋ฆ„]

ํŒŒ์ผ์ด ์ •์ƒ์ ์œผ๋กœ ๋™์ž‘๋˜๋Š” ๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

 

+ ์ฒ˜์Œ์— gcc -o test test.c๋ฅผ ์ž…๋ ฅํ–ˆ์„ ๋•Œ, 'fatal error : stdio.h : No such file or directory' ๋ผ๊ณ  ์˜ค๋ฅ˜ ๋ฉ”์„ธ์ง€๊ฐ€ ๋– ์„œ

$ sudo apt-get install libc6-dev

ํ•ด๋‹น ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ–ˆ๋”๋‹ˆ ์ปดํŒŒ์ผ์ด ์ •์ƒ์ ์œผ๋กœ ๋˜์—ˆ๋‹ค.

728x90
Comments