LINUX.ORG.RU

Hello world на D-link modem

 , ,


0

1

Есть D-link DIR-620

$ cat /proc/version 
Linux version 2.6.30.9 (builder@rd) (gcc version 4.4.5-1.5.5p4 (GCC) ) #1 Fri Nov 21 17:35:36 MSK 2014

cat /proc/cpuinfo
system type             : RTL819xD
processor               : 0
cpu model               : 56322
BogoMIPS                : 619.31
hardware watchpoint     : no
tlb_entries             : 32
mips16 implemented      : yes

Пытаюсь скомпилировать простую программу

char *text = "Hello world!\n";
int main(int argc, char *argv) {
  unsigned char i = 0;
  while (*(text + i) && i < 200) {
    putchar(*(text + i));
    i++;
  }
}
gcc hello.c -O3 -o hello

Запускаю на модеме

$ ./hello 
./hello: line 1: syntax error: unexpected "("

Я пробовал компилировать с разных платформ, но результат один, поделитесь соображениями, спасибо!



Последнее исправление: cetjs2 (всего исправлений: 2)

Так ты собираешь под amd64 небось, а запускаешь на rtl819xd. Но сообщение об ошибке выглядит довольно интересно, как будто он не понимает elf чужой платформы и пытается запустить через sh.

mix_mix ★★★★★
()
Ответ на: комментарий от anonymous

anonymous, я день вычитываю об этой ошибке, от безысходности сюда написал

morkovkin
() автор топика
Ответ на: комментарий от morkovkin

Ты не можешь собрать программу под i386 и запустить её на принципиально другой архитектуре, man кросс-компиляция

mix_mix ★★★★★
()

Ну всё правильно. Ты ж не на момеде компилял.

Deleted
()
Ответ на: комментарий от morkovkin

дурень, на твоём длинке проц mips RTL819xD, а на твоём компе компилятор для x86. тебе нужен кросскомпилятор

anonymous
()
Ответ на: комментарий от morkovkin

собирал под i386, тоже самое делал из-под qemu-system-x86_64

Эээ, и что же ты рассчитываешь увидеть в таком случае? Ты пытаешься грызть воду из решета.

I-Love-Microsoft ★★★★★
()

иногда вендоры предоставляют sdk, попробуйте написать в тех поддержку dlikn

IvanR ★★★
()
Ответ на: комментарий от mix_mix

Но сообщение об ошибке выглядит довольно интересно, как будто он не понимает elf чужой платформы и пытается запустить через sh.

это документированное поведение, если не знаем чем открывать, то /bin/sh.

emulek
()
Ответ на: комментарий от morkovkin

найди компилятор для этого процессора

поставь на нормальный компьютер

компиляй@запускай

emulek
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.