์ „์ฒด ๊ธ€

์ „์ฒด ๊ธ€

    [Python] setup.py์™€ requirements.txt์˜ ์ฐจ์ด์ ๊ณผ ์‚ฌ์šฉ๋ฐฉ๋ฒ•

    ํŒŒ์ด์ฌ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๋Š” Pypi์—์„œ ์ฐพ์„ ์ˆ˜ ์žˆ๋‹ค. ๊ฐ๊ฐ์˜ ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ๊ฐ€ ์ œ๊ณต๋  ๋•Œ ๋ฌธ์ œ์—†์ด ๋ฐฐํฌ๋  ์ˆ˜ ์žˆ๋„๋ก ํŒจํ‚ค์ง€๋Š” ์ผ๋ จ์˜ ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ํฌํ•จํ•˜๊ฒŒ ๋œ๋‹ค. ์ด ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋Š” ๋ช…์นญ, ๋ฒ„์ „, ์˜์กด์„ฑ ๋“ฑ์„ ์ ๊ฒŒ๋œ๋‹ค. ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋ฉ”ํƒ€๋ฐ์ดํ„ฐ๋ฅผ ์ž‘์„ฑํ•  ์ˆ˜ ์žˆ๋„๋ก ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํ˜•์‹์„ setup.py ํŒŒ์ผ์—์„œ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. from setuptools import setup setup( name="MyLibrary", version="1.0", install_requires=[ "requests", "bcrypt", ], ) ์ด ๋ช…์„ธ์—๋Š” ์ด ์˜์กด์„ฑ์„ ์–ด๋””์—์„œ ๊ฐ€์ ธ์™€ ํ•ด๊ฒฐํ•ด์•ผ ํ•˜๋Š”์ง€์— ๋Œ€ํ•ด์„œ๋Š” ์ ํ˜€์žˆ์ง€ ์•Š๋‹ค. ๋‹จ์ˆœํžˆ requests, bcrypt๋ผ๊ณ ๋งŒ ์ ํ˜€์žˆ๊ณ  ์ด ์˜์กด์„ฑ์ด ์œ„์น˜ํ•˜๊ณ  ์žˆ๋Š” URL๋„ ํŒŒ์ผ ๊ฒฝ๋กœ๋„ ์กด์žฌํ•˜์ง€ ์•Š๋Š”..

    [Linux System Programming] Makefile ๊ธฐ์ดˆ, ๋ณ€์ˆ˜, ์ƒ์„ฑ ๊ทœ์น™, ์žฌ๊ท€, ํ•จ์ˆ˜...

    [Linux System Programming] Makefile ๊ธฐ์ดˆ, ๋ณ€์ˆ˜, ์ƒ์„ฑ ๊ทœ์น™, ์žฌ๊ท€, ํ•จ์ˆ˜...

    ๐ŸŒˆ ์‹œ์ž‘ํ•˜๊ธฐ Makefile์€ ํฐ ํ”„๋กœ๊ทธ๋žจ์˜ ์–ด๋Š ๋ถ€๋ถ„์„ ๋‹ค์‹œ ์ปดํŒŒ์ผํ•ด์•ผ ํ•˜๋Š”์ง€ ๊ฒฐ์ •ํ•˜๋Š” ๋ฐ ์‚ฌ์šฉ๋œ๋‹ค. ๋Œ€๋ถ€๋ถ„์˜ ๊ฒฝ์šฐ C ๋˜๋Š” C++ ํŒŒ์ผ์ด ์ปดํŒŒ์ผ๋œ๋‹ค. ๋‹ค๋ฅธ ์–ธ์–ด์—๋Š” ์ผ๋ฐ˜์ ์œผ๋กœ Make์™€ ์œ ์‚ฌํ•œ ๋ชฉ์ ์„ ์ˆ˜ํ–‰ํ•˜๋Š” ์ž์ฒด ๋„๊ตฌ๊ฐ€ ์žˆ๋‹ค. Make๋Š” ๋ณ€๊ฒฝ๋œ ํŒŒ์ผ์— ๋”ฐ๋ผ ์ผ๋ จ์˜ ์ง€์นจ์„ ์‹คํ–‰ํ•ด์•ผ ํ•˜๋Š” ๊ฒฝ์šฐ ์ปดํŒŒ์ผ์„ ๋„˜์–ด์„œ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค. ๋‹ค์Œ์€ Make๋กœ ๋นŒ๋“œํ•  ์ˆ˜ ์žˆ๋Š” ์ข…์„์„ฑ ๊ทธ๋ž˜ํ”„์˜ ์˜ˆ์ด๋‹ค. ํŒŒ์ผ์˜ ์ข…์†์„ฑ์ด ๋ณ€๊ฒฝ๋˜๋ฉด ํŒŒ์ผ์ด ๋‹ค์‹œ ์ปดํŒŒ์ผ๋œ๋‹ค. C/C++ ๋Œ€์ฒด ๋นŒ๋“œ ์‹œ์Šคํ…œ์€ SCons, CMake, Bazel, Ninja๋‹ค. Visual Studio์™€ ๊ฐ™์€ ์ผ๋ถ€ ํŽธ์ง‘๊ธฐ์—๋Š” ์ž์ฒด ๋นŒ๋“œ ๋„๊ตฌ๊ฐ€ ์žˆ๋‹ค. Java์˜ ๊ฒฝ์šฐ Ant, Maven, Gradle์ด ์žˆ๋‹ค. Go ๋ฐ Rust์™€ ๊ฐ™์€ ๋‹ค๋ฅธ ์–ธ์–ด์—๋Š” ์ž์ฒด ๋นŒ๋“œ ๋„๊ตฌ๊ฐ€..