GPL: ๊ฐ๋ฐ์, ๋์์ด๋, ์ฌ์ฉ์ ๋ฑ์ ๊ถ๋ฆฌ์ ์๋ฌด¶
์ด ๋ฌธ์์ ์์ฑ์๋ ๋ฒ์กฐ์ธ์ด ์๋๋ฏ๋ก ํด์์์ ์ค๋ฅ๊ฐ ์์ ์๋ ์์ต๋๋ค.
๋น์ ์ ๋น์ฆ๋์ค์ ์ง๊ฒฐ๋๋ ๋ฌธ์ ๋ผ๋ฉด ์ ์๊ถ ๋ฐ ์คํ์์ค ๋ผ์ด์ ์ค ์ ๋ฌธ ๋ณํธ์ฌ์ ์๋ดํ์๊ธฐ ๋ฐ๋๋๋ค.
์์ฝ¶
๋ผ์ด๋ฏน์ค๋ XE๋ฅผ ๋ฐํ์ผ๋ก ์งํํ๋ ํ๋ก์ ํธ์ด์ง๋ง, XE์ LGPLv2.1 ๋ผ์ด์ ์ค๋ฅผ GPLv2๋ก ๋ณ๊ฒฝํ์์ต๋๋ค.
๊ฐ๋ฐ์์ ๊ถ๋ฆฌ๋ฅผ ๋ค์ ์ ํํจ์ผ๋ก์จ ์ฌ์ฉ์์ ๊ถ๋ฆฌ๋ฅผ ๋์ฑ ๋ณดํธํ๊ธฐ ์ํด์์
๋๋ค.
์ฌ์ฉ์์ ๊ถ๋ฆฌ์ ์๋ฌด¶
Q. GPL ํ๋ก๊ทธ๋จ์ผ๋ก ํํ์ด์ง๋ฅผ ๋ง๋ค๋ฉด ์์ค๋ฅผ ๊ณต๊ฐํด์ผ ํ๋์?
A. ๊ณต๊ฐํ์ง ์์๋ ๋ฉ๋๋ค.
Q. GPL ํ๋ก๊ทธ๋จ์ ์์ค๋ฅผ ๊ณ ์ณ์ ์ด๋ค๋ฉด?
A. ํ์ธ์๊ฒ ๋ฐฐํฌํ์ง ์๊ณ ํผ์์ ์ด๋ค๋ฉด ๊ณ ์น ๋ถ๋ถ์ ๊ณต๊ฐํ์ง ์์๋ ๋ฉ๋๋ค.
Q. GPL ํ๋ก๊ทธ๋จ์ผ๋ก ์์ ์ฉ ํํ์ด์ง๋ฅผ ๋ง๋ค์ด๋ ๋๋์?
A. ๋ค, ๋ฉ๋๋ค. ์์ค๋ฅผ ๊ณต๊ฐํ ํ์๋ ์์ต๋๋ค.
Q. GPL ํ๋ก๊ทธ๋จ์ผ๋ก ๋ง๋ ํํ์ด์ง์ LGPL์ด๋ ์์ ์ฉ ํ๋ก๊ทธ๋จ์ ์ฐ๋์์ผ๋ ๋๋์?
A. ์ฌ์ฉ์๋ ๋ถ์น๊ณ ์ฅ๊ตฌ์น๊ณ ๋ญ ํด๋ ์๊ด์์ต๋๋ค. ๋ง์๋๋ก ์์ด์ ์ฐ์ธ์.
Q. GPL ํ๋ก๊ทธ๋จ์ผ๋ก ๋ง๋ ํํ์ด์ง์ ์ฝํ ์ธ ๋ ๋๊ตฌ์ ๊ฒ์ธ๊ฐ์?
A. ์ฌ๋ฌ๋ถ์ ์ฝํ ์ธ ๋ ์ฌ๋ฌ๋ถ์ ๊ฒ์ ๋๋ค. ๋จ๊ณผ ๊ณต์ ํ๊ณ ์ถ์ผ๋ฉด ๊ณต์ ํ์ ๋ ๋ฉ๋๋ค.
Q. GPL ์ถ๊ฐ ๊ธฐ๋ฅ ๊ฐ๋ฐ์์ ์ฐ๋ฝ์ด ๋์ง ์์์. ๋ค๋ฅธ ๊ฐ๋ฐ์์๊ฒ ์์ ํด ๋ฌ๋ผ๊ณ ํด๋ ๋๋์?
A. ๋ค, ๋ฉ๋๋ค. ์์ ๋ด์ฉ์ ๋ค๋ฅธ ์ฌ๋๋ค๊ณผ ๊ณต์ ํด๋ ๋ฉ๋๋ค.
๊ฐ๋ฐ์์ ๊ถ๋ฆฌ์ ์๋ฌด¶
Q. ๋ผ์ด๋ฏน์ค์ฉ ์ ๋์จ, ๋ชจ๋ ๋ฑ์ ๋ผ์ด์ ์ค ์ ์ฑ ์ ์ด๋ป๊ฒ ํด์ผ ํ๋์?
A. ๋ฌด์กฐ๊ฑด GPL์ด์ด์ผ ํฉ๋๋ค. (LGPL๊ณผ ๋ค๋ฅธ ์ )
Q. ๋ฌด๋ฃ๋ก ๋ฐฐํฌํด์ผ๋ง ํ๋์?
A. ์ ๋ฃ๋ก ํ๋งคํด๋ ๋ฉ๋๋ค. ์๋ง์ ์๋ํ๋ ์ค ํ ๋ง๋ค์ด GPL์ด๋ฉด์๋ ์ ๋ฃ๋ก ํ๋งคํ๊ณ ์์ต๋๋ค.
Q. ์์ค๋ฅผ ๊ณต๊ฐํด์ผ ํ๋์?
A. ๋ถํน์ ๋ค์์๊ฒ ๊ณต๊ฐํ ํ์๋ ์์ต๋๋ค. ๊ตฌ๋งค์์๊ฒ๋ง ์์ค๋ฅผ ์ ๊ณตํ๋ฉด ๋ฉ๋๋ค.
๋จ, ์ํธํ๋ ์ํ๊ฐ ์๋ ์๋ณธ ์์ค ๊ทธ๋๋ก ์ ๊ณตํด์ผ ํฉ๋๋ค. PHP ์
๊ทธ๋ ์ด๋, ๋ผ์ด๋ฏน์ค ์ฝ์ด ์
๊ทธ๋ ์ด๋ ๋ฑ์ผ๋ก ์๋ฃ์ ์ ์ง๋ณด์๊ฐ ํ์ํ ๊ฒฝ์ฐ
๊ตฌ๋งค์๊ฐ ์ง์ ์์ ํ๊ฑฐ๋ ์ 3์์๊ฒ ์๋ขฐํ์ฌ ์์ ํจ์ผ๋ก์จ ์ง์์ ์ธ ์ฌ์ฉ์ ๋ณด์ฅ๋ฐ์ ์ ์์ด์ผ ํ๊ธฐ ๋๋ฌธ์
๋๋ค.
Q. ๋ฐฐํฌํ ์๋ฃ๋ฅผ ๊ณ์ ์ ์ง๋ณด์ํด์ผ ํ ์๋ฌด๊ฐ ๋ฐ์ํ๋์?
A. ๋ฌด๋ฃ๋ก ๋ฐฐํฌํ๋ ๊ฒฝ์ฐ ์ ์ง๋ณด์ ์๋ฌด๊ฐ ์์ต๋๋ค. ์ ๋ฃ๋ก ํ๋งคํ๋ ๊ฒฝ์ฐ ๊ตฌ๋งค์์์ ๊ณ์ฝ์ ๋ฐ๋ฆ ๋๋ค.
Q. ํ์ธ์ ์๋ขฐ๋ฅผ ๋ฐ์ ์ ์ํ ์๋ฃ๋?
A. ์๋ขฐ์๊ฐ ์ฌ์ฉ์์ด๋ฏ๋ก, "์ฌ์ฉ์์ ๊ถ๋ฆฌ์ ์๋ฌด" ๋ถ๋ถ์์ ํ์ธ์๊ฒ ๋ฐฐํฌํ์ง ์๊ณ ํผ์ ์ฐ๋ ๊ฒ๊ณผ ๊ฐ์ ์ํฉ์
๋๋ค.
๊ฐ๋ฐ์์ ์
์ฅ์์๋ 1๋ช
์๊ฒ๋ง ๋ฐฐํฌํ ์
์ด๊ณ ์. ์ฆ, ๊ฐ๋ฐ์์ ์๋ขฐ์ ์ธ์ ์ 3์์๊ฒ ์์ค๋ฅผ ๊ณต๊ฐํ ํ์๋ ์์ต๋๋ค.
(์๋ํ๋ ์ค๋ก ์ฌ์ดํธ๋ฅผ ๋ง๋ค์ด ๋ฉํํ๋๋ผ๋ ์๋ฌด ๋ฌธ์ ๊ฐ ์๋ ๊ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค.)
Q. ๊ตฌ๋งค์๊ฐ ์์ค๋ฅผ ๋ค๋ฅธ ๋ฐ ๋ฟ๋ฆฌ๋ ๊ฒ์ ๋ง์ ์ ์๋์?
A. ๋ง์ ์ ์์ต๋๋ค. (LGPL๊ณผ ๋ค๋ฅธ ์ )
Q. ๋ฌด๋ฃ๋ก ๋ฐฐํฌํ๋ ๊ฑด ์ข์๋ฐ, ๋ค๋ฅธ ์ฌ๋์ด ์์ ํด์ ๋ค์ ๋ฐฐํฌํ๋ ๊ฒ์ ๋ง์ ์ ์๋์?
A. ๋ง์ ์ ์์ต๋๋ค. ๋ฐฐํฌ์์๊ฒ ์ ์ง๋ณด์ ์๋ฌด๊ฐ ์๋ ๋งํผ,
๋ค๋ฅธ ์ฌ๋์ด ๋์์ ์ ์ง๋ณด์ํ๊ฒ ๋ค๋ ๊ฒ์ ๋ง์ ๊ถ๋ฆฌ๋ ์๊ธฐ ๋๋ฌธ์
๋๋ค.
Q. ๊ทธ๋ฌ๋ฉด ๊ตฌ์ ํ์ง ์์ ๋ณต์ ํ์ด ๋ง๊ตฌ ๋์๋ค๋ ๋ ์ ์ฌํ ์ ์๋ค๋ ์๊ธฐ ์๋๊ฐ์?
A. ๋ฒ์ ์ผ๋ก๋ ์ ์ฌํ ์ ์์ผ๋ ๋ณต์ ํ์ ๊ณต์ ์๋ฃ์ค ๋ฑ๋ก ๊ฑฐ๋ถ, ๋ณต์ ํ ์ฌ์ฉ์ ๊ณ ๊ฐ์ง์ ๊ฑฐ๋ถ, ์
๋ฐ์ดํธ ์ ๊ณต ๊ฑฐ๋ถ ๋ฑ
๋ณต์ ํ ์ฌ์ฉ์ ๋ฐ ์ต์ด ์ฌ๋ฐฐํฌ์์๊ฒ ํ๋งค์๊ฐ ๋ถ์ด์ต์ ์ค ์ ์๋ ๋ฐฉ๋ฒ์ ๋ง์ต๋๋ค.
๋ฌด๋จ ๋ณต์ ๋ฅผ ๋ง๋ ๊ฐ์ฅ ํจ๊ณผ์ ์ธ ๋ฐฉ๋ฒ์ ๋ฒ์ ์ธ ์ ์ฌ๊ฐ ์๋๋ผ ์ ํ์ ์ฌ์ฉํ๋ ๊ฒ์ด ๋ ํธ๋ฆฌํ๋๋ก ํด์ฃผ๋ ๊ฒ์
๋๋ค.
Q. ๊ทธ๋๋ ๋ด๊ฐ ๋ง๋ ์๋ฃ๋ฅผ GPL๋ก ๋ด๋๋ ๊ฒ์ ์ฃฝ์ด๋ ์ซ๋ค๋ฉด?
A. GPL ์ ํ ํ์ ์ถ๊ฐ๋ ํจ์๋ ๋ชจ๋ ๋ฑ์ ์ ํ ํธ์ถํ์ง ์์์ XE์ 100% ํธํ๋๋ค๋ฉด,
๊ธฐ์กด LGPL ๋ผ์ด์ ์ค ์ํ์ XE๋ฅผ ์ํด ์ ์ํ ์๋ฃ๋ผ๊ณ ์ฃผ์ฅํ ์ ์์ต๋๋ค.
์ด ๊ฒฝ์ฐ์๋ ๋ผ์ด๋ฏน์ค์ ๋ฌด๊ดํ๋ฏ๋ก GPL์ด ์๋์ด๋ ๋ฉ๋๋ค. (๊ผผ์ 1)
๋์์ด๋์ ๊ถ๋ฆฌ์ ์๋ฌด¶
Q. ๋ ์ด์์, ์คํจ ๋ฑ์ ๋ผ์ด์ ์ค ์ ์ฑ ์ ์ด๋ป๊ฒ ํด์ผ ํ๋์?
A. HTML, CSS, JS ๋ฑ ํ๋ก ํธ์๋์์ ์คํ๋๋ ์ฝ๋๋ ๋ฐฑ์๋์ ํจ์๋ฅผ ์ง์ ํธ์ถํ ์ ์์ผ๋ฉฐ, ํธ์ถํ๋๋ผ๋ ๋คํธ์ํฌ๋ฅผ ํตํด ์ผ์ ํ API๋ฅผ ์ฌ์ฉํ๊ฒ ๋ฉ๋๋ค.
์ด๋ฐ ๊ฒฝ์ฐ GPL ๋ผ์ด์ ์ค๊ฐ ์ ์ฉ๋์ง ์๋๋ค๊ณ ์๋ ค์ ธ ์์ต๋๋ค. (GPL์ ์ ์ผ์ฑ์ด ๊ฐํ์ง๋ง, AGPL๊ณผ ๋ฌ๋ฆฌ ๋คํธ์ํฌ๋ฅผ ๊ฑด๋๊ฐ์ง๋ ๋ชปํฉ๋๋ค.)
HTML ํ
ํ๋ฆฟ์ ๋ผ์ด๋ฏน์ค์ ํ
ํ๋ฆฟ ํธ๋ค๋ฌ์ ์ํด ํด์๋๋ "๋ฐ์ดํฐ"์ด๋ฏ๋ก, ๋ง์ฐฌ๊ฐ์ง๋ก GPL์ด ์ ์ฉ๋์ง ์์ต๋๋ค.
(์ปดํ์ผ๋ฌ์ GPL ๋ผ์ด์ ์ค๊ฐ ์ปดํ์ผ๋ ํ๋ก๊ทธ๋จ์ ์ ์ผ๋์ง ์๋ ๊ฒ๊ณผ ๋ง์ฐฌ๊ฐ์ง์
๋๋ค.)
๋์์ธ ์์๋ก ์ฌ์ฉ๋ ์ด๋ฏธ์ง, ์์ด์ฝ, ํฐํธ ๋ฑ์๋ GPL์ด ์ ์ฉ๋์ง ์์ต๋๋ค.
๋ฐ๋ผ์ ์ด๋ฐ ํ์ผ๋ค๋ก๋ง ์ด๋ฃจ์ด์ง ๋ ์ด์์, ์คํจ, ํ
๋ง ํจํค์ง ๋ฑ์ ๋ผ์ด์ ์ค๋ ์ ์์๊ฐ ์์ ๋กญ๊ฒ ์ ํํ ์ ์์ต๋๋ค.
์ค์ ๋ก ๋ง์ ์๋ํ๋ ์ค ํ
๋ง๊ฐ ์ด๋ ๊ฒ ๋ผ์ด์ ์ค๋ฅผ ๋ถ๋ฆฌํ์ฌ CSS, JS, ์ด๋ฏธ์ง ๋ฑ์ ๋ฌด๋จ ์ฌ๋ฐฐํฌ๋ฅผ ๊ธ์งํ๊ณ ์์ต๋๋ค. (๊ผผ์ 2)
๊ธฐํ¶
WordPress, Drupal, Joomla, TYPO3 ๋ฑ ์ธ๊ณ CMS ์์ฅ ์ ์ ์จ
1\~4์๋ฅผ ์ฐจ์งํ๊ณ ์๋ ์คํ์์ค CMS๋ค์ ๋ชจ๋ GPL์ ์ฑํํ๊ณ ์์ต๋๋ค.
์๋ํ๋ ์ค๋ ์ ๋ ์ GPL์ ์งํค์ง ์๋ ํ ๋ง ๊ฐ๋ฐ์๋ค๊ณผ ๋ฒ์ ์ธ์๊น์ง ๊ฐ ๋์,
๋ชจ๋ GPL์ ์ฌ์ฉํ๊ธฐ๋ก ์ฝ์ํ๊ณ ๋์ ์คํ๋ ค ํ ๋ง ์์ฅ์ด ๋์ฑ ํ์ฑํ๋์๋ค๊ณ ํฉ๋๋ค.XE์ ๊ทธ๋๋ณด๋๋ ์๋ GPL์ด์๋ค๊ฐ ๋ง์ผ ํ์ฑํ๋ผ๋ ๋ช ๋ถ์ผ๋ก LGPL๋ก ๋ฐ๊พธ์์ผ๋,
์ค์ ๋ก ์ด ์ ์ฑ ์ด ๋ง์ผ ํ์ฑํ์ ์ผ๋ง๋ ๋์์ด ๋์๋์ง๋ ์๋ฌธ์ ๋๋ค.
์คํ๋ ค XE๊ฐ ๋ผ์ด์ ์ค๋ฅผ LGPL๋ก ๋ฐ๊พผ ์์ ์ด ์ฌ์ฉ์ ๋ฐฐ๋ ค์ ์ ๊ฒฝ์ ๋๊ธฐ ์์ํ ์์ ๊ณผ ๋ง๋ฌผ๋ ค์, ๊ฐ๋ฐ์ ํธ์์ฃผ์์ ์ธ ๋ฐ์์ด ์๋์๋ ํ๋ ์์ฌ์ด ๋ญ๋๋ค.
ํด์ธ์์๋ ๋๋ฐ์ ๋ ธ๋ฆฌ๋ ์คํํธ์ ์น์๋น์ค ๊ฐ๋ฐ์๋ค์ BSD, MIT ๋ฑ ๊ธฐ์ ์ ๊ฐ์ฅ ํฐ ๋์์ด ๋๋ ๋ผ์ด์ ์ค๋ฅผ ์ ํธํ๋ ๋ฐ๋ฉด,
์ธํฐ๋ท ์ปค๋ฎค๋ํฐ์ ๊ฑด์ ํ ๋ฐ์ ๊ณผ ๊ฐ์ธ ์ฌ์ฉ์์ ๊ถ๋ฆฌ ๋ณดํธ๋ฅผ ๋ด์ธ์ฐ๋ ์ด๋๊ฐ๋ค์ GPL์ด๋ ์ฌ์ง์ด AGPL์ ์ ํธํ๋ ๋ชจ์ต์ ๋ณด์ด๊ณ ์์ต๋๋ค.
๋ผ์ด๋ฏน์ค๋ ๋๊ตฌ๋ฅผ ๋จผ์ ์๊ฐํ๋ CMS๊ฐ ๋์ด์ผ ํ ๊น์?์ด๋ฒ ๋ผ์ด์ ์ค ๋ ผ์๊ฐ ๊ฐ๋ฐ์์ ์ฌ์ฉ์๋ค ๋ชจ๋ ์ ์๊ถ์ ๊ฐ๋ ๊ณผ ์คํ์์ค ๋ผ์ด์ ์ค์ ๋ ์ฃผ์๋ฅผ ๊ธฐ์ธ์ด๊ณ ์๋ก์ ๊ถ๋ฆฌ์ ์๋ฌด๋ฅผ ์๊ฐํด ๋ณด๋ ๊ท์คํ ๊ณ๊ธฐ๊ฐ ๋์์ผ๋ฉด ํฉ๋๋ค.
์ฐธ๊ณ : LGPL v2.1 ์ 3์กฐ¶
ํผ์๋์๋ ์์ ์ด ์๋๋ฐ์ ๋ผ์ด๋ธ๋ฌ๋ฆฌ์ ๋ณต์ ๋ฌผ์ LGPL ๋์ GPL์ ๊ท์ ์ ์ ์ฉํ ์ ์์ต๋๋ค.
์ด๊ฒ์ด ๊ฐ๋ฅํ๊ธฐ ์ํด์๋ LGPL์ ๋ํด์ ์ธ๊ธ๋์๋ ๋ชจ๋ ์ฌํญ์ GPL 2ํ์ผ๋ก ๋์ฒด์์ผ์ผ ํฉ๋๋ค.
(GPL 2ํ๋ณด๋ค ์ ํ์ด ๊ณตํ๋์์ ๊ฒฝ์ฐ์๋ ์ํ๋ค๋ฉด ์ ํ์ ํ๋ฒํธ๋ฅผ ์ฌ์ฉํ ์ ์์ต๋๋ค.)
๊ทธ ์ด์ธ์ ๋ค๋ฅธ ์ฌํญ๋ค์ ๋ณ๊ฒฝํ ์ ์์ต๋๋ค.๋ณต์ ๋ฌผ์ ๋ํด์ ์ด๋ฌํ ์์ ์ด ์ด๋ฃจ์ด ์ก์ ๊ฒฝ์ฐ์๋ GPL๋ก ๋ณ๊ฒฝ๋ ์ฌ์ฉ๊ถ ํ๊ฐ๋ฅผ ๋ค์ ๋ณ๊ฒฝํ ์ ์์ผ๋ฉฐ,
์ด์ ๋ฐ๋ผ์ ํด๋น ๋ณต์ ๋ฌผ์ ๊ธฐ๋ฐ์ผ๋ก ๋ง๋ค์ด์ง ๋ชจ๋ ์ ์๋ฌผ๊ณผ ๋ณต์ ๋ฌผ์๋ GPL์ด ์ ์ฉ๋์ด์ผ๋ง ํฉ๋๋ค.
์ถ์ฒ: https://xetown.com/topics/146444, https://github.com/rhymix/rhymix/issues/1371
์ ๋ฆฌ: @shydah