我想在 ubuntu 上安装 freeBASIC(用于编写 QBASIC)。我安装了一个名为“libfreebasic”的软件包,但我的系统上没有看到任何差异...我可以在 ubuntu 中使用 QBASIC 编写代码吗?
答案1
您可以使用QB64如果您想使用 QBASIC,则可以使用 IDE。(是的,它在 32 位平台上运行。)
如果你想坚持自由基本,你需要安装一些依赖项。此外,它只是一个编译器,因此你需要使用你选择的文本编辑器创建脚本,然后从终端编译并执行它们,如下所示:
$ fbc -lang qb example.bas
$ ./example
安装依赖项
来源:http://www.freebasic.net/wiki/wikka.php?wakka=CompilerInstalling
32 位
$ sudo apt-get install gcc g++ libncurses5-dev libx11-dev libxext-dev libxrender-dev libxrandr-dev libxpm-dev libffi-dev
64 位
$ sudo apt-get install gcc-multilib g++-multilib lib32ncurses5-dev libx11-dev:i386 libxext-dev:i386 libxrender-dev:i386 libxrandr-dev:i386 libxpm-dev:i386
安装 FreeBASIC
$ wget 'http://sourceforge.net/projects/fbc/files/Binaries%20-%20Linux/FreeBASIC-0.90.1-linux.tar.gz/download?download=#' -O FreeBASIC-0.90.1-linux.tar.gz
$ tar -xf FreeBASIC-0.90.1-linux.tar.gz
$ cd FreeBASIC-0.90.1-linux
$ sudo ./install.sh
答案2
您正在寻找的是 BASIC 解释器。您可以在任何文本编辑器上编写 BASIC。根据这个帖子,您应遵循的程序是:
- 从微软获取 Qbasic.exe
- 安装 dosemu:sudo apt-get install dosemu
- 右键单击 Qbasic.exe 并“使用 dosemu 打开”
当然,真正的问题是,你到底为什么要想编写 BASIC 代码?即使您确实有充分的理由,您为什么要在 Linux 环境中编写 BASIC 代码?在 *ix 世界中,已经集成了许多解释型语言,或者可以非常轻松地为其安装解释器。该列表包括但不限于 Perl、Python、BASH、TCSH、Ruby、Lisp...
答案3
如果您正在寻找专门针对 QBasic 的完整 IDE,我认为您找不到。FreeBASIC 是一个编译器,它声称与 QBasic 兼容,但您不会使用它来实际编写应用程序。您可以在任何您喜欢的文本编辑器或 IDE 中编写 BASIC 应用程序(我推荐 Emacs,其他人可能推荐 Vim、Eclipse 或其他东西)。在您选择的编辑器中编写应用程序后,您可以使用 FreeBASIC 在您的机器上编译它。
但是,您确实可能需要考虑 QBasic 以外的选项。如果您打算使用某种形式的 Basic,则可以使用 VB.Net,并使用 Mono VB.Net 编译器进行编译。您也可以尝试甘巴斯,真正的BASIC、KBasic 等等。
答案4
当这个问题被写下来时、免费且友好的虚拟化或模拟环境还有很多不足之处。
但是现在我建议托管虚拟机。VirtualBox(免费,在 Linux 上运行良好)刚刚发布了 v6.0.2,而 FreeDOS 1.1(免费)是一款您可以直接插入其中的 VM。一站式服务。
我现在有多个版本的 quickbasic/QBasic(来自我以前收集的非常旧的文件),包括该虚拟机上的 4.5 和 7.1,以及 FreeBASIC 编译器(免费)、WordStar(我的书架上有一本盒装的软盘和手册),以及一堆我下载的东西通过包管理器在 FreeDOS 中称为 FDIMPLES.EXE。
虽然我推荐 FreeDOS,因为它兼具了保真度和现代性,但我也在使用 MS-DOS 6.22(同样,磁盘装在盒子里)虚拟机。到目前为止,我发现它们之间没有兼容性差异。值得注意的是:WordStar 可以保存!如果你知道为什么这很重要,你可能已经在下载了。
我在 Windows 机器上的 Oracle VirtualBox 上托管这些虚拟机,但由于整机虚拟化如此出色,因此硬件上运行的实际操作系统是什么并不重要,只要它受 VirtualBox 支持即可。
VMWare 是另一家虚拟化主机发布者,但我对它不太熟悉。
我认为这回答了问题的核心以及技术优点。此解决方案无法做到的一件事是让您在编码时沉浸在 Linux 中——您无法在文件放置时 grep awk sed chop split 文件——您将沉浸在 DOS 中,坦率地说,您必须努力才能进行一些跨系统文件共享。但是,在 Linux 上,稳定、现代的 FTP 服务器应该是微不足道的,并且 FreeDOS VM 实际上可以设置为运行自己的 FTP 服务器(当然是 FTPSERV.EXE),以便您可以在主机(在您的例子中是 Linux)环境中将文件推送到它。从 Web 抓取文件并将其放在您想要的位置,而不是必须在 VM 中玩我把那个东西放在哪里的游戏。