Mysql 在服务器上编译程序

Mysql 在服务器上编译程序,mysql,c,makefile,Mysql,C,Makefile,一般来说,我对服务器和编程都是新手,我有一个关于远程访问服务器的问题,以及我能在服务器上做多少工作 问题是我在linux服务器上有一个工作程序,我使用mobaxterm访问我的windows机器。我可以访问服务器,看到文件夹和cmd行,在那里我可以编译一个makefile。一切都运行得很好,但是当我运行makefile时,它只是编译,什么也不做。没有错误消息,但也没有打开程序。我什么都不懂。它只能在服务器上存储文件,这是对服务器结构的一种划分吗 在linux下使用make编译时,它会生成一个可执

一般来说,我对服务器和编程都是新手,我有一个关于远程访问服务器的问题,以及我能在服务器上做多少工作


问题是我在linux服务器上有一个工作程序,我使用mobaxterm访问我的windows机器。我可以访问服务器,看到文件夹和cmd行,在那里我可以编译一个makefile。一切都运行得很好,但是当我运行makefile时,它只是编译,什么也不做。没有错误消息,但也没有打开程序。我什么都不懂。它只能在服务器上存储文件,这是对服务器结构的一种划分吗

在linux下使用make编译时,它会生成一个可执行文件,但不会运行它。生成可执行对象,但不运行它们。您应该在问题中包含makefile(如果makefile很大,则减少到最小值)。在它里面,您将看到它生成了一个具有特定名称的可执行文件。要运行它,您需要从命令行调用它

要了解它正在构建什么,一个快速的方法是键入“makeclean”(当然按enter键)来清理任何构建的对象。然后键入“ls”命令查看目录中的内容

接下来,使用“make”命令构建程序,然后键入“ls”查看添加的内容。忽略以.o或.a或.so结尾的任何新文件,并查找任何新文件。这些是make生成的文件,其中至少有一个是您生成的程序

假设您找到了一个名为“myprogram”的新文件。要运行它,请键入:

./myprogram

编译源代码不同于执行一个程序。没错,它不会弹出一个.exe文件。它可以打开一个带有颜色和所有内容的交互式地图,甚至在服务器上也可以吗?这不需要很多其他的程序吗?如果makefile只编译会有什么问题?它可能就是为了这样写的。如果没有编译错误或警告,make的调用很可能什么都没有显示。您误解了。当您执行Make并且它运行一个makefile时,它可能会也可能不会执行另一个程序,这取决于makefile所说的内容。这不是文件系统、服务器体系结构或其他任何问题。感谢您的明确说明!我将尝试查看生成文件。@1233023:您也可以运行
find-键入f-perm-u=x ls
列出当前目录和子目录中的所有可执行文件。在
make
之前和之后运行它通常是查找构建的二进制文件的一种简单方法。(或者,如果只在
make
之后运行它,请检查列表中的日期和时间;如果它是刚构建的,则文件日期应反映它。)