问题标签 [omf]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
10865 浏览

visual-c++ - OMF 和 COFF 格式有什么区别?

最近我一直在维护一个用 VC++ 6.0 编写的遗留项目。该代码使用了该编译器的许多独特特性,因此将其移植到更新的标准编译器已被证明是一项艰巨的任务。

在项目的数千行代码中,有四个汇编文件。出于某种原因,我不明白,MASM615 和 TASM 也无法编译它们(它们会发送错误),但我有目标文件。但是,当我链接库时,我收到一条消息

警告 LNK4033:将对象格式从 OMF 转换为 COFF

该库按预期工作,但我一直想知道这些二进制格式之间有什么区别,或者我是否应该期望这种转​​换会产生一些丑陋的东西。

0 投票
5 回答
11505 浏览

c++ - 将 COFF lib 文件转换为 OMF 格式

有没有办法将 COFF 库(lib 文件)转换为 OMF 库以与 C++Builder6 一起使用?这个 coff 不仅仅是导入库,它包含一些代码。当我尝试使用 borland 的 coff2omf.exe 转换它时,我从 15KB 文件中得到 1KB 文件。

0 投票
1 回答
729 浏览

d - 预编译的 Windows OMF BLAS/LAPACK?

有没有什么地方可以得到 OMF 对象格式的 Windows 预编译的 BLAS 和 LAPACK 二进制文件?我想将一些 D 语言代码链接到这些。我知道在哪里可以获得COFF 格式的相关库。我也知道 objconv 工具,它将 COFF 转换为 OMF,尽管由于我不完全理解的原因,这在实践中似乎不起作用。这些似乎与符号中的下划线有关,尽管我尝试了几乎所有处理这些的设置,但似乎没有一个有效。

或者,是否有人知道如何将参考二进制文件转换为 OMF,以便它们实际上正确链接到 DMD 编译的代码?作为最后的手段,有谁知道如何让 CLAPACK、CBLAS 和 F2CLIB 与 DMC 一起构建?这些附带的构建过程似乎完全面向 GCC 工具链。

0 投票
3 回答
225 浏览

32-bit - 将 OMF16 转换为 OBJ32

有没有办法从 OMF 16 位目标文件格式转换为 COFF 32 位目标文件格式?

0 投票
2 回答
2961 浏览

delphi - OMF 格式转 COFF 格式

有没有像 Borland "coff2omf.exe" 这样的工具用于将 Borland OMF LIB 格式转换为 MS VC++ COFF LIB 格式?

实际上我想在 delphi 中创建 .obj 文件并在 MSVC++ 中使用它。

0 投票
1 回答
11254 浏览

c++builder - 链接器错误“包含无效的 OMF 记录”

在我编译时在 C++ Builder 中我得到

当我用实用程序转换 .lib 时coff2omf,新的 lib 失去了重要的功能。

0 投票
1 回答
396 浏览

linux - Windows 工具生成的 OMF 文件可以链接到 linux 中的 GCC 程序集吗?

我正在将一个 Windows VC++ 应用程序移植到 Linux,该应用程序链接到当前由 MASM 生成的汇编程序模块。在将其 Windows ABI 假设更改为 Linux ABI 后,我想再次将 MASM 上的模块组装为 OMF(在 Windows 中),然后直接将该目标文件输入到 GCC 构建中(在 Linux 中)。随着时间的推移,这将大大简化维护,并保证在两个操作系统下都可以进行相同的组装。另一种方法是将汇编代码移植到 YASM/NASM 及其复杂性。汇编代码完全是叶例程(没有调用),没有宏、没有 Unicode 数据和很少的整数/实数数据;它包括 32 位和 64 位汇编器版本。除了字节序问题,谁的工具链为这个模块生成 OMF 表示真的很重要吗?

0 投票
1 回答
1661 浏览

c++ - 链接器错误“包含无效的 OMF 记录”2

我正在使用 Embarcadero XE8 C++ builder 32 位。

我在我的程序中添加了一个库来解决Unresolved external error.

当我添加库时,我得到了标题中的错误。于是我在网上搜索,在stackoverflow上找到了这个话题: Linker error "contains invalid OMF record"

正如它所说的 COFF2OMF 工具,可以工作。遗憾的是它对我不起作用,我提供了一个 7mb 的库文件,当我使用该工具转换它时它只有 41kb ......所以我猜转换失败了。当我将转换后的文件添加到我的程序时,它只是忽略它并仍然显示unresolved external error.

那么如何让我的库与我的 C++ 构建器一起工作呢?

0 投票
1 回答
163 浏览

omf - OMF(对象模块格式)长度字段显示不正确

我对 OMF 对象格式的 PUBDEF 记录有点困惑。我的汇编程序生成了一个结果,指出记录是 4000 字节,但显然不是,为什么要这样做?

OMF 十六进制视图的图像

0xa0 和 0x0f 是 little endian 格式的记录长度,

请查看规范: http: //pierrelib.pagesperso-orange.fr/exec_formats/OMF_v1.1.pdf

它似乎还声明字符串的长度为零字节,并且在某一时刻甚至只有零字符串长度而没有提供字符串。也许我读错了文件?我现在已经花了几个小时并且正在苦苦挣扎。

如果有人可以在我编写链接器时帮助我解决我的问题,并且在不理解这一点的情况下无法继续。

谢谢

0 投票
1 回答
84 浏览

ubuntu - 如何更换旧鱼安装

问题:

尝试调试:

我从apt安装了fish 2.2。然后后来直接从github repo安装了fish 2.5。但它仍在使用旧鱼,我不确定这里发生了什么。