使用x86平台,我想通过这种方法启动名为myapp的应用程序:execl("./myapp","");
没关系!但是当我使用ARM平台+嵌入式Linux时失败了。为什么?任何帮助将不胜感激。提前谢谢。
答案 0 :(得分:3)
您的调用错误:execl()
的参数列表必须以NULL
终止。
它在x86上运行的事实是一个奇迹;)
答案 1 :(得分:2)
如果您想使用execle
传入与您的呼叫应用程序相同的环境,可以使用此功能:
#include <unistd.h>
extern char **environ;
/* ... */
execle("./myApp","./myApp",NULL,environ);