์ ์ฒด ๊ธ
[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 ๊ธฐ์ด, ๋ณ์, ์์ฑ ๊ท์น, ์ฌ๊ท, ํจ์...
๐ ์์ํ๊ธฐ Makefile์ ํฐ ํ๋ก๊ทธ๋จ์ ์ด๋ ๋ถ๋ถ์ ๋ค์ ์ปดํ์ผํด์ผ ํ๋์ง ๊ฒฐ์ ํ๋ ๋ฐ ์ฌ์ฉ๋๋ค. ๋๋ถ๋ถ์ ๊ฒฝ์ฐ C ๋๋ C++ ํ์ผ์ด ์ปดํ์ผ๋๋ค. ๋ค๋ฅธ ์ธ์ด์๋ ์ผ๋ฐ์ ์ผ๋ก Make์ ์ ์ฌํ ๋ชฉ์ ์ ์ํํ๋ ์์ฒด ๋๊ตฌ๊ฐ ์๋ค. Make๋ ๋ณ๊ฒฝ๋ ํ์ผ์ ๋ฐ๋ผ ์ผ๋ จ์ ์ง์นจ์ ์คํํด์ผ ํ๋ ๊ฒฝ์ฐ ์ปดํ์ผ์ ๋์ด์๋ ์ฌ์ฉํ ์ ์๋ค. ๋ค์์ Make๋ก ๋น๋ํ ์ ์๋ ์ข ์์ฑ ๊ทธ๋ํ์ ์์ด๋ค. ํ์ผ์ ์ข ์์ฑ์ด ๋ณ๊ฒฝ๋๋ฉด ํ์ผ์ด ๋ค์ ์ปดํ์ผ๋๋ค. C/C++ ๋์ฒด ๋น๋ ์์คํ ์ SCons, CMake, Bazel, Ninja๋ค. Visual Studio์ ๊ฐ์ ์ผ๋ถ ํธ์ง๊ธฐ์๋ ์์ฒด ๋น๋ ๋๊ตฌ๊ฐ ์๋ค. Java์ ๊ฒฝ์ฐ Ant, Maven, Gradle์ด ์๋ค. Go ๋ฐ Rust์ ๊ฐ์ ๋ค๋ฅธ ์ธ์ด์๋ ์์ฒด ๋น๋ ๋๊ตฌ๊ฐ..