程序编译后未打开

Program not opening after being compiled

本文关键字:编译 程序      更新时间:2023-10-16

昨天我在C++玩一个IRC机器人。它编译和工作得很好,它唯一真正做的就是在看到"ping"时说"pong"。

今天我试图实现一个随机的事实代码。我在cygwin中使用编译了它

g++ -o ircbot.exe main.cpp bot.h bot.cpp

现在,当我尝试打开它时,它告诉我"Windows 无法访问指定的设备、路径或文件。您可能没有访问该文件的适当权限。

在认为我做错了什么之后,我回去,注释掉我所做的所有更改,尝试再次编译它,它给出了相同的Windows错误。我不太确定我在这里哪里出错了,有没有人发生过类似的事情?

快速更新,当我将 Windows 上的共享状态更改为share with homegroup时,它告诉我我运行的版本与我的 Windows 版本不兼容,并检查它是 32 位还是 64 位。我不知道这是怎么回事,这是我编程遇到的最奇怪的问题。我会在Linux中试一试,看看它是否会吸引任何愚蠢的业务。

这发生在 Linux 上,但由于您使用的是 cygwin 并且问题非常相似,因此可能是同一件事。

我在 64 位机器上将一个 C++ 程序编译成 32 位可执行文件。尝试执行给了我一条"找不到文件"消息。

事实证明它失败了,因为我没有我的程序所需的 32 位版本的库。由于某种原因,链接器没有捕获它。

尝试传递 -m32 或 -m64,具体取决于计算机的体系结构。