在Ubuntu上使用GNU Cobol编译Windows(.exe)可执行文件

4
我需要将一个名为main.cobc的程序文件编译成Windows可执行文件。使用命令cobc -x -free *.cobc -o main可以将其编译成Linux可执行文件,但无法在Windows上直接运行。我已经在我的Linux Ubuntu虚拟机上安装了gnucobol(OpenCOBOL)。请问有没有办法以适用于Windows的方式进行编译?谢谢!

1
你在 Windows 主机上使用 Ubuntu 虚拟机,是吗?如果你想用 cobc 编译程序以生成 Windows 二进制文件,那么在 Windows 上做这件事可能会更容易...请解释我错过了什么。 - Simon Sobisch
1个回答

5
有没有一种方法可以编译COBOL源代码,让它与Windows兼容?
这并不是标题中的问题,所以首先回答这个问题。你能从Ubuntu做到吗?是的...因为cobc使用底层的C编译器,你可以使用C编译器进行交叉编译(你可能会使用gcc-mingw-w64-i686或gcc-mingw-w64-x86-64)。
但是需要进行很多设置。
- 安装交叉编译环境 - 在此环境中获取cobc/libcob的所有依赖项 - 使用./configure --host=i686-w64-mingw32从源代码构建和安装GnuCOBOL软件包的第二个版本 - 使用mingw版本的cobc编译您的程序
这样,您就可以获得一个"main.exe",只要您发送mingw dll、libcob dll(以及所有其依赖项的dll文件),就可以在Windows计算机上使用它。
我在我的Linux Ubuntu虚拟机上安装了gnucobol(OpenCOBOL)。请帮忙。有没有一种方法可以编译它,使它与Windows兼容?
这就是“长问题”。是的,非常简单。当您拥有Windows环境并想为其生成可执行文件时,无需首先在单独的VM(或WSL)中执行此操作,只需获取GnuCOBOL的官方现成的MinGW软件包(适用于32位和64位),并直接在Windows机器上进行编译即可。

考虑使用 Windows 10 的 WSL,而不是 Linux 虚拟机。 - ddbug

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接