Re: Кросс-компиляторы для Debian
On Mon, 16 Feb 2015 06:43:44 +0500 Alexey Shaposhnikov canisdirusle...@yandex.ru wrote: On Sun, 15 Feb 2015 13:32:41 +0300 Victor Wagner vi...@wagner.pp.ru wrote: Понятно, что xapt и dpkg-cross по прежнему в дистрибутиве присутствуют (хотя из testing оба выпали, что неприятный симптом). Но тулчейны-то где брать? Брать из unstable или experimental: https://wiki.debian.org/CrossToolchains#Status_of_cross-toolchains_in_the_Debian_archive Спасибо, вот эта ссылочка это то, что нужно. Правда, примерно половина того, что нужно. Вторая половина информации - это то, как нынче принято build dependences при кросс-компиляции ставить, а также неизбежные мелочи и тонкости, которые возникнуть при компиляции реальных пакетов. Помнится, когда я последний раз этим занимался лет пять назад кое-какие проблемы там были. Некоторую проблему представляет то, что сейчас, похоже архитектура i386 в качестве хоста для кросс-разработки уже не поддерживается. По этим ссылкам все в основном про amd64. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150216121740.68764060@fafnir
Re: Кросс-компиляторы для Debian
15 февраля 2015 г., 16:32 пользователь Victor Wagner написал: Но тулчейны-то где брать? * Собирать самому, ибо это обычные пакеты, как и всякие другие, правда придётся пройти через колючие кусты. * Можно взять http://crosstool-ng.org/, я из него беру патчи. * Можно собрать toolchain в рамках openwrt или другого подобного. * Я собираю сам в рамках своей системы сборки, но вам предлагать не буду. Мы с вами на близкую тему спорили в вашем ЖЖ. Вы так и не прониклись важностью изучения кросс-сборки и особенностями встраиваемых систем.
Re: Кросс-компиляторы для Debian
On Sun, 15 Feb 2015 13:32:41 +0300 Victor Wagner vi...@wagner.pp.ru wrote: Вот раньше, насколько я помню, был проект emdebian, где помимо всего прочего были пакеты кросс-компиляторов. В репозитории jessie есть gcc-arm-none-eabi и binutils-none-eabi. Для сборки под «голый» ARM этого хватает. Пакеты я никогда не кросскомпилировал, потому не знаю, получится ли. -- Alexander Galanin -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150215154908.07891574e9446230dfffd...@galanin.nnov.ru
Re: Кросс-компиляторы для Debian
15 февраля 2015 г., 23:08 пользователь Dmitrii Kashin написал: Простите мне мою неопытность, но в чём нынче с этим проблема? Насколько я понимаю, gcc может собирать бинарники любой архитектуры при условии наличия заголовочных файлов и библиотек соответствующей архитектуры. Нет. toolchain (binutils, gcc, libc) собирается под каждый target отдельно. Причём, gcc два раза. проблемой. Так вот, разве нельзя просто добавить через dpkg дополнительную архитектуру (arm какой-нибудь) и установить необходимых devel-библиотек? Это представление сильно отличается от реальности? Если бы всё было так просто. На этом люди едят собаку, закусывая пудом соли.
Re: Кросс-компиляторы для Debian
Простите мне мою неопытность, но в чём нынче с этим проблема? Насколько я понимаю, gcc может собирать бинарники любой архитектуры при условии наличия заголовочных файлов и библиотек соответствующей архитектуры. С учётом существования multiarch, мне казалось, что это не должно быть проблемой. Так вот, разве нельзя просто добавить через dpkg дополнительную архитектуру (arm какой-нибудь) и установить необходимых devel-библиотек? Это представление сильно отличается от реальности? signature.asc Description: PGP signature
Re: Кросс-компиляторы для Debian
Dmitrii Kashin - debian-russian@lists.debian.org @ Sun, 15 Feb 2015 20:08:03 +0300: DK Простите мне мою неопытность, но в чём нынче с этим проблема? Насколько DK я понимаю, gcc может собирать бинарники любой архитектуры при условии DK наличия заголовочных файлов и библиотек соответствующей архитектуры. DK С учётом существования multiarch, мне казалось, что это не должно быть DK проблемой. Так вот, разве нельзя просто добавить через dpkg DK дополнительную архитектуру (arm какой-нибудь) и установить необходимых DK devel-библиотек? DK Это представление сильно отличается от реальности? Довольно сильно. multiarch - это про _выполнение_ программ, собранных под другую архитектуру. Однако, совместимую по процессорным командам. Т.е. на amd64 можно выполнять i386, а на armhf - armel. Для multiarch нужно ставить не devel-, а run-библиотеки, а на собственно исполнимые файлы программ multiarch не распространяется от слова совсем. Нельзя поставить в параллель gcc-i386 и gcc-amd64. Кросс-сборка к multiarch не имеет ни малейшего отношения, и требует наличия gcc и binutils, умеющих работать с целевой архитектурой, стоящих рядом (а следовательно, под другими именами) с родными. За devel-библиотеки так вот сходу не поручусь. С виду они в дистрибутиве под конкретную архитектуру, но нужны ли аналоги под целевую архитектуру для кросс-сборки, я не уверен. Возможно, не нужны, хотя тут тоже возможна засада - некоторые библиотеки под разные архитектуры собираются с разной функциональностью. Хедера (входящие в dev-пакеты наряду с dev-библиотеками) - общие. Хотя тут тоже возможна аналогичная засада. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/87a90fqbwi@silver.lasgalen.net
Re: Кросс-компиляторы для Debian
В Sun, 15 Feb 2015 19:27:26 +0700 Дмитрий Фёдоров dm.fedo...@gmail.com пишет: 15 февраля 2015 г., 16:32 пользователь Victor Wagner написал: Но тулчейны-то где брать? * Собирать самому, ибо это обычные пакеты, как и всякие другие, правда придётся пройти через колючие кусты. Ну вот мне дешевле будет отказаться от желания иметь на планшете xephem. чем разбираться чем архитектура armhf в Debian отличается от armel. НУ или подождать, пока оно под qemu отработает. * Можно взять http://crosstool-ng.org/, я из него беру патчи. Там нет deb-пакетов. (на emdebian были). Соответственно, это считай вся работа с нуля. Я вообще-то имею опыт самостоятельной сборки кросс-тулчейнов для debian Было время, я djgpp собирал. * Я собираю сам в рамках своей системы сборки, но вам предлагать не буду. Правильно. Потому что мне не нужна своя система сборки. Мне нужна дебиановская. Как-то ведь люди это делают. С трудом верится что builldd для всех архитектур работает на родном железе. Мы с вами на близкую тему спорили в вашем ЖЖ. Вы так и не прониклись важностью изучения кросс-сборки и особенностями встраиваемых систем. Я вообще-то полностью согласен с тем что сейчас написано на emdebian.org. Сейчас система, на которой можно развернуть полноценный дебиан стоит такие копейки, что нехрен городить огород с особенностями встраиваемых систем. Но это не значит, что не нужна кросскомпиляция. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150215211933.234c8...@wagner.wagner.home
Re: Кросс-компиляторы для Debian
В Sun, 15 Feb 2015 21:15:25 +0300 Artem Chuprina r...@ran.pp.ru пишет: devel-библиотеки так вот сходу не поручусь. С виду они в дистрибутиве под конкретную архитектуру, но нужны ли аналоги под целевую архитектуру для кросс-сборки, я не уверен. Возможно, не нужны, хотя Нужны-нужны. Ставятся в /usr/архитектура/lib, а заголовочные файлы от них в /usr/архитектура/include. И gcc запущенная для целевой архитектуры arm-linux-eabi будет сначала смотреть в /usr/arm-linux-eabi/include, и только потом в /usr/include. Но с этим как раз неплохо справляется (и 5 лет назад справлялся) dpkg-cross. Он берет пакет библиотек или -dev пакет для целевой архитектуры, переписывает в нем пути вышеуказанным способом, и формирует архитектурно-независимый пакет библиотек для кросс-компиляции. Кстати, характерным примером пакета кросс-тулчейна являются пакеты gcc-mingw-w64-i686 и binutils-mingw-w64-i686 (и аналогичные x86-64) Там еще есть пачка пакетов с библиотеками и инклюдами специфичными для целевой платформы этих компиляторов. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150215234400.0fc38...@wagner.wagner.home
Re: Кросс-компиляторы для Debian
On Sun, 15 Feb 2015 13:32:41 +0300 Victor Wagner vi...@wagner.pp.ru wrote: Понятно, что xapt и dpkg-cross по прежнему в дистрибутиве присутствуют (хотя из testing оба выпали, что неприятный симптом). Но тулчейны-то где брать? Брать из unstable или experimental: https://wiki.debian.org/CrossToolchains#Status_of_cross-toolchains_in_the_Debian_archive P.S. А то, что какой-то пакет из testing выпал это ещё не симптом. Обычное дело, когда в stable ещё есть, в unstable уже есть, а вот в testing никто кормить не обещал. -- С уважением, Алексей Шапошников. -- To UNSUBSCRIBE, email to debian-russian-requ...@lists.debian.org with a subject of unsubscribe. Trouble? Contact listmas...@lists.debian.org Archive: https://lists.debian.org/20150216064344.4ce37...@warrawoona.sti