Re: Кросс-компиляторы для Debian

2015-02-16 Пенетрантность Victor Wagner
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

2015-02-15 Пенетрантность Дмитрий Фёдоров
15 февраля 2015 г., 16:32 пользователь Victor Wagner написал:

 Но тулчейны-то где брать?

* Собирать самому, ибо это обычные пакеты, как и всякие другие,
правда придётся пройти через колючие кусты.

* Можно взять http://crosstool-ng.org/, я из него беру патчи.

* Можно собрать toolchain в рамках openwrt или
другого подобного.

* Я собираю сам в рамках своей системы сборки,
но вам предлагать не буду.

Мы с вами на близкую тему спорили в вашем ЖЖ.
Вы так и не прониклись важностью изучения кросс-сборки
и особенностями встраиваемых систем.


Re: Кросс-компиляторы для Debian

2015-02-15 Пенетрантность Alexander Galanin
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

2015-02-15 Пенетрантность Дмитрий Фёдоров
15 февраля 2015 г., 23:08 пользователь Dmitrii Kashin написал:

 Простите мне мою неопытность, но в чём нынче с этим проблема? Насколько
 я понимаю, gcc может собирать бинарники любой архитектуры при условии
 наличия заголовочных файлов и библиотек соответствующей архитектуры.

Нет. toolchain (binutils, gcc, libc)  собирается под каждый target
отдельно. Причём, gcc два раза.

 проблемой. Так вот, разве нельзя просто добавить через dpkg
 дополнительную архитектуру (arm какой-нибудь) и установить необходимых
 devel-библиотек?

 Это представление сильно отличается от реальности?

Если бы всё было так просто.
На этом люди едят собаку, закусывая пудом соли.


Re: Кросс-компиляторы для Debian

2015-02-15 Пенетрантность Dmitrii Kashin

Простите мне мою неопытность, но в чём нынче с этим проблема? Насколько
я понимаю, gcc может собирать бинарники любой архитектуры при условии
наличия заголовочных файлов и библиотек соответствующей архитектуры.

С учётом существования multiarch, мне казалось, что это не должно быть
проблемой. Так вот, разве нельзя просто добавить через dpkg
дополнительную архитектуру (arm какой-нибудь) и установить необходимых
devel-библиотек?

Это представление сильно отличается от реальности?


signature.asc
Description: PGP signature


Re: Кросс-компиляторы для Debian

2015-02-15 Пенетрантность Artem Chuprina
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

2015-02-15 Пенетрантность Victor Wagner
В 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

2015-02-15 Пенетрантность Victor Wagner
В 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

2015-02-15 Пенетрантность Alexey Shaposhnikov
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