c - macOS 和 linux 之间编译器的区别?

标签 c linux

我现在在学c语言,学校把所有的作业都放在myth上,每次都要ssh登录远程执行命令。 因此我想下载文件并在我自己的 macbook 上执行它们。但是,当我使用 make 命令编译文件时,出现错误和警告,例如:

gcc -g -O0 -std=gnu99 -Wall $warnflags -m32   -c -I. vectest.c -o vectest.o
warning: unknown warning option '-Wlogical-op'; did you mean '-Wlong-long'?

vectest.c:10:10: fatal error: 'error.h' file not found
#include <error.h>”

我用谷歌搜索了这些问题,但找不到满意的答案。谁能帮我解决这个问题?或者我必须改用 Linux 机器?

最佳答案

的确;不同平台的编译器(即使是“相同”的编译器,例如 GCC)可能有不同的标志和行为。您也许能够让它工作 - 您可以从 Makefile 中的 $warnflags 中删除 -Wlogical-op 标志,但是如果error.h 文件是系统提供的头文件,您可能遇到麻烦了。因此,我建议您下载例如VirtualBox并在其上运行 Linux。

关于c - macOS 和 linux 之间编译器的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33140643/

相关文章:

c - 需要解释一下这段代码是如何工作的

c - 检测宽屏幕纵横比

linux - 没有信号量的共享内存访问

linux - 删除包含多个单词的行

linux - 在Linux中获取特定目录中的文件数

c++ - 为所有 Linux 发行版编译 C++

c - 如何/何时将内存分配给 C 中的全局变量

c - MPI_TYPE_CREATE_HVECTOR

c - 这个 for 循环中缺少什么

linux - Kubernetes 用户界面 : error in kubectl proxy