Мой gcc компилируется, но clang терпит неудачу со следующим сообщением:
clang -fopenmp=libomp -o main main.c
main.c:5:10: fatal error: 'omp.h' file not found
Я также установил пакет libomp5 и изменил флаг на -fopenmp=libomp5, хотя это тоже не помогло: [ ! d1] clang -fopenmp=libomp5 -o main main.c
clang: error: unsupported argument 'libomp5' to option 'fopenmp='
clang: error: unsupported argument 'libomp5' to option 'fopenmp='
эти рекомендации не сработали.
Буду признателен за установку необходимых 16.04 конкретных пакетов и передачу соответствующих флагов.
У меня была та же проблема.
sudo apt install libomp-dev
Исправлено это с Ubuntu 16.10
//test.c
#include "omp.h"
#include <stdio.h>
int main(void) {
#pragma omp parallel
printf("thread %d\n", omp_get_thread_num());
}
Тогда
clang test.c -fopenmp
./a.out
thread 0
thread 5
thread 2
thread 1
thread 7
thread 3
thread 4
thread 6
Также
работает.
GCC и Clang используют разные библиотеки времени исполнения OpenMP: libgomp и libomp уважительно.
Время выполнения Clang - это LLVM OpenMP runtime который, в свою очередь, основан на времени выполнения Intel OpenMP (который является открытым исходным кодом). https://www.openmprtl.org/
В моей системе GCC установлен omp.h в
/usr/lib/gcc/x86_64-linux-gnu/6/include/omp.h
и libomp-dev заблокирован omp.h в
[ f6]Это разные файлы заголовков, которые включают в себя различные определения функций. Может быть, можно использовать либо заголовочный файл, например, omp_get_wtime(), но в целом я думаю, что, вероятно, лучше использовать заголовочный файл, соответствующий текущей среде выполнения.
У меня была та же проблема.
sudo apt install libomp-dev
Исправлено это с Ubuntu 16.10
//test.c
#include "omp.h"
#include <stdio.h>
int main(void) {
#pragma omp parallel
printf("thread %d\n", omp_get_thread_num());
}
Тогда
clang test.c -fopenmp
./a.out
thread 0
thread 5
thread 2
thread 1
thread 7
thread 3
thread 4
thread 6
Также
работает.
GCC и Clang используют разные библиотеки времени исполнения OpenMP: libgomp и libomp уважительно.
Время выполнения Clang - это LLVM OpenMP runtime который, в свою очередь, основан на времени выполнения Intel OpenMP (который является открытым исходным кодом). https://www.openmprtl.org/
В моей системе GCC установлен omp.h в
/usr/lib/gcc/x86_64-linux-gnu/6/include/omp.h
и libomp-dev заблокирован omp.h в
/usr/include/omp.h
Это разные файлы заголовков, которые включают в себя различные определения функций. Может быть, можно использовать либо заголовочный файл, например, omp_get_wtime(), но в целом я думаю, что, вероятно, лучше использовать заголовочный файл, соответствующий текущей среде выполнения.
У меня была та же проблема.
sudo apt install libomp-dev
Исправлено это с Ubuntu 16.10
//test.c
#include "omp.h"
#include <stdio.h>
int main(void) {
#pragma omp parallel
printf("thread %d\n", omp_get_thread_num());
}
Тогда
clang test.c -fopenmp
./a.out
thread 0
thread 5
thread 2
thread 1
thread 7
thread 3
thread 4
thread 6
Также
работает.
GCC и Clang используют разные библиотеки времени исполнения OpenMP: libgomp и libomp уважительно.
Время выполнения Clang - это LLVM OpenMP runtime который, в свою очередь, основан на времени выполнения Intel OpenMP (который является открытым исходным кодом). https://www.openmprtl.org/
В моей системе GCC установлен omp.h в
/usr/lib/gcc/x86_64-linux-gnu/6/include/omp.h
и libomp-dev заблокирован omp.h в
/usr/include/omp.h
Это разные файлы заголовков, которые включают в себя различные определения функций. Может быть, можно использовать либо заголовочный файл, например, omp_get_wtime(), но в целом я думаю, что, вероятно, лучше использовать заголовочный файл, соответствующий текущей среде выполнения.
У меня была та же проблема.
sudo apt install libomp-dev
Исправлено это с Ubuntu 16.10
//test.c
#include "omp.h"
#include <stdio.h>
int main(void) {
#pragma omp parallel
printf("thread %d\n", omp_get_thread_num());
}
Тогда
clang test.c -fopenmp
./a.out
thread 0
thread 5
thread 2
thread 1
thread 7
thread 3
thread 4
thread 6
Также
работает.
GCC и Clang используют разные библиотеки времени исполнения OpenMP: libgomp и libomp уважительно.
Время выполнения Clang - это LLVM OpenMP runtime который, в свою очередь, основан на времени выполнения Intel OpenMP (который является открытым исходным кодом). https://www.openmprtl.org/
В моей системе GCC установлен omp.h в
/usr/lib/gcc/x86_64-linux-gnu/6/include/omp.h
и libomp-dev заблокирован omp.h в
/usr/include/omp.h
Это разные файлы заголовков, которые включают в себя различные определения функций. Может быть, можно использовать либо заголовочный файл, например, omp_get_wtime(), но в целом я думаю, что, вероятно, лучше использовать заголовочный файл, соответствующий текущей среде выполнения.
У меня была та же проблема.
sudo apt install libomp-dev
Исправлено это с Ubuntu 16.10
//test.c
#include "omp.h"
#include <stdio.h>
int main(void) {
#pragma omp parallel
printf("thread %d\n", omp_get_thread_num());
}
Тогда
clang test.c -fopenmp
./a.out
thread 0
thread 5
thread 2
thread 1
thread 7
thread 3
thread 4
thread 6
Также
работает.
GCC и Clang используют разные библиотеки времени исполнения OpenMP: libgomp и libomp уважительно.
Время выполнения Clang - это LLVM OpenMP runtime который, в свою очередь, основан на времени выполнения Intel OpenMP (который является открытым исходным кодом). https://www.openmprtl.org/
В моей системе GCC установлен omp.h в
/usr/lib/gcc/x86_64-linux-gnu/6/include/omp.h
и libomp-dev заблокирован omp.h в
/usr/include/omp.h
Это разные файлы заголовков, которые включают в себя различные определения функций. Может быть, можно использовать либо заголовочный файл, например, omp_get_wtime(), но в целом я думаю, что, вероятно, лучше использовать заголовочный файл, соответствующий текущей среде выполнения.
Кажется, файл omp.h не существует в вашей системе PATH. попробуйте найти файл omp.h, если вы не знаете, где он находится:
find / -name 'omp.h' -type f
И затем запустите эту команду для компиляции вашего кода:
clang -o main main.c -I/path/to/omp/folder
Кажется, файл omp.h не существует в вашей системе PATH. попробуйте найти файл omp.h, если вы не знаете, где он находится:
find / -name 'omp.h' -type f
И затем запустите эту команду для компиляции вашего кода:
clang -o main main.c -I/path/to/omp/folder
Кажется, файл omp.h не существует в вашей системе PATH. попробуйте найти файл omp.h, если вы не знаете, где он находится:
find / -name 'omp.h' -type f
И затем запустите эту команду для компиляции вашего кода:
clang -o main main.c -I/path/to/omp/folder
Кажется, файл omp.h не существует в вашей системе PATH. попробуйте найти файл omp.h, если вы не знаете, где он находится:
find / -name 'omp.h' -type f
И затем запустите эту команду для компиляции вашего кода:
clang -o main main.c -I/path/to/omp/folder
Кажется, файл omp.h не существует в вашей системе PATH. попробуйте найти файл omp.h, если вы не знаете, где он находится:
find / -name 'omp.h' -type f
И затем запустите эту команду для компиляции вашего кода:
clang -o main main.c -I/path/to/omp/folder