Libsass: facepalm: $(PREFIX)/lib๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ค์น˜๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

์— ๋งŒ๋“  2018๋…„ 11์›” 12์ผ  ยท  13์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: sass/libsass

$(PREFIX)/lib๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ค์น˜๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

[stephan<strong i="6">@host</strong>:~/cvs/libsass]$ m install PREFIX=$HOME
mkdir /home/stephan/lib
mkdir: cannot create directory โ€˜/home/stephan/libโ€™: File exists
Makefile:263: recipe for target '/home/stephan/lib' failed
make: *** [/home/stephan/lib] Error 1

์ˆ˜์ •์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. mkdir -p ๋Œ€์‹  mkdir .

์ด๊ฒƒ์€ #1992์™€ ๊ฐ™์ง€๋งŒ ๊ทธ ํ‹ฐ์ผ“์€ ๋ถˆ๊ฐ€ํ•ญ๋ ฅ์ ์œผ๋กœ ๋‹ซํ˜€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถ”์‹ : autotools ์ƒ์„ฑ ๋นŒ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•  ๋•Œ autoconf ๋ฅผ ์‹คํ–‰ํ•˜์—ฌ configure.ac ๋ฅผ configure ๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ๊ฒฐ๊ณผ ./configure ๊ฐ€ ๋‹ค์Œ๊ณผ ๊ฐ™์€ ์ด์œ ๋กœ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

[stephan<strong i="18">@host</strong>:~/cvs/libsass]$ ./configure --prefix=$HOME
configure: error: cannot find install-sh, install.sh, or shtool in script "."/script

๋”ฐ๋ผ์„œ autotools(์ผ๋ช… GNU "Auto, my ass!" Tools)์— ์˜ํ•ด ์ƒ์„ฑ๋œ ๊ฒƒ์ด ์•„๋‹ˆ๋ผ ํŠธ๋ฆฌ์— ์ฒดํฌ์ธ๋œ ๋ฉ”์ดํฌํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  13 ๋Œ“๊ธ€

mkdir์„ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์ด ์—ฌ๋Ÿฌ ๋ฒˆ ์ œ๊ธฐ๋˜์—ˆ์œผ๋ฉฐ ๊ทธ๋ ‡์ง€ ์•Š๊ธฐ ๋•Œ๋ฌธ์— ๊ฑฐ๋ถ€๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๊ฐ€์ง€๊ณ  ๋‹ค๋‹ ์ˆ˜ ์žˆ๋Š”. ์šฐ๋ฆฌ๋Š” ์ด์‹ ๊ฐ€๋Šฅํ•œ ์†”๋ฃจ์…˜์— ์—ด๋ ค ์žˆ์Šต๋‹ˆ๋‹ค.

2018๋…„ 11์›” 12์ผ ์›”์š”์ผ ์˜คํ›„ 6์‹œ 55๋ถ„ Stephan Beal < [email protected] ์ž‘์„ฑ:

$(PREFIX)/lib๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๊ธฐ ๋•Œ๋ฌธ์— ์„ค์น˜๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

[ stephan@host :~/cvs/libsass]$ m ์„ค์น˜ PREFIX=$HOME
mkdir /home/stephan/lib
mkdir: '/home/stephan/lib' ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•  ์ˆ˜ ์—†์Œ: ํŒŒ์ผ์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.
Makefile:263 : ๋Œ€์ƒ '/home/stephan/lib'์— ๋Œ€ํ•œ ๋ ˆ์‹œํ”ผ๊ฐ€ ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.
make: * [/home/stephan/lib] ์˜ค๋ฅ˜ 1

์ˆ˜์ •์€ ๊ฐ„๋‹จํ•ฉ๋‹ˆ๋‹ค. mkdir ๋Œ€์‹  mkdir -p๋ฅผ ์‚ฌ์šฉํ•˜์‹ญ์‹œ์˜ค.

์ด๊ฒƒ์€ #1992 https://github.com/sass/libsass/issues/1992 ์™€ ๋™์ผํ•ฉ๋‹ˆ๋‹ค.
๊ทธ๋Ÿฌ๋‚˜ ๊ทธ ํ‹ฐ์ผ“์€ ์„ค๋ช…ํ•  ์ˆ˜ ์—†์„ ์ •๋„๋กœ ๋‹ซํ˜€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ถ”์‹ : autotools ์ƒ์„ฑ ๋นŒ๋“œ๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๊ณ  ํ•  ๋•Œ autoconf๋ฅผ ์‹คํ–‰ํ•˜์—ฌ
configure.ac๋ฅผ ๊ตฌ์„ฑ์œผ๋กœ ๋ณ€ํ™˜ํ•˜๋ฉด ๊ฒฐ๊ณผ ./configure๊ฐ€ ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.
์™œ๋ƒํ•˜๋ฉด:

[ stephan@host :~/cvs/libsass]$ ./configure --prefix=$HOME
๊ตฌ์„ฑ: ์˜ค๋ฅ˜: ์Šคํฌ๋ฆฝํŠธ "."/script์—์„œ install-sh, install.sh ๋˜๋Š” shtool์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

๋”ฐ๋ผ์„œ ๋‚˜๋Š” ํŠธ๋ฆฌ์— ์ฒดํฌ์ธ ๋œ ๋ฉ”์ดํฌ ํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
autotools์— ์˜ํ•ด ์ƒ์„ฑ๋œ ๊ฒƒ(GNU "Auto, my ass!" ๋„๊ตฌ๋ผ๊ณ ๋„ ํ•จ).

โ€”
์ด ์Šค๋ ˆ๋“œ์— ๊ฐ€์ž…ํ–ˆ๊ธฐ ๋•Œ๋ฌธ์— ์ด ๋ฉ”์‹œ์ง€๋ฅผ ๋ฐ›๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/sass/libsass/issues/2727 ๋˜๋Š” ์Šค๋ ˆ๋“œ ์Œ์†Œ๊ฑฐ
https://github.com/notifications/unsubscribe-auth/AAjZWC46FJREYZk3iPIdWpGiuKuKlkJ4ks5uuSlkgaJpZM4YZIEz
.

ํ™•์‹คํžˆ mkdir -p ๋Š” ๋‹จ์ˆœํžˆ ๋ชจ๋“  ํ”Œ๋žซํผ์— ์„ค์น˜ํ•˜์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ๋ณด๋‹ค ์ด์‹์„ฑ์ด ๋” ์ข‹์Šต๋‹ˆ๊นŒ?

autotools ๋งค๋‰ด์–ผ์—์„œ ๊ฐ€์ ธ์˜จ ํœด๋Œ€์šฉ ์†”๋ฃจ์…˜์€ ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

libsass ์ฒดํฌ์•„์›ƒ์—์„œ:

autoreconf --install
...
configure.ac:15: installing 'script/install-sh'
...
[stephan<strong i="7">@host</strong>:~/cvs/libsass]$ l ./script/install-sh
-rwxr-xr-x 1 stephan stephan 15155 Nov 12 10:07 ./script/install-sh

๊ทธ ์„ค์น˜ ์Šคํฌ๋ฆฝํŠธ๋Š” ๊ฐ€๋Šฅํ•œ ํ•œ ์ด์‹ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค. (๊ทธ ํŒŒ์ผ์„ ์ œ์™ธํ•˜๊ณ  ๋ชจ๋“  autoreconf ์ถœ๋ ฅ์„ ๋ฒ„๋ฆฌ๊ณ  ํ•ด๋‹น ํŒŒ์ผ์„ ์ฒดํฌ์ธํ•˜์‹ญ์‹œ์˜ค.)

ํฅ๋ฏธ๋กญ๊ฒŒ๋„ mkdir -p (POSIX mkdir์— ์˜ํ•ด ๋ช…์‹œ์ ์œผ๋กœ ์ง€์ •๋จ)๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ ๋‹ค์–‘ํ•œ ์ด์‹์„ฑ ๋ฌธ์ œ๋„ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค.

์ด์‹์„ฑ: ์†Œ์Šค ์ฝ”๋“œ๊ฐ€ C++0x๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ๋น„๊ต์  ์ตœ๊ทผ ํ”Œ๋žซํผ(10๋…„ ๋ฏธ๋งŒ)์—์„œ ์ปดํŒŒ์ผ๋ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ๋Ÿฌํ•œ ๋ชจ๋“  ํ”Œ๋žซํผ์ด mkdir -p ์ง€์›ํ•œ๋‹ค๊ณ  ๋‚ด ์™ผ์ชฝ ๊ณ ํ™˜์— ๊ฑธ์—ˆ์Šต๋‹ˆ๋‹ค.

๋ชจ๋“  ๊ฒƒ์€ ์ด์ „์˜ ๋ชจ๋“  ๋ฌธ์„œ์—์„œ ์—ฌ๋Ÿฌ ๋ฒˆ ์ž์„ธํžˆ ์„ค๋ช…๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
๋‹ซํžŒ ๋ฌธ์ œ. ์šฐ๋ฆฌ๋Š” ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•˜๋Š” ํ™๋ณด๋ฅผ ๊ณ ๋ คํ•  ๊ฒƒ์ž…๋‹ˆ๋‹ค
์ด์ „์— ์ œ๊ธฐ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.

2018๋…„ 11์›” 12์ผ ์›”์š”์ผ ์˜คํ›„ 8:13 Stephan Beal < [email protected] ์ž‘์„ฑ:

์ด์‹์„ฑ: ์†Œ์Šค ์ฝ”๋“œ๋Š” C++0x๋ฅผ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
๋น„๊ต์  ์ตœ๊ทผ์˜ ํ”Œ๋žซํผ(10๋…„ ๋ฏธ๋งŒ)์—์„œ ์ปดํŒŒ์ผํ•ฉ๋‹ˆ๋‹ค. ๋‚˜๋Š” ๋‚ด๊ธฐํ•  ๊ฒƒ์ด๋‹ค
๊ทธ๋Ÿฌํ•œ ๋ชจ๋“  ํ”Œ๋žซํผ์ด mkdir -p๋ฅผ ์ง€์›ํ•œ๋‹ค๋Š” ๋‚ด ์™ผ์ชฝ ๊ณ ํ™˜.

โ€”
๋‹น์‹ ์ด ๋Œ“๊ธ€์„ ๋‹ฌ์•˜๊ธฐ ๋•Œ๋ฌธ์— ์ด๊ฒƒ์„ ๋ฐ›๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.
์ด ์ด๋ฉ”์ผ์— ์ง์ ‘ ๋‹ต์žฅํ•˜๊ณ  GitHub์—์„œ ํ™•์ธํ•˜์„ธ์š”.
https://github.com/sass/libsass/issues/2727#issuecomment-437808279 ๋˜๋Š” ์Œ์†Œ๊ฑฐ
์Šค๋ ˆ๋“œ
https://github.com/notifications/unsubscribe-auth/AAjZWDztL9XVhyClKwxTr7QVoEu2Oie3ks5uuTvQgaJpZM4YZIEz
.

@xzyfer ์ข…๋ฃŒ๋œ ๋ฌธ์ œ์— ์—ฐ๊ฒฐํ•ด ์ฃผ์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ? #1992๋Š” ๊ทธ๊ฒƒ์— ๋Œ€ํ•ด ๋…ผ์˜ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

mkdir -p ์ง€์›์€ POSIX ์š”๊ตฌ ์‚ฌํ•ญ์ด๊ธฐ ๋•Œ๋ฌธ์— ๋น„ ์ด์‹์„ฑ ์ฃผ์žฅ์„ ์ดํ•ดํ•˜๊ธฐ ์œ„ํ•ด ํ† ๋ก ์„ ์ฝ๊ณ  ์‹ถ์Šต๋‹ˆ๋‹ค. http://pubs.opengroup.org/onlinepubs/9699919799/utilities/mkdir.html

autoconf ์˜ํ•ด ์ƒ์„ฑ๋œ ์„ค์น˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ํ•ด๊ฒฐ๋˜์ง€ _์•Š์€_ ์ œํ•œ ์‚ฌํ•ญ์€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ? ์ด ํ”„๋กœ์ ํŠธ๋Š” autotools ๋ฅผ ์‚ฌ์šฉํ•˜๋ฏ€๋กœ ๋„๊ตฌ ์ง‘ํ•ฉ์ด ์ง€์›ํ•˜๋Š” ํ”Œ๋žซํผ์œผ๋กœ์˜ ์ด์‹์„ฑ์ด ์ œํ•œ๋ฉ๋‹ˆ๋‹ค. ๋”ฐ๋ผ์„œ autotool's ์„ค์น˜ ์Šคํฌ๋ฆฝํŠธ๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์ œ๊ณต๋œ ๋ฉ”์ดํฌํŒŒ์ผ์„ ์‚ฌ์šฉํ•˜์—ฌ ํ”„๋กœ์ ํŠธ๋ฅผ ๊ตฌ์ถ•ํ•  ์ˆ˜ ์žˆ๋Š” ๋ชจ๋“  ํ”Œ๋žซํผ์— ๋Œ€ํ•ด ๊ฐ€์žฅ ์ž์—ฐ์Šค๋Ÿฝ๊ณ  ์ด์‹ ๊ฐ€๋Šฅํ•œ ์†”๋ฃจ์…˜์ž…๋‹ˆ๋‹ค.

@sgbeal ์—ฌ์ „ํžˆ ๋ฌธ์ œ๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†์ง€๋งŒ Makefile์„ ์ž์„ธํžˆ ์‚ดํŽด๋ณด๋ฉด Windows๋ฅผ ์ง€์›ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ๋ณด์ž…๋‹ˆ๋‹ค. Windows์—์„œ mkdir ์€ -p ์ง€์›ํ•˜์ง€ ์•Š๋Š” md ์˜ ๋ณ„์นญ์ž…๋‹ˆ๋‹ค.

Windows์™€ ๋น„ Windows์—์„œ MKDIR ๋‹ค๋ฅด๊ฒŒ ์„ค์ •ํ•˜๋Š” PR์„ ๋ณด๋‚ด์‹œ๊ฒ ์Šต๋‹ˆ๊นŒ?

์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜์— ์žˆ์Šต๋‹ˆ๋‹ค. ๋‚˜๋Š” ๊ทธ ๋ฌธ์ œ์— ๋Œ€ํ•ด ์ž˜ ์•Œ์ง€๋Š” ๋ชปํ•˜์ง€๋งŒ ๋‚˜๋Š” ๊ทธ๊ฒƒ์ด ๊ณ„์†ํ•ด์„œ ์ผ์–ด๋‚˜๋Š” ๊ฒƒ์„ ๋ณด์•˜๋‹ค.

https://github.com/sass/libsass/pull/795#discussion_r22396485
https://github.com/sass/libsass/pull/2486
https://github.com/sass/libsass/pull/2109
https://github.com/sass/libsass/issues/1433
https://github.com/sass/libsass/pull/1365#issuecomment -123325642

@glebm "Windows"๊ฐ€ ๋ฌด์—‡์ž…๋‹ˆ๊นŒ?

๋นŒ๋“œ๋Š” autotools๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ autotools์™€ ํ•จ๊ป˜ ๋ฐฐํฌ๋˜๋Š” install-sh๋ฅผ "์ •๋ง ์‚ฌ์šฉํ•ด์•ผ" ํ•ฉ๋‹ˆ๋‹ค. _that_ ์„ค์น˜ ํ”„๋กœ๊ทธ๋žจ์ด ์ถฉ๋ถ„ํžˆ ์ด์‹ ๊ฐ€๋Šฅํ•˜์ง€ ์•Š์€ ๊ฒฝ์šฐ autotools๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒƒ์€ ์†์‹ค๋œ ์›์ธ์ž…๋‹ˆ๋‹ค.

@sgbeal ์ฒดํฌ ์ธ๋œ Makefile์€ autotools์— ์˜ํ•ด ์ƒ์„ฑ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. autotools๋ฅผ ์‚ฌ์šฉํ•  ์ˆ˜ ์—†์„ ๋•Œ ๋นŒ๋“œํ•˜๋Š” ๋Œ€์ฒด ๋ฐฉ๋ฒ•์ž…๋‹ˆ๋‹ค(์˜ˆ: Ruby ๋˜๋Š” Python์šฉ C ํ™•์žฅ์„ ์œ„ํ•ด ์ปดํŒŒ์ผํ•  ๋•Œ).

์ด ๊ฒฝ์šฐ "Windows"๋Š” gcc ๋ฐ gmake๊ฐ€ ์žˆ์ง€๋งŒ CMD์—์„œ ์‹คํ–‰ ์ค‘์ธ ๊ฒฝ์šฐ์ž…๋‹ˆ๋‹ค(์˜ˆ: Cygwin Bash ๋˜๋Š” ์œ ์‚ฌํ•œ POSIX ํ™˜๊ฒฝ๊ณผ ๋ฐ˜๋Œ€).

๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ๋‚ด #2728 PR์ด ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•œ๋‹ค๊ณ  ์ƒ๊ฐํ•ฉ๋‹ˆ๋‹ค. PR make ๋Š” ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ๋” ์ด์ƒ ๋งŒ๋“ค๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€ ์•Š์•„์•ผ ํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค.

@xzyfer ๊ฐ์‚ฌํ•ฉ๋‹ˆ๋‹ค! ์ด๊ฒƒ์€ ํŠนํžˆ Windows ํ˜ธํ™˜์„ฑ์— ๊ด€ํ•œ ๊ฒƒ์ด๋ผ๊ณ  ์ƒ๊ฐํ•œ ๊ฒƒ ๊ฐ™์Šต๋‹ˆ๋‹ค. make ๊ฐ€ ์ด๋ฏธ ์กด์žฌํ•˜๋Š” ๋””๋ ‰ํ† ๋ฆฌ๋ฅผ ์ƒ์„ฑํ•˜๋ ค๊ณ  ์‹œ๋„ํ•˜์ง€ ๋ชปํ•˜๋„๋ก ํ•˜๋Š” #2728์„ ๋ณด๋ƒˆ์Šต๋‹ˆ๋‹ค.

@glebm ์ง„์‹ฌ์œผ๋กœ ์‚ฌ๊ณผํ•ฉ๋‹ˆ๋‹ค. 'Windows'๋ž€ ๋ฌด์—‡์ธ๊ฐ€'๋Š” ์†”์งํ•œ ์งˆ๋ฌธ์ด ์•„๋‹ˆ๋ผ

์ด ํŽ˜์ด์ง€๊ฐ€ ๋„์›€์ด ๋˜์—ˆ๋‚˜์š”?
0 / 5 - 0 ๋“ฑ๊ธ‰