我在FreeBSD上编译了一个应用程序(我没有源代码),当我输入./app
它在FreeBSD上正常运行时,但是在Debian上我在控制台中收到了这条消息:
-bash:./ app:没有这样的文件或目录
当然,我和'app'应用程序位于同一目录中。
我不能留在FreeBSD上,因为我更喜欢Debian。是否可以在Debian上运行此应用程序?
答案 0 :(得分:2)
FreeBSD和Linux都使用ELF格式的可执行文件,但它们有不同的ABI。
FreeBSD可以使用linux兼容层(aka linuxulator)执行Linux可执行文件,但linux(在你的情况下是Debian)不支持ELF的FreeBSD ABI。
您需要专门为linux重新编译应用程序。
答案 1 :(得分:1)
这不太可能,但可能。在最坏的情况下,你应该在Debian机器上重新编译你的应用程序。
另外,请确保./app文件中有执行标志。