【发布时间】:2021-07-26 23:19:00
【问题描述】:
我正在尝试将旧版 Delphi 代码从 Windows 转换为 Linux。 Delphi 项目有一些子模块,它们是用 C 语言编写的,使用 bcc32 编译器编译并使用 tlink32 链接器链接。
作为这些 C 模块的 Linux 转换的一部分,我计划使用 gcc 编译器代替 bcc32,并使用 ld 链接器代替 tlink32。
但是,我发现在 Linux 中找到等效的编译器和链接器标志/选项有点困难。下面是来自 Windows 中现有 C 代码的编译器 (bcc32) 和链接器 (tlink32) 命令。如果有人可以建议 Linux 中 gcc 和 ld 的等效标志,那将是一个很大的帮助。
bcc32 编译器选项:
c:\bc45\bin\bcc32 -a1 -c -d -I..\..\_common\msgups -v- -w-aus -w-par -i50 -Dfar -DNO_SEGMENT_PRAGMA $(.SOURCE)
在这里我找不到与-a1、-d、-v-、-w-aus、-i50、-Dfar、-DNO_SEGMENT_PRAGMA 对应的 gcc 编译器标志
tlink32 链接器选项:
c:\bc45\bin\tlink32 -s -n $(OBJ) $(.SOURCE), $@, $*.mup
这里找不到-s和-n对应的ld编译器标志
【问题讨论】:
-
请删除标签 Delphi。你的问题真的是关于 C 的。
-
请扩展您的问题(editing)并告诉我们每个选项的含义。我们不打算寻找 Delphi 的手册,阅读它,对 GCC 做同样的事情,然后比较两者。这是你的任务。如果你碰巧找到一个你不知道如何解释或映射到 GCC 选项的选项,请列出来。
-
这看起来与stackoverflow.com/questions/67379864/… 非常相似。这个问题已经结束——提问者没有做任何研究。你做了什么研究?您是否查看了
bcc32文档以了解这些标志的作用?我知道 gcc - 但我不知道 bcc32。这些选项有什么作用?
标签: c++ linux gcc c++builder