【发布时间】:2019-10-27 18:05:36
【问题描述】:
我在 Windows 上开发了一个相当大的 Fortran 程序,它调用一些 C 例程进行字符输入。我还提供了一个用于在各种 Unix 方言和 MacOS 上编译该程序的 makefile。我刚刚将用于测试的 Mac 升级到 Catalina,C 例程的编译失败,它无法找到所有(对我来说)神秘库“sys/ioctl.h”“signal.h”等。这适用于以前MacOS 版 Mojave。
我(在使用 Mojave 时)使用 gcc 安装了 gfortran,并且我有编译器标志 -DBSD 来选择一些必要的 C 系统库。我还有其他适用于 Linux 和 Cygwin 的标志。
我自己不使用 Mac,但我的程序有一些用户使用 Mac,所以我想让他们开心。我应该如何修改我的makefile?
【问题讨论】:
-
写一个。说真的,您现有的 makefile 在哪里
-
我认为 makefile 不会有任何不同。但我可能应该问如何编译一个 C 程序 om Catalina。但是,我不知道如何编写 C 程序。在我的 Fotran 程序中,我使用了我在网上找到的函数 getkey.c,它可以读取我在 Linux 和 MacOS 上使用的单个字符以允许命令行编辑。据我所知,没有 Fortran 工具。
-
引用 - “我应该如何修改我的 makefile?” - 要修改的makefile在哪里?
-
对我来说,问题是我使用了几年的 makefile 在 MacOS Cataline 上被破坏了。如果我将问题更改为如何编译不是我真正主要兴趣的 C 程序。我发现,如果我编写一个单行 C 程序并尝试编译,我会收到相同的错误消息:警告:没有搜索 stdio.h 的包含路径。那么问题来了,这条路径在新的 MacOS 中哪里消失了?
-
我显然之前安装了 Xcode,MacOS 没有在更新中根据需要标记它,但经过一番挖掘后,我发现了一个更新,我希望它会起作用。真是一团糟
标签: c macos-catalina