Используя платформу x86, я хочу запустить мое приложение с именем myapp с помощью этого метода: execl("./myapp","");
Все в порядке! Но не удалось, когда я использую платформу ARM + встроенный linux. Зачем ? Любая помощь будет оценена. Заранее спасибо.«execle» разница между linux и встроенным linux
3
A
ответ
2
Если вы хотели бы использовать execle
проходить в той же среде, что было ваше вызывающее приложение, вы можете использовать это:
#include <unistd.h>
extern char **environ;
/* ... */
execle("./myApp","./myApp",NULL,environ);
+0
О, я понимаю, спасибо большое –
3
Ваш вызов неправильно: список аргументов execl()
«s должен быть нагружен NULL
,
Тот факт, что он работает на всех на x86 это чудо;)
Согласно странице человека, вы должны использовать 'execl ("./ MyApp", "./myapp"(символ *) NULL); '. Какая ошибка вы получаете? Что такое возвращаемое значение из 'execl' и что такое' errno'? –
Я получаю «.so» не найдено –