Essentia: ๋นŒ๋“œ ์˜ค๋ฅ˜

์— ๋งŒ๋“  2016๋…„ 06์›” 16์ผ  ยท  3์ฝ”๋ฉ˜ํŠธ  ยท  ์ถœ์ฒ˜: MTG/essentia

essentia ๋นŒ๋“œ ํ”„๋กœ์„ธ์Šค๊ฐ€ ์ผ๋ถ€ gaia ํ—ค๋”๋ฅผ ์ฐพ์„ ์ˆ˜ ์—†๋Š” ๋˜ ๋‹ค๋ฅธ ๋ฌธ์ œ์— ์ง๋ฉดํ–ˆ๊ณ (ํ–ฅํ›„ ๋ฌธ์ œ์—์„œ ๋…ผ์˜ํ•  ์ˆ˜ ์žˆ์Œ) --with-gaia ์˜ต์…˜ ์—†์ด ๋นŒ๋“œ๋ฅผ ์‹œ๋„ํ•˜๋ฉด ๋‹ค์Œ๊ณผ ๊ฐ™์ด ์‹คํŒจํ•ฉ๋‹ˆ๋‹ค.

์ฐธ๊ณ ๋กœ ๋‹ค์Œ์€ configure ๋ช…๋ น์ด์—ˆ์Šต๋‹ˆ๋‹ค.
./waf ๊ตฌ์„ฑ --mode=release --build-static --with-python --with-cpptests --with-examples --with-vamp

๋‹น์‹ ์˜ ๋„์›€์„ ๊ธฐ๋Œ€ํ•ฉ๋‹ˆ๋‹ค!

/usr/bin/ld: test/3rdparty/gtest-1.6.0/src/gtest-all.cc.1.o: 'pthread_key_delete@@GLIBC_2.2.5' ๊ธฐํ˜ธ์— ๋Œ€ํ•œ ์ •์˜๋˜์ง€ ์•Š์€ ์ฐธ์กฐ
//lib/x86_64-linux-gnu/libpthread.so.0: ๊ธฐํ˜ธ ์ถ”๊ฐ€ ์˜ค๋ฅ˜: ๋ช…๋ น์ค„์—์„œ DSO ๋ˆ„๋ฝ
collect2: ์˜ค๋ฅ˜: ld๊ฐ€ 1 ์ข…๋ฃŒ ์ƒํƒœ๋ฅผ ๋ฐ˜ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
Waf: `/home/aagnone3/Downloads/essentia/build' ๋””๋ ‰ํ† ๋ฆฌ์—์„œ ๋‚˜๊ฐ‘๋‹ˆ๋‹ค.
๋นŒ๋“œ ์‹คํŒจ
-> 'basetest' ์ž‘์—… ์‹คํŒจ(์ข…๋ฃŒ ์ƒํƒœ 1):
{์ž‘์—… 139835574329168: cxxprogram gtest-all.cc.1.o,test_audioloader.cpp.1.o,test_composite.cpp.1.o,test_connectors.cpp.1.o,test_copy.cpp.1.o,test_fileoutput.cpp .1.o,test_main.cpp.1.o,test_math.cpp.1.o,test_network.cpp.1.o,test_networkparser.cpp.1.o,test_parameter.cpp.1.o,test_peak.cpp.1 .o,test_pool.cpp.1.o,test_scheduler.cpp.1.o,test_stringutil.cpp.1.o,test_treetraversal.cpp.1.o,test_vectorinput.cpp.1.o,test_vectoroutput.cpp.1.o -> ๊ธฐ๋ณธ ํ…Œ์ŠคํŠธ}
['/usr/bin/g++', 'ํ…Œ์ŠคํŠธ/3rdparty/gtest-1.6.0/src/gtest-all.cc.1.o', 'ํ…Œ์ŠคํŠธ/src/basetest/test_audioloader.cpp.1.o', 'test/src/basetest/test_composite.cpp.1.o', 'test/src/basetest/test_connectors.cpp.1.o', 'test/src/basetest/test_copy.cpp.1.o', 'ํ…Œ์ŠคํŠธ /src/basetest/test_fileoutput.cpp.1.o', 'test/src/basetest/test_main.cpp.1.o', 'test/src/basetest/test_math.cpp.1.o', 'test/src /basetest/test_network.cpp.1.o', 'test/src/basetest/test_networkparser.cpp.1.o', 'test/src/basetest/test_parameter.cpp.1.o', 'test/src/basetest /test_peak.cpp.1.o', 'test/src/basetest/test_pool.cpp.1.o', 'test/src/basetest/test_scheduler.cpp.1.o', 'test/src/basetest/test_stringutil .cpp.1.o', 'test/src/basetest/test_treetraversal.cpp.1.o', 'test/src/basetest/test_vectorinput.cpp.1.o', 'test/src/basetest/test_vectoroutput.cpp .1.o', '-o', '/home/aagnone3/Downloads/essentia/build/basetest', '-Wl,-Bstatic', '-Lsrc', '-lessentia', '-Wl,-Bdynamic ', '-L/usr/local/lib', '-lfftw3f', '-lavformat-ffmpeg', '-lavcodec-ffmpeg', '-lavut il-ffmpeg', '-lavresample-ffmpeg', '-lsamplerate', '-ltag', '-lyaml']

๊ฐ€์žฅ ์œ ์šฉํ•œ ๋Œ“๊ธ€

๋ฌธ์ œ๋Š” wscript#L268์— ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์€ ์ผ๋ถ€ Linux ๋ฐฐํฌํŒ(์˜ˆ: Arch Linux)์—์„œ Python์˜ platform.dist() ๊ฐ€ ๋นˆ ๋ฌธ์ž์—ด( ('', '', '') )์ด ์žˆ๋Š” ํŠœํ”Œ์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  -lpthread GCC ํ”Œ๋ž˜๊ทธ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋Š” ๋ฐฐํฌํŒ ๋ชฉ๋ก์— '' ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 268ํ–‰์„ if platform.dist()[0] in ['Ubuntu', 'LinuxMint', '']: ๊ต์ฒดํ•˜์‹ญ์‹œ์˜ค.

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

๋งˆ์Šคํ„ฐ ๋ฐ 2.0.1 ๋ถ„๊ธฐ ๋ชจ๋‘์— ๋Œ€ํ•ด ๋™์ผํ•œ ๊ฒฐ๊ณผ

๋ฌธ์ œ๋Š” wscript#L268์— ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๊ฒƒ์€ ์ผ๋ถ€ Linux ๋ฐฐํฌํŒ(์˜ˆ: Arch Linux)์—์„œ Python์˜ platform.dist() ๊ฐ€ ๋นˆ ๋ฌธ์ž์—ด( ('', '', '') )์ด ์žˆ๋Š” ํŠœํ”Œ์„ ๋ฐ˜ํ™˜ํ•˜๊ณ  -lpthread GCC ํ”Œ๋ž˜๊ทธ๊ฐ€ ์—†๊ธฐ ๋•Œ๋ฌธ์— ๋ฐœ์ƒํ•ฉ๋‹ˆ๋‹ค.
์ด ๋ฌธ์ œ๋Š” ๋ฐฐํฌํŒ ๋ชฉ๋ก์— '' ๋ฅผ ์ถ”๊ฐ€ํ•˜์—ฌ ํ•ด๊ฒฐํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 268ํ–‰์„ if platform.dist()[0] in ['Ubuntu', 'LinuxMint', '']: ๊ต์ฒดํ•˜์‹ญ์‹œ์˜ค.

๋ฌผ๋ก ! ํŠนํžˆ ํ•„์ž์˜ ๊ฒฝ์šฐ platform.dist()[0]์€ '๋ฐ๋น„์•ˆ'์ด์—ˆ์ง€๋งŒ ๊ทธ๋Ÿผ์—๋„ ๋ถˆ๊ตฌํ•˜๊ณ  ์„ฑ๊ณต์ ์ธ ์ˆ˜์ •์ด์—ˆ์Šต๋‹ˆ๋‹ค.

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