2014-12-10 3 views
0

Мой вопрос: Как заставить Halide работать в среде Windows? Я не смог найти никакой реальной документации для окон (часть ожидаемых «грубых краев»).Использование Halide на окнах?

My Situation: Я пытаюсь использовать Halide в кросс-платформенной (windows, mac, android) ситуации, и у меня возникли проблемы с работой в VS2013. Использование скомпилированных программ все работает и компилируется нормально, но когда я пытаюсь и на самом деле запустить программа, линия

Halide::Func gradient("gradient"); 

бросает исключение станд :: bad_alloc в Halide.DLL. Я начинаю подозревать, что, возможно, двоичные файлы окон Halide были скомпилированы для использования с инструментальной комбинацией MinGW или каким-либо другим решением, отличным от msvc, и мои проблемы проистекают из этого. Есть идеи?

Обновление: теперь я могу работать без этой проблемы, но только в версиях Release. Определение _DEBUG и/или связывание с/MDd вызывает сбой.

ответ

0

Я не знаю подробностей о бинарных файлах, предоставляемых галогениды команды, но ваша проблема может быть, что MSVC часто мешает смешивать отлаживать и выпустить двоичные файлы, особенно если они используют STL (см this answer)

здания LLVM/Clang и Halide из источника проще, чем он выглядит, и позволит вам создавать двоичные файлы, подходящие для вашей среды сборки. Недавно я построил LLVM 3.5/Clang и самый последний Halide с VS2012 без проблем.

Сначала постройте LLVM в отладке и выпуске (возможно, 1 ou 2 часа каждый ...). Затем запустите cmake для Halide один раз для Debug и один раз для Release, с разными каталогами сборки.

0

Я смог получить Halide, работая над новой подсистемой Linux под Linux без каких-либо проблем. Я использовал gcc4.8 для компиляции учебников.

Смежные вопросы