openmp - 在 macOS catalina 2 上运行 openMP 代码时出错
问题描述
我刚刚安装了 openMP 刚刚运行
- 酿造安装 gcc
然后我使用编译我的代码
- gcc-10 -o 任务 -fopenmp 任务.c
但是我收到了错误消息:
架构 x86_64 的未定义符号:“_main”,引用自:主要可执行文件 ld 的隐式入口/开始:未找到架构 x86_64 collect2 的符号:错误:ld 返回 1 退出状态
我的代码是:
1. #include <omp.h>
2. #include <iostream>
3. using namespace std;
4.
5. #define TAMA_NTHREADS 4
6.
7.
8. int main (int argc, const char * argv[]){
9.
10.
11. int nProcessors = omp_get_max_threads();
12.
13. cout<<"Numero di core disponibili: " << nProcessors << endl;
14.
15. omp_set_num_threads(nProcessors);
16.
17. cout << "Numero thread fuori pragma: " << omp_get_num_threads() << endl;
18.
19. #pragma omp parallel
20. {
21. cout << endl <<"Numero di thread in pragma: " << omp_get_num_threads() << endl;
22. cout << "Sono il thread numero: " << omp_get_thread_num();
23. cout << " E ti saluto! " << endl;
24. }
25.
26. exit(0);
27.}
有人可以帮我吗?
解决方案
“这是您尝试编译为 C 的 C++ 代码。将文件重命名为 task.cc 并改用 g++-10”。Hirsto 这解决了问题,谢谢。无论如何,即使我不重命名文件,它也可以工作。
推荐阅读
- debugging - 如何允许在 Intellij Idea 中进行地理定位并应用 chrome 标志“不安全地对待不安全的来源作为安全”
- javascript - 如何为我的机器人制定禁令、踢出和清除命令?
- python - 如何在 Python 中存储 Neo4J 查询结果的返回记录?
- c++ - 不完整的类型是不允许的 QApplication
- vb.net - SettingsPropertyValue.UsingDefaultValue 不起作用?
- javascript - Discord服务器自动删除微博?
- python - AttributeError:“NumpyArrayIterator”对象没有属性“ndim”
- java - 表 JAVA GUI 没有输出
- module - 如何找出 Prolog 运算符来自哪个模块?
- java - 如何将 JComboBox 作为 JList 中的元素?