移植可执行程序后总是提示无效的自变量

来源:百度知道 编辑:UC知道 时间:2024/05/28 08:01:32
如题,公司内网两个unix服务器,我在其中一个服务器的终端将一个程序编译后(得到a.out)可以正确运行,但当把可执行体a.out用ftp传到另一个服务器的终端,然后执行./a.out时shell提示
./a.out:无效的自变量
应该不存在可移植性的问题,就是一个简单的"hello world",哪位帮忙下啊,先谢谢了

unix 是笼统的名称,具体到每台 unix,它可能是 Sun (Sun 里操作系统 还有大的分类), 可能是 HP, 可能是 SGI 等。 只有 相同的 系统 a.out 才能运行。
所有 unix 都有 C 编译器,你可以把 c 程序传过去,telnet 到 那个服务器上,再编译。 编译器 通常是 cc 或 gcc.

可移植性 -- 指的是原程序可以不修改或略加修改就可以用。不是讲可执行程序,可执行程序直接运行就不叫“移植”。

ftp 时必须用 bin 模式。

哥们,是不是a.out的属性中没有“可执行”一项?
运行chmod +x ./a.out后再试试?