Как скомпилировать файл C в эскизе Arduino с помощью system()?
Вероятно, это будет вопрос новичка, но я пытался найти его в течение многих дней и не смог найти источник своей проблемы. Пожалуйста, направь меня в правильном направлении.
Я использую плату Intel Galileo Gen 2, на которой у меня есть SD-карта с "большим" образом Linux. Я скопировал мой файл.c на доску и скомпилировал его с помощью следующей команды:
gcc picture_grab.c -lv4l2 -o picture_grab
У меня нет ошибок и все отлично работает с
./picture_grab -W 325 -H 288 -c 5 Encode RGB24
Предполагается, что программа получит несколько снимков с USB-камеры, подключенной к Galileo.
Теперь, когда я пытаюсь поместить эти команды в набросок Arduino, ничего не происходит. Вот мой код:
void setup() {
Serial.begin(9600);
system("date > /home/root/date2.txt");
delay(1100);
system("gcc picture_grab.c -lv4l2 -o picture_grab");
delay(5000);
system("./picture_grab -W 325 -H 288 -c 5 Encode RGB24");
delay(20000);
}
void loop() {
// put your main code here, to run repeatedly:
}
Я ввел команду date, чтобы проверить, действительно ли скетч мигает, и каждый раз, когда я пытаюсь загрузить, файл "date2.txt" обновляется с новой датой платы, так что вызов system() работает,
Я не понимаю, почему команда gcc не передается в терминал. Что я делаю неправильно? Разве невозможно скомпилировать файлы.c или выполнить объектные файлы таким образом? Если нет, то как я могу решить эту проблему?
Заранее большое спасибо.