Guest Владимир Posted November 19, 2010 Share Posted November 19, 2010 Добрый день. Скомпилировали проекты, приложенные на диске к контроллеру Moxa IA241. На компьютере стоит Linux SuSe 11.3 Версия Tool chain 1.2 Действовали по инструкции. При запуске на контроллере программы выдают следующее сообщение: Inconsistency detected by ld.so: dynamic-link.h: 62: elf_get_dynamic_info: Accertion '! "bad dynamic tag"' failed! Файлы компилируются без ошибок. Подскажите пожалуйста что не так. Link to comment
Guest Владимир Posted November 20, 2010 Share Posted November 20, 2010 Добрый день. Хотел немного добавить к предыдущему. Господа, кто-нибудь вообще зпнимается разработкой софта под данные контроллеры или их аналоги ? Если да, поделитесь впечатлениями пожалуйста. А то судя по форуму, разработкой собственных программ для данного контроллера занимаются немногие... Link to comment
Komantsev Posted November 22, 2010 Share Posted November 22, 2010 Добрый день, Про компиляции добавьте опцию “-static”. Должно всё работать нормально. Link to comment
Guest Владимир Posted November 22, 2010 Share Posted November 22, 2010 Добрый день. Текст программы test.c: #include <stdlib.h> #include <stdio.h> int main() { printf("Hello world !!!"); return 0; } Строка компиляции: arm-linux-gcc -o test -static test.c Компиляция проходит нормально, при запуске на контроллере пишет "Illegal instruction" Пробывал разные вариации строки компиляции: arm-linux-gcc -o test -static -Wall -g -O2 test.c и т.д При некоторых вариантах пишет :Segmentation fault Что делаю не так ? Link to comment
Komantsev Posted November 24, 2010 Share Posted November 24, 2010 Владимир, Не удалось сэмулировать Вашу проблему. Похоже, возникают какие-то ошибки при компиляции. Попробуйте на всякий случай удалить toolchain и переустановить его заново. Link to comment
Guest Владимир Posted November 25, 2010 Share Posted November 25, 2010 Пробывал переустановить. Пробывал ставить на другой линукс (Fedora Core 5,14). Результат один и тот же.... Link to comment
Guest Владимир Posted November 25, 2010 Share Posted November 25, 2010 А существуют какие-либо заведомо настроенные виртуалки (например VM Ware) ? Потому что из вашего форума достаточно тяжело подчерпнуть какую-либо информацию. Выполнение инструкции по пунктам ни к чему не приводит, а тех поддержка как таковая отсутствует. Link to comment
Komantsev Posted December 2, 2010 Share Posted December 2, 2010 Владимир, Пробовали на нескольких конфигурациях, проблему не удалось сэмулировать. Пробовали и тайваньцы. Вот ответ: I test in my laptop(VMWare, Fendora 9, arm-linux-gcc(download from MOXA.com)) I test "hello world" sample and it could work well. Suggest you to download toolchain from web again. set path on /etc/profile (that is I set in my system) PATH=/usr/local/arm-linux/bin:$PATH Link to comment
Guest Владимир Posted December 3, 2010 Share Posted December 3, 2010 Добрый день. Мне они ответели примерно тоже самое. Уже не знаю в какую сторону копать. Пробывал на разнык конфигурациях. Toolchain 1.2 качал с сайта. Скачивал и обновлял прошивку. Делал Hard Reset. Добалял ключ "-static". Но итог каждый раз один. Вы бы не могли выложить парачку откомпилированных программ из самплов, идущих в комплекте. Например "Hello World". Link to comment
Guest Владимир Posted December 7, 2010 Share Posted December 7, 2010 Проблема решена. Предыдущий программист поставил ключ на контроллер, никому про это не сказав. Ключ этот не сбрасывается даже после Hard Reset и перепрошивки. Соответственно если программа не шифрована тем же ключём появляется сообщение об ошибке, приведённое в первом посте. Link to comment
Komantsev Posted December 7, 2010 Share Posted December 7, 2010 Владимир, Спасибо за информацию! Мы даже не подумали об этом. Приношу извинения за то, что не среагировали сразу. Будем иметь ввиду при возникновении подобных проблем в дальнейшем. P.S. Инженерам в Тайване я тоже сообщу, что проблема решена. Link to comment
Guest Владимир Posted December 8, 2010 Share Posted December 8, 2010 Добрый день. Помогли инженеры из Тайваня. Прислали инструкцию к UC-7400. В ней, в главе 6 есть сноска, в которой указаны возможные ошибки при установке ключа шифрования. А в инструкции к контроллеру IA241 такой сноски почему-то нет. Сноска приведена ниже. If you try to run an encrypted program on an embedded computer that does not have an encryption key installed, you will get the following error message. Error => Inconsistency detected by ld.so: dynamic-link.h: 62: elf_get_dynamic_info: Assertion `! “bad dynamic tag”‘ failed! 4. If you try to run an encrypted program on an embedded computer that has a different encryption key installed, you will get the following error message: Error => Segmentation fault Надеюсь эта информация поможет. Link to comment
Dmitriy Posted March 4, 2011 Share Posted March 4, 2011 А что такое "encrypted program"? Иногда эта ошибка возникает и отвязаться от неё очень сложно, обычно помогает перепрошивка контроллера или его замена. Где в показанном примере шифрование ? Link to comment
Komantsev Posted March 10, 2011 Share Posted March 10, 2011 Добрый день, В программах, записываемых на контроллер MOXA, есть возможность установить свой ID, и программы смогут выполняться только на контроллерах, знающих этот ID. Например, таким образом можно защититься от несанкционированного тиражирования пользователем Ваших программ на другие компьютеры. На самом контроллере можно установить ключ (например, ключ QweRty): #setkey QweRty или сбросить ключ: #setkey "" А в разработанную для контроллера программу можно также прошить ключ (запускается на PC перед прошивкой программы в контроллер): #binencryptor yourProgram QweRty Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now