LLVM / Clang 8 Compilación de OpenMP Código en Windows

Estoy usando la versión de Windows de Ruido (LLVM) 8 en Windows.
Estoy compilación de un código que utiliza OpenMP.

Bajo el lib carpeta de Clang hay 2 archivos que están relacionados con OpenMP:

  1. libomp.lib.
  2. libiomp5md.dll.

Mis preguntas son:

  1. Al compilar el código que utilizo las banderas -Xclang -fopenmp para el compilador. En GCC e ICC el uso de las banderas decirle al compilador que el enlace de la OpenMP biblioteca de forma automática. ¿Qué acerca de Sonar? Hace automáticamente o tengo que enlace con libomp.lib manualmente? Hay una manera para activar la vinculación automática a la OpenMP biblioteca?
  2. Cuando me conecte con libomp.lib manualmente la salida de exe requiere libomp.dll, mientras que el adaptador de OpenMP Biblioteca Dinámica es libiomp5md.dll. Es que un error o es porque puedo enlazar manualmente?
  3. ¿Cuál es la forma correcta de utilizar OpenMP en Sonido en Windows?

Comentario
En Windows yo uso Windows Driver de Sonido usando clang-cl.

1 Respuestas

  • Michael Klemm
    4 de mayo de 2019

    Para compilar y vincular OpenMP código con clang en Windows, usted tendrá que pasar -fopenmp para el compilador y el enlazador:

    clang -fopenmp -o bla.obj -c bla.c
    clang -fopenmp -o bla.exe bla.obj