используя openmp с make-файлом и g ++ - PullRequest
1 голос
/ 16 августа 2010

Я строю большой проект с make-файлом, который изначально был создан с помощью icpc, и теперь мне нужно запустить его с g ++.

Когда он компилирует файл, который использует openmp, он использует флаг -c и не использует никаких библиотек, поэтому он становится последовательным, а не openmp. Все примеры, которые я вижу, не используют этот флаг -c.

Есть ли какой-нибудь способ компиляции без линковки, но с использованием openmp?

редактирование:

Я использовал флаг -lgomp (а библиотека находится в пути к библиотеке):

g ++ -lgomp -c -w -O4 mainS.cpp
g ++: -lgomp: входной файл компоновщика не используется, поскольку компоновка не выполнена

Редактировать: мой босс допустил несколько ошибок в коде, make-файле и документации. Извините, что потратил впустую ваше время, по крайней мере это было меньше, чем 5 часов, которые я потратил на это = /

Ответы [ 2 ]

3 голосов
/ 16 августа 2010

Вы передаете флаг, чтобы включить OpenMP (IIRC, это что-то вроде -fopenmp? Если нет вероятности, компилятор проигнорирует примитивы, связанные с OpenMP и просто выдаст последовательный код.

Я неНе думаю, что -c (то есть, только компиляция, не нравится) имеет какое-либо отношение к вашей проблеме.

0 голосов
/ 16 августа 2010

Возможно, документация поможет ...

...