C 使用linux终端编译问题
因此,我试图使用linux命令行编译一个程序。我通过虚拟机使用linux。我使用C 使用linux终端编译问题,c,linux,compilation,C,Linux,Compilation,因此,我试图使用linux命令行编译一个程序。我通过虚拟机使用linux。我使用 gcc -lm calc.c -o calc 其中calc.c是源文件,我使用-lm进行编译,因为它包含math.h。我将对源代码进行更改,但它不会在运行时反映出来。事实上,这行代码甚至不生成calc.exe…帮助 事实上,这行代码甚至不生成calc.exe 您需要阅读gcc和Linux,可执行文件在Linux中不需要任何特定的扩展,它只需要可执行权限。(.exe在windows上使用) “gcc-lm计算-o计
gcc -lm calc.c -o calc
其中calc.c
是源文件,我使用-lm
进行编译,因为它包含math.h
。我将对源代码进行更改,但它不会在运行时反映出来。事实上,这行代码甚至不生成calc.exe…帮助
事实上,这行代码甚至不生成calc.exe
您需要阅读gcc和Linux,可执行文件在Linux中不需要任何特定的扩展,它只需要可执行权限。(.exe在windows上使用)
“gcc-lm计算-o计算”
此行将生成一个名为calc
的可执行文件(-o
标志后的名称是可执行文件的名称)。您可以通过以下方式运行它:
/calc
您可以通过ls-l calc
验证它是否可执行,您将看到如下内容:
-rwxrwxr-x 1 [owner/group names] [file size] [date you built] [time you built] calc
输出中的x表示它是可执行的。您说的是“它不反映我运行时的情况”。如果甚至不生成可执行文件,您如何运行它?
calc
与calc.exe
不同。它是否会创建calc
?在Linux中,您不会将.exe放入可执行文件中。谢谢你的帮助。事实证明,我的代码中有一个错误,导致它无法编译。我没有把它通读一遍。。。lol@CalvinS-哥达查信息技术happens@CalvinS:前缀/
很重要;如果没有它,如果您的$PATH
中碰巧有一个名为calc
的程序,那么您可以执行该程序,而不是执行您的程序。(名为Test
的测试程序是此错误的常见来源。)如果您的代码没有编译,您应该会从编译器收到一条错误消息。请注意:您还可以键入file calc
,并获得有关它是哪种文件的一些输出。