4

我需要一个我在 .cobc 文件中编写的程序,以编译为 Windows 可执行文件。该文件名为 main.cobc
使用以下命令编译它: cobc -x -free *.cobc -o main
使其成为一个 linux 可执行文件,可以,但不能直接在 Windows 上运行。
我有 gnucobol (OpenCOBOL 安装在我的 linux ubuntu VM 上。
请帮忙。有没有办法以与 Windows 兼容的方式编译它?

提前致谢!

4

1 回答 1

5

有没有办法以与 Windows 兼容的方式编译它 [a COBOL 源代码]?

这不是标题中的问题,所以先回答这个问题。
你能在 Ubuntu 上做吗?
是的,... ascobc使用底层 C 编译器,您可以使用 C 编译器进行交叉编译(您可能会使用gcc-mingw-w64-i686or gcc-mingw-w64-x86-64)。

...但它需要大量的设置。

  • 安装交叉编译环境
  • 获取cobc/libcob在此环境中工作的所有依赖项
  • 使用从源代码构建和安装 GnuCOBOL 包的第二个版本./configure --host=i686-w64-mingw32
  • 使用 mingw 版本编译你的程序cobc

通过这种方式,您可以获得一个“main.exe”,只要您提供 mingw dll、libcob dll(及其所有依赖项的 dll 文件),就可以在 Windows 计算机上使用它。

我有 gnucobol (OpenCOBOL 安装在我的 linux ubuntu VM 上。请帮忙。有没有办法以与 Windows 兼容的方式编译它?

这就是“长问题”。是的,而且非常容易。
当您确实有 Windows 环境并希望为此生成可执行文件时 - 首先不需要在单独的 VM(或 WSL)中执行此操作,只需获取用于 GnuCOBOL 的官方即用型 MinGW 包(可用于32 位和 64 位)并直接在 Windows 机器上编译。

于 2017-07-22T21:09:19.427 回答