【发布时间】:2013-06-19 20:16:26
【问题描述】:
我无法通过execlp 执行二进制文件。
chdir("/home/foo/bar/baz/MB/");
execlp("bash", "bash", "./foobarbaz 1", NULL);
foobarbaz 是我的 c 文件,我收到以下错误:
./foobarbaz: cannot execute binary file
我试过chmod +x foobarbaz.c
还有test.c 存在execlp 的文件。
我犯了什么错误?
【问题讨论】:
-
"foobarbaz 是我的 c 文件" 真的吗?你的意思是它是你编译的可执行文件还是它实际上是一个源代码文件?
-
扩展名是
.c -
在 bash 中,你能
cd /home/foo/bar/baz/MB/和./foobarbaz 1吗? -
是的。在 bash 我可以直接做到这一点。 @johnathan 是正确的。