Clang chuẩn của Apple hỗ trợ OpenMP. Họ chỉ vô hiệu hóa tùy chọn trình điều khiển. Nhưng bạn có thể sử dụng tùy chọn frontend thay vì theo cách này: clang -Xclang -fopenmp <you_program> -I <path to omp.h> -L <path to libomp.dylib> -lomp
Ngoài ra, bạn cần phải thiết lập DYLD_LIBRARY_PATH biến môi trường: export DYLD_LIBRARY_PATH=<path to libomp.dylib>
Làm thế nào để có được/xây dựng libomp.
$ cd
$ svn co http://llvm.org/svn/llvm-project/openmp/trunk libomp
$ cd libomp
$ mkdir build && cd build
$ cmake -DCMAKE_INSTALL_PREFIX=~/libomp/openmp
$ make && make install
Sau khi thư mục này ~/libomp/openmp
sẽ có 2 subdirs: include
và lib
, mà nên được sử dụng như đường dẫn đến omp.h
và đường dẫn đến libomp.dylib
tương ứng.
cũng Xem câu trả lời của tôi để Is C++ compilable with OpenMP and boost on MacOS?
Nguồn
2017-11-10 20:11:49
Hai điều rất nhiều sẽ giúp câu trả lời này: Các liên kết đến các chủ đề khác, và một đề cập (hoặc liên kết) đến cách người ta nên có được libomp.a. Tôi đã cố gắng làm những gì bạn đề nghị trước đây, nhưng đã thiếu một trong các bước (hoặc đã sử dụng một libomp không chính xác). Chỉnh sửa: Liên kết tại đây: https://stackoverflow.com/questions/47081991/is-c-compilable-with-openmp-and-boost-on-macos/47225639#47225639 –
Cách nhận/xây dựng libomp được thêm –
Hoặc bỏ phiếu để đóng dưới dạng trùng lặp nếu câu trả lời giống hệt nhau. Nó thường được cau mày khi đăng câu trả lời tương tự cho nhiều câu hỏi (không phải chủ đề, không có chủ đề trên StackOverflow). –