๋ฐ˜์‘ํ˜•

<VTK>


VTK๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•ด์„œ๋Š” ์ค€๋น„ ๊ณผ์ •์ด ๋‹ค์†Œ ๊ธธ๊ณ  ๋ณต์žกํ•ฉ๋‹ˆ๋‹ค.

๋ณธ ๊ธ€์—์„œ๋Š” ์ฐจ๋ก€์ฐจ๋ก€ ์‰ฝ๊ฒŒ ๋”ฐ๋ผ ํ•  ์ˆ˜ ์žˆ๋„๋ก ์ •๋ฆฌํ•ด ๋ณด์•˜์Šต๋‹ˆ๋‹ค.


โ€ป 2019๋…„ 7์›” 3์ผ ์ถ”๊ฐ€

ํ˜น์‹œ ์•„๋ž˜ ๋นŒ๋“œ ๊ณผ์ •์ด ์•ˆ ๋˜๋Š” ๋ถ„๋“ค์„ ์œ„ํ•ด VTK 8.9 Debug/Release ํŒŒ์ผ์„ ์ฒจ๋ถ€ํ–ˆ์Šต๋‹ˆ๋‹ค.
๋‹ค์šด๋กœ๋“œ ๋งํฌ: https://1drv.ms/u/s!AhrLbATTcIfktAkxS1iNGD3SBLKR?e=MsXun4


VTK ํ™˜๊ฒฝ ๊ตฌ์„ฑ์— ๋Œ€ํ•ด ๋”์šฑ ์ž์„ธํ•œ ๋‚ด์šฉ์€ ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.

VTK Wiki: https://vtk.org/Wiki/VTK/Configure_and_Build#Download_And_Install_CMake


1. ๋จผ์ €, CMake๋ฅผ ์ค€๋น„ํ•ฉ๋‹ˆ๋‹ค. CMake ์ค€๋น„๊ฐ€ ์•ˆ๋˜์–ด ์žˆ๋‹ค๋ฉด, ์•„๋ž˜ ๋งํฌ๋ฅผ ์ฐธ๊ณ ํ•ด์ฃผ์„ธ์š”.


2. VTK๋ฅผ ๋‹ค์šด๋กœ๋“œ ๋ฐ›์Šต๋‹ˆ๋‹ค.

VTK ๋‹ค์šด๋กœ๋“œ ํŽ˜์ด์ง€: https://vtk.org/download/

(2019๋…„ 5์›” 13์ผ ๊ธฐ์ค€ ๋ฆด๋ฆฌ์ฆˆ ๋ฒ„์ „์€ 8.2.0์ž…๋‹ˆ๋‹ค.)

๋‹ค์šด ๋ฐ›์€ ํŒŒ์ผ์˜ ์••์ถ•์„ ํ•ด์ œํ•˜๊ณ , ํด๋” ์ด๋ฆ„์„ 'src'๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  ์ƒˆ๋กœ์šด ํด๋”๋ฅผ ์ƒ์„ฑํ•˜๊ณ  ํด๋” ์ด๋ฆ„์„ 'bin'์œผ๋กœ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

CMake๋ฅผ ํ†ตํ•ด ์ƒ์„ฑ๋œ ํŒŒ์ผ์ด 'bin'ํด๋”์— ์œ„์น˜ํ•  ์˜ˆ์ •์ž…๋‹ˆ๋‹ค.


3. CMake๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ์•„๋ž˜ ๊ทธ๋ฆผ์ฒ˜๋Ÿผ src, bin ํด๋”์˜ ๊ฒฝ๋กœ๋ฅผ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค.


4. ์ขŒ์ธก ํ•˜๋‹จ์˜ 'Configure' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

์‚ฌ์šฉํ•˜๋Š” ํ™˜๊ฒฝ์œผ๋กœ ์˜ต์…˜์„ ์„ ํƒํ•œ ํ›„ 'Finish' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.


Finish ๋ฒ„ํŠผ ํด๋ฆญ ํ›„ ๋นŒ๋“œ ์ง„ํ–‰์ด ๋ฉ๋‹ˆ๋‹ค. ์ž ์‹œ ๊ธฐ๋‹ค๋ฆฝ๋‹ˆ๋‹ค.


5. ์™„๋ฃŒ๊ฐ€ ๋˜๋ฉด ์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ๋ถ‰์€์ƒ‰์œผ๋กœ ์˜ต์…˜๋“ค์ด ๋ณด์—ฌ์ง‘๋‹ˆ๋‹ค.

๋‹ค์Œ๊ณผ ๊ฐ™์ด ์˜ต์…˜์„ ๋ณ€๊ฒฝํ•ฉ๋‹ˆ๋‹ค.

Variable

 Description

 BUILD_EXAMPLES

 ์˜ˆ์ œ ํ”„๋กœ๊ทธ๋žจ์„ ์ƒ์„ฑํ•  ๊ฒƒ์ธ์ง€ ์ฒดํฌํ•˜๋Š” ์˜ต์…˜์ž…๋‹ˆ๋‹ค.
 ์‹œ๊ฐ„์ด ๊ฑธ๋ฆฌ๊ธด ํ•˜์ง€๋งŒ, ๋˜๋„๋ก์ด๋ฉด ์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.
 ์ฒดํฌ ๋˜๋Š” ์–ธ์ฒดํฌํ•ด๋„ ์ƒ๊ด€ ์—†์Šต๋‹ˆ๋‹ค.

 BUILD_SHARED_LIBS

 ์ฒดํฌํ•˜๋ฉด shared libraries๊ฐ€ ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค. (์ฒดํฌํ•ฉ๋‹ˆ๋‹ค.)
 ๊ณต์œ  ๋˜๋Š” ์ •์  ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋”ฐ๋ผ ํ•„์š”ํ•œ๋Œ€๋กœ ์„ ํƒํ•ฉ๋‹ˆ๋‹ค.

 BUILD_TESTING

 ์ฒดํฌํ•˜๋ฉด ๋ฌด์–ธ๊ฐ€ ํ…Œ์ŠคํŠธ๋ฅผ ์ง„ํ–‰ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ์ฒดํฌํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
 Examples ์˜ต์…˜๊ณผ ๋”๋ถˆ์–ด ํ•ด๋‹น ์˜ต์…˜์„ ํ•ด์ œํ•˜๋ฉด ๋นŒ๋“œ ์†๋„๊ฐ€ ํ–ฅ์ƒ๋ฉ๋‹ˆ๋‹ค.
 ๊ตณ์ด ์ฒดํฌํ•˜์ง€ ์•Š์•„๋„ ๋ฉ๋‹ˆ๋‹ค.

 CMAKE_INSTALL_PREFIX

 ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์ž…๋ ฅํ•ฉ๋‹ˆ๋‹ค. C:/vtk/${BUILD_TYPE}
 ์„ค์น˜ ๊ฒฝ๋กœ ๋’ค์— ${BUILD_TYPE}๋ฅผ ๋ถ™์ด๋ฉด Debug, Release์— ๋”ฐ๋ผ ๊ฐ ํด๋”์— ์ƒ์„ฑ๋ฉ๋‹ˆ๋‹ค.


(2019-05-17 ์ถ”๊ฐ€)
โ€ป VTK์—์„œ ์ œ๊ณตํ•˜๋Š” Chart๋ฅผ ์‚ฌ์šฉํ•˜๋ ค๋ฉด vtkContextView Module์ด ํ•„์š”ํ•ฉ๋‹ˆ๋‹ค.

์•„๋ž˜ ํ‘œ์‹œํ•œ ๊ฒƒ ์ฒ˜๋Ÿผ, ํ•„์š”ํ•œ ๋ชจ๋“ˆ์ด ์žˆ์œผ๋ฉด ์˜ต์…˜์„ ํ™œ์„ฑํ™”ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

'VTK_MODULE...RedneringContext2D'์˜ ๊ธฐ๋ณธ ๊ฐ’์€ 'DEFAULT'์ž…๋‹ˆ๋‹ค๋งŒ, VTK๋ฅผ Compileํ•˜๋ฉด vtkContextView๊ฐ€ ์ƒ์„ฑ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๋งŒ์•ฝ, ์œ„ ๊ณผ์ •์„ ๋ˆ„๋ฝํ•˜๋ฉด ๋‹ค์‹œ ๋นŒ๋“œํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ใ… ใ… 


6. ์œ„ ์˜ต์…˜ ๋ณ€๊ฒฝ์ด ๋ชจ๋‘ ๋๋‚˜๋ฉด 'Configure'๋ฒ„ํŠผ์„ ๋ˆ„๋ฆ…๋‹ˆ๋‹ค.

์•„๋ž˜ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์ด ํ™”๋ฉด์ด ๋ณ€๊ฒฝ๋ฉ๋‹ˆ๋‹ค.


7. ๋‹ค์‹œ 'Configure' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋ถ‰์€์ƒ‰ ํ‘œ์‹œ๊ฐ€ ๋ชจ๋‘ ์‚ฌ๋ผ์กŒ์Šต๋‹ˆ๋‹ค.


8. ์ด์ œ 'Generate' ๋ฒ„ํŠผ์„ ํด๋ฆญํ•ฉ๋‹ˆ๋‹ค.

๋ณธ๊ฒฉ์ ์œผ๋กœ ํŒŒ์ผ์„ ์ƒ์„ฑํ•˜๋ฏ€๋กœ ์‹œ๊ฐ„์ด ๋‹ค์†Œ ๊ฑธ๋ฆฝ๋‹ˆ๋‹ค.

๋ชจ๋‘ ์™„๋ฃŒ๊ฐ€ ๋˜๋ฉด 'bin'ํด๋”์— ํŒŒ์ผ์ด ์ƒ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.


9. bin ํด๋”์˜ 'VTK.sln'์„ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

Debug/Release Mode ๋ฐ Windows bits ์„ ํƒ ํ›„ 'ALL_BUILD'๋ฅผ ์„ ํƒํ•˜์—ฌ 'Build'๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

(์ด ๊ณผ์ •์€ ์‹œ๊ฐ„์ด ๋งค์šฐ ๊ฑธ๋ฆฌ๋ฏ€๋กœ ๊ฐ€๋ณ๊ฒŒ ์ฐจ ํ•œ์ž” ํ•˜์‹œ๋Š”๊ฒŒ ์ข‹์Šต๋‹ˆ๋‹ค.)


๋นŒ๋“œ๊ฐ€ ์™„๋ฃŒ๋˜๋ฉด 'INSTALL'์„ ์„ ํƒํ•œ ํ›„ 'Build'๋ฅผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ณผ์ •์€ ์ƒ๊ฐ๋ณด๋‹ค ๋น ๋ฅด๊ฒŒ ์ง„ํ–‰๋ฉ๋‹ˆ๋‹ค.


10. ๋นŒ๋“œ ํ›„ ์ƒ์„ฑ๋œ ํŒŒ์ผ์„ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.

CMake์—์„œ CMAKE_INSTALL_PREFIX์— ์ž…๋ ฅํ•œ ๊ฒฝ๋กœ์— ์ ‘๊ทผํ•˜๋ฉด, ์ƒ์„ฑ๋œ ํŒŒ์ผ๋“ค์ด ์กด์žฌํ•ฉ๋‹ˆ๋‹ค.


์—ฌ๊ธฐ๊นŒ์ง€๊ฐ€ VTK๋ฅผ ์‚ฌ์šฉํ•˜๊ธฐ ์œ„ํ•œ ์ค€๋น„ ๋‹จ๊ณ„์˜€์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ํฌ์ŠคํŒ…์—์„œ๋Š” VTK ์˜ˆ์ œ ํŒŒ์ผ์„ ์‹คํ–‰ํ•˜์—ฌ ๋™์ž‘์‹œ์ผœ ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.

๋ฐ˜์‘ํ˜•