Mac Visual Studio Code์—์„œ ๋””๋ฒ„๊น… ์„ค์ •ํ•˜๊ธฐ

2021. 7. 18. 20:31ใ†C

[7์›” 19์ผ ์ˆ˜์ •(1)]

+) ์•„๋ž˜ ๋‚ด์šฉ์„ ํฌ์ŠคํŒ…ํ•œ ๋’ค์— ๋‹ค๋ฅธ ํŒŒ์ผ์—์„œ ๋””๋ฒ„๊น…์„ ์ง„ํ–‰ํ•˜๋Š”๋ฐ ๋˜ ๋‹ค์‹œ ๋ธŒ๋ ˆ์ดํฌ ํฌ์ธํŠธ๊ฐ€ ์ „ํ˜€ ๋จนํžˆ์งˆ ์•Š์•˜์Šต๋‹ˆ๋‹ค. ์•„๋งˆ ์ œ๊ฐ€ launch.jsonํŒŒ์ผ์— ๋Œ€ํ•œ ์ดํ•ด๊ฐ€ ๋ถ€์กฑํ•ด์„œ ๊ทธ๋žฌ๋˜ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค.

 

๋‚˜์ค‘์— ์ œ๊ฐ€ ์–ด๋–ค ๋ถ€๋ถ„์„ ์ž˜๋ชปํ•˜์˜€๋Š”์ง€ ๋‹ค์‹œ ํ™•์ธํ•˜๊ธฐ ์œ„ํ•ด์„œ ์•„๋ž˜ ๋ถ€๋ถ„๋„ ๋‚จ๊ฒจ๋‘๊ณ , ์ƒ๋‹จ์— ์ƒˆ๋กญ๊ฒŒ ๊ธฐ๋ก์šฉ์œผ๋กœ ๋””๋ฒ„๊น… ์„ค์ •์„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

 

<CodeLLDB ํ™•์žฅ ํ”„๋กœ๊ทธ๋žจ ์„ค์น˜>

 

์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•œ ๋’ค, ์œ„ ๊ทธ๋ฆผ์—์„œ 'Quick Start'๋ผ๊ณ  ํ‘œ์‹œ๋œ ํ•˜๋‹จ ๋ถ€๋ถ„์„ ๋ณต์‚ฌํ•ด์„œ launch.json ํŒŒ์ผ์—์„œ ๋ณต์‚ฌ ๋ถ™์—ฌ๋„ฃ๊ธฐ ํ•ด์ค€๋’ค,

<my program> ์ด๋ผ๊ณ  ์ ํžŒ ๋ถ€๋ถ„์„ ${fileBasenameNoExtension}์œผ๋กœ ๋ฐ”๊พธ์–ด์ค๋‹ˆ๋‹ค.

๋ฐ”๊พผ ๊ฒฐ๊ณผ

<Clang์œผ๋กœ ๋นŒ๋“œ & ๋””๋ฒ„๊ทธ>

์ด๋ ‡๊ฒŒ ์•„๋ฌด ๋ฌธ์ œ ์—†์ด, ์ œ๊ฐ€ ์›ํ•˜๋Š”๋Œ€๋กœ ์ž…์ถœ๋ ฅ๋„ ์ž์œ ๋กญ๊ฒŒ ๋˜๊ณ  ๋ธŒ๋ ˆ์ดํฌ ํฌ์ธํŠธ๋„ ๋ชจ๋‘ ๊ฑธ๋ฆฌ๋Š” ๊ฒƒ์„ ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.!!!! ๋“œ๋””์–ด ํ•ด๊ฒฐ ใ… ใ… ~~~!

 

 


์•„๋ž˜๋Š” ์›๋ณธ ๊ธ€์ž…๋‹ˆ๋‹ค

๋”๋ณด๊ธฐ

๋ฐฑ์ค€ ์ •๋ ฌ ๋ฌธ์ œ๋ฅผ ํ’€์–ด๋ณด๋ ค๊ณ  ํ•˜๋‹ˆ ํŒŒ์ด์ฌ์˜ ํŠน์ง•(์‹œ๊ฐ„ ์ดˆ๊ณผ)์ด ๊ฑฑ์ • ๋ผ์„œ ์˜ค๋žœ๋งŒ์— C๋‚˜ C++๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  VSCode์—์„œ CํŒŒ์ผ์„ ๋งŒ๋“ค๊ณ  ๋””๋ฒ„๊น…์„ ์ง„ํ–‰ํ–ˆ๋Š”๋ฐ, ์•„๋ฌด๊ฒƒ๋„ ๋˜์งˆ ์•Š์•˜์Šต๋‹ˆ๋‹ค ^^..

 

์‹ฌ์ง€์–ด ์ฒ˜์Œ์—๋Š” C/C++ extension ๊ฒฝ๋กœ๋ถ€ํ„ฐ ์ž˜๋ชป๋˜์—ˆ๋‹ค๊ณ  ๋–ด์Šต๋‹ˆ๋‹ค. ๊ทธ๋Ÿด๋ฆฌ๊ฐ€..? ์—†๋Š”๋ฐ.. ํ•˜๋ฉด์„œ ์ด๋ž˜์ €๋ž˜ ๊ตฌ๊ธ€๋ง๋„ ํ•˜๊ณ  ์„ค์น˜๋„ ํ•˜๋ฉด์„œ ํ•ด๊ฒฐํ•œ ๋‚ด์šฉ์„ ๋ธ”๋กœ๊ทธ์—๋„ ๊ธฐ๋กํ•ฉ๋‹ˆ๋‹ค.

 

์šฐ์„  ์•„์˜ˆ #include <stdio.h>๋‚˜ #include <iostream> ๊ฒฝ๋กœ๊ฐ€ ์ž˜๋ชป๋˜์—ˆ๋‹ค๊ณ  ๋œฌ๋‹ค๋ฉด -> xcode-select --install ๋ช…๋ น์–ด๋กœ ์„ค์น˜๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์ž ๊น ๊ตฌ๊ธ€๋งํ•ด๋ณธ ๋ฐ”๋กœ๋Š” OS ์—…๋ฐ์ดํŠธ ์‹œ ์ˆ˜๋™ ์—…๋ฐ์ดํŠธ๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ๊ฐ€ ์ƒ๊ธด๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.(๋ถ„๋ช… ์˜ˆ์ „์—๋Š” C, C++์ด ๋ฌธ์ œ ์—†์ด ๋Œ์•„๊ฐ”์—ˆ๊ธฐ ๋•Œ๋ฌธ์— ๋‹นํ™ฉํ–ˆ์—ˆ์Šต๋‹ˆ๋‹ค ใ… ..)

์ด๋ฏธ ์„ค์น˜๊ฐ€ ๋‹ค ๋˜์–ด ์žˆ๋‹ค๋ฉด ์ด ๋ฌธ์ œ๊ฐ€ ์•„๋‹ˆ๋ผ ๋‹ค๋ฅธ ๊ณณ์—์„œ ๋ฌธ์ œ๊ฐ€ ์žˆ์„ ํ™•๋ฅ ์ด ๋†’์Šต๋‹ˆ๋‹ค.

 

๊ทธ ํ›„์—๋Š” json ํŒŒ์ผ์„ ๋งŒ์ ธ์ค˜์•ผ ํ•ฉ๋‹ˆ๋‹ค.

์šฐ์„  ๊ฐ„๋‹จํ•˜๊ฒŒ c ํŒŒ์ผ์„ ํ•˜๋‚˜ ๋งŒ๋“ค์–ด๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

 

 

<tasks.json ํŒŒ์ผ ์„ค์ •>

์•„๋ž˜์— ๋งˆ์šฐ์Šค ๋“œ๋ž˜๊ทธ๋ฅผ ํ•ด ๋‘” ๋ถ€๋ถ„์„ ์ถ”๊ฐ€ํ•ด์ค๋‹ˆ๋‹ค.

{
  "label": "EXE",
  "type" :"shell",
  "command": "${fileDirname}/${fileBasenameNoExtension}",
  "group": "build",
  "problemMatcher": [
      "$gcc"
  ]
 }
๋”๋ณด๊ธฐ

 

 

<launch.json ํŒŒ์ผ ์„ค์ •>

launch.json์—์„œ๋„ "program": ์— ์ ํžŒ ๋‚ด์šฉ์„ ์‚ด์ง ๋ณ€๊ฒฝํ•ด์ค๋‹ˆ๋‹ค.

"${workspaceFolder}/${fileBasenameNoExtension}",
๋”๋ณด๊ธฐ

 

<์‹คํ–‰ & ๋””๋ฒ„๊น…>

EXE ํŒŒ์ผ๋กœ ๋นŒ๋“œ๋ฅผ ์ง„ํ–‰ํ•ฉ๋‹ˆ๋‹ค.

 

๋””๋ฒ„๊น…์ด ์ง„ํ–‰๋˜๋Š”๊ฒƒ์„ ํ™•์ธํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

 

 

 

-ํ™•์‹ ์ด ์—†๋Š” ๋ธ”๋กœ๊ทธ ๊ธ€์ž…๋‹ˆ๋‹ค ใ… ! ๊ฐœ์ธ ๊ธฐ๋ก์šฉ์œผ๋กœ ๋‚จ๊ฒจ๋‘” ๊ฒƒ์ด๋ผ ๋”ฐ๋ผํ•˜์‹ค ์ˆ˜๋Š” ์žˆ์„๊ฑฐ๋ผ๊ณ  ์ƒ๊ฐ์ด ๋“ค์ง€๋งŒ ๋งน์‹ ํ•˜์ง€๋Š” ๋ง์•„์ฃผ์„ธ์š” ใ… ใ… -