Следуя руководству по http://www.waitingforthefuture.org/2009/12/25/compiling-tcpdump-for-tomato-firmware/, Я пытался скомпилировать tcpdump. Я сделал компиляцию на компьютере Intel Pentium 4 2.26Ghz под управлением Ubuntu 10.04.
В моем маршрутизаторе используется ЦП BCM3302 V2.9. Однако, когда я запускаю на нем tcpdump, он говорит: «Недопустимая инструкция».
Почему это происходит? Какую еще конфигурацию я должен выполнить перед компиляцией?
Вам нужно скомпилировать платформу, на которой вы планируете запускать что-то. Это может быть возможно с Кросс-компиляция GCC, но только если вы можете получить описания и таблицы символов для целевого процессора.
Вы получаете "незаконную инструкцию", потому что программное обеспечение ищет инструкцию x86 на чипе явно не x86.
BCM3302 появляется быть микросхемой архитектуры MIPS32. Есть некоторые инструменты доступный.