我可以将`a.out`文件转换为C / C ++中的“可执行文件”(在Linux上!)? [关闭]

问题描述 投票:-4回答:3

我记得在Windows上使用visual studio for C / C ++,它为我创建的每个控制台应用程序创建了一个name.exe文件。我想知道我是否可以在linux上制作它。我不想用./a.out打开它,我想知道我是否可以像在Windows中一样,双击文件和控制台弹出。

PS:我不确定标题,你可以用一个更相关的改变它

c++ c linux terminal
3个回答
11
投票

a.out是一个可执行文件......重命名它。如果希望gcc指定可执行文件名,请使用“-o”编译器选项,例如:

gcc file.c -o exename


4
投票

如果我理解正确,你有一个需要terminal的程序。当您在文件管理器中单击该程序时,它会运行该程序,但由于它没有打开终端,因此输出将转到某个日志文件。您想打开终端并从文件管理器运行程序。

在Linux下,这是通过.desktop file完成的。和许多事情一样,Arch Wiki有一个很好的教程。这是一个与可执行文件不同的文件:Linux可执行文件没有像Windows那样的“控制台”应用程序的特殊情况。一劳永逸地创建一个包含程序路径的.desktop文件。您可以将.desktop文件放在同一目录中,也可以根据需要放在不同的目录中。 .desktop文件可以是这样的:

[Desktop Entry]
Type=Application
Version=1.0
Name=Run a.out
Exec=./a.out
Terminal=True

.desktop执行权限。


2
投票

是的你可以。 Linux中的a.out就像windows中的name.exe一样。在Unix / Linux环境中,默认情况下,CC++编译器将exe作为a.out,这只是一个exe文件。在Linux中,只需编译下面的代码,根据您的要求制作exe: -

gcc your_cpp_file.cpp -o name.exe
© www.soinside.com 2019 - 2024. All rights reserved.