Я буду проделывать все шаги от начала - почти полного незнания того, как делается кросс-копиляция, до, надеюсь, рабочего midnight commander.
Полного и исчерпывающего how to я нигде не нашел. Попытаюсь устранить пробел.
Хочу поблагодарить разработчиков и мейнтейнеров проекта midnight commander с которыми мне довелось пообщаться, а именно andrew_b, il.smind, repolainen, slavazanko за доброе отношение и желание помочь.
Собственно весь процесс сборки изображен на диаграмме слева.
Почти для всех программ этот процесс одинаков.
Когда мы собираем программу или библиотеку мы последовательно выполняем три шага
$ ./configure [param-1]...[param-n]
$ make
$ make install
Выполнение по шагам этой инструкции предполагает отсутствие ошибок. Составляя эту инструкцию, я все проделывал самолично и, думаю, значительно минимизировал их количество. Но, все таки, в вашей сборке могут выявиться ошибки, которые не возникли в моей конфигурации. Причин, почему это происходит, достаточно.
- Во первых сам проект midnight commander далеко не тривиальный;
- Все проекты созданы разными людьми, которые иногда и не осознавали как их творение будет использоваться;
- Зачастую, разработчики не парятся тестированием своих проектов на совместимость с кросскомпиляцией;
- Китайцы, которые реализовали устройство на китайской платформе Syabas, куда мы будем кросскомпилировать midnight commander, учились не в академгородке.
Теперь договоримся о структуре каталогов для ведения проекта.
Для сборки toolchain мы использовали каталог Staff. Он у нас и дальше будет корнем проекта.
А все библиотеки и сам midnight commander будут располагаться в каталогах ниже Staff по иерархии.
Ну вот теперь все готово. Вперед!Для сборки toolchain мы использовали каталог Staff. Он у нас и дальше будет корнем проекта.
А все библиотеки и сам midnight commander будут располагаться в каталогах ниже Staff по иерархии.
- Скомпилировать zlib
- Скомпилировать libpng
- Скомпилировать slang-2.2.2
- Скомпилировать gettext-0.16
- Скомпилировать libiconv-1.13.1
- Скомпилировать glib-2.22.5
- Скомпилировать midnight commander
Если нет подходящей темы, открывайте новую.
Пока еще:
Не работает статическая сборка.
Решение (заплатка) здесь.
Не работает make install
Решение (заплатка).
- Не работает русская кодировка UTF-8
Если есть желание помочь - велкам. В форуме
Если лениво все это проделывать, то можно просто скачать
дистрибутив: mc-4.7.1-mipsel.tar.bz.
и библиотеки: mc-4.7.1-mipsel-libs.tar.bz
![]() |