Название: qbs и OpenMP [Решено] Отправлено: xokc от Апрель 21, 2015, 00:03 Что и в каком месте нужно указать в qbs файле для того, чтобы включить поддержку компилятором директив OpenMP, в частности #pragma omp parallel for для, например комплиятора VS2013 (опция компилятора /openmp)
Название: Re: qbs и OpenMP Отправлено: alex312 от Апрель 21, 2015, 04:32 Приблизительный набросок: Код
Название: Re: qbs и OpenMP Отправлено: Авварон от Апрель 21, 2015, 09:49 base и concat не нужны в данном примере, cxxFlags всегда пустые (дефолтные флаги живут в другой проперти и конкатятся сами)
Название: Re: qbs и OpenMP Отправлено: xokc от Апрель 21, 2015, 15:14 Добавил
cpp.cxxFlags: "/openmp" Не помогло. Этот код Код из под VisualStudio c /openmp даёт ожидаемое: Код А из под Creator Код
Название: Re: qbs и OpenMP Отправлено: xokc от Апрель 21, 2015, 17:14 Существует ли вообще какой-нибудь простой способ узнать с какими параметрами вызван компилятор при использовании qbs? Для pro проектов эта информация была в make файлах и выводилась в консоль сборки Creator. Для qbs же make файлы как я понял не создаются, а в консоли сборки вижу только это:
Код Очень информативно :( Название: Re: qbs и OpenMP Отправлено: xokc от Апрель 21, 2015, 20:47 Как-то я сам с собой беседую. :(
Отловил вызов компилятора с cpp.cxxFlags: "/openmp": Код Как легко заметить никакого Название: Re: qbs и OpenMP Отправлено: xokc от Апрель 21, 2015, 20:58 Как ни странно, но исходники помогли. :) В частности, msvc.js, а именно:
Код Как можно заметить в командной строке компилятора из предыдущего поста, у меня был не main.cpp, а main.c и, соответственно, нужно использовать не cxxFlags, a cFlags. Ну, или переименовать main.c в main.cpp, что и было сделано. Нужный ключ в командной строке компилятора появился и OpenMP отработал. Тему пометил как решенную. |