вопрос про ускорение компиляции на завре (distcc)

КПК с Linux, установка Linux на iPaq и другие модели, программы
psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

вопрос про ускорение компиляции на завре (distcc)

Сообщение psionrevo » Вс ноя 25, 2007 10:40

собственно, кто-нибудь использовал distcc?

хочу компилить на завре, а грузить проц большого компа
завр по usb в сетке с компом
на компе хочу собрать коллекцию из cygwin (так как окружают только windows компы)

я так понял:

на ББ
под cygwin надо устанавить gcc, ccache, distcc
запустить демон distccd
открыть в фаерволе нужный порт

на завре
запустить демон distccd

так?
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

geometer
Доктор (4 lvl)
Сообщения: 340
Зарегистрирован: Вс июн 27, 2004 09:55

Сообщение geometer » Вс ноя 25, 2007 12:07

Приблизительно так. Только на десктопе нужно, видимо, установить кросскомпилятор и все хедеры и библиотеки. Мне ничего не известно про существование собранного кросскомпилятора под Windows.
-- geometer

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Вс ноя 25, 2007 13:30

distcc sends the complete preprocessed source code across the network for each job, so all it requires of the volunteer machines is that they be running the distccd daemon, and that they have an appropriate compiler installed.

т.е. расшифрую - на ББ нужен лишь компилятор

ну а если на всякий случай, то:

про хедеры - так это не проблема - скопировал раз - и все
благо на большом компе места на винте всегда хватает

либы, думаю, не нужны - они ж только для линковки
а линковка и на завре быстрее некуда делается
дольше всего компиляция....

скачал исходники gcc2.95.2 - у именя на завре такой

теперь надо cygwin ставить и как-то под ним их компилить
вот тут-то советы пригодятся
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

Jay
Профессор (5 lvl)
Сообщения: 614
Зарегистрирован: Вт апр 26, 2005 11:15

Сообщение Jay » Вс ноя 25, 2007 19:59

Имхо, фраза
an appropriate compiler
- ключевая..
Насколько я в курсе - нужен полный тулчейн для компиляции под АРМ. Пошарьте в ветке про gentoo, там вроде было что-то про distcc и кросскомпиляцию.
Sharp Zaurus SL-C1000/SL-6000L/SL-5500 (Angstrom/kexecboot)

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Вс ноя 25, 2007 22:20

а разве нельзя просто под cygwin на windows компе скомпилить gcc 2.95.2 из исходников???

пробую dosbox компилить на завре
так на одном файле 3 часа c1plus колбасил
я top запустил во второй консоли и поглядывал - не выдержал и прервал компиляцию =))))
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

maslovsky
Нобелевский лауреат (7 lvl)
Сообщения: 2781
Зарегистрирован: Пн окт 20, 2003 20:14

Сообщение maslovsky » Пн ноя 26, 2007 14:30

Да не мучайся уже - запусти какой-нить линух под WMWare и всё...

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Пн ноя 26, 2007 15:05

собрал cachecc1.so, попробовал make test
- не работает =((
пробовал ручками set LD_PRELOAD и т.д.
так и не завел ..

потом собрал ccache
тут все заработало

собрал distcc
прочел ветку по gentoo как выше посоветовали - на завре вроде все настроено

перешел на ББ
установил cygwin
замучался с /etc/passwd и /etc/group
обчитался FAQ но так и не въехал, нужно ли root а добавлять
через login зайти не получается - пишет всегда Login incorrect

захожу в bash
а в нем даже ls запускается только как
/usr/bin/ls =(((
видимо надо в профиль путь записать
а где этот профиль, ведь рута нет....

да, не спец я в линухе =)
установил mc
так он по f3 и f4 ничего не делает
по ctrl+o
консольного приглашения нет
вообще труба....
наверное все-таки дело в правах

g++ пускается
но как запустить configure для исходников gcc2.95.2 не знаю
ругается на /bin/sh
где нужно прописать /bin/bash ?
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Вт ноя 27, 2007 00:52

таки настроил cygwin
оказывается надо было установить переменные окружения windows

скачал в инете gcc 2.95.2 готовый под cygwin
запустил - работает

так, теперь предпоследний бой :)
увязать cygwin и завра по сетке
завр пингует win без проблем
а вот из-под cygwin
ping выдает socket: operation not permitted
блин, как же root а под cygwin заделать и войти под ним ......
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Вт ноя 27, 2007 01:42

оказалось у меня был установлен драйвер,блокирующий raw sockets
снял его - теперь ping идет и с завра и из cygwin

to maslovsky:
а какая разница между этими
вариантами?
1)cygwin
2)VMWARE (плеер?)
я так понял cygwin меньше места займет =))) и бесплатный
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

maslovsky
Нобелевский лауреат (7 lvl)
Сообщения: 2781
Зарегистрирован: Пн окт 20, 2003 20:14

Сообщение maslovsky » Вт ноя 27, 2007 02:00

Если в двух словах и очень упрощённо:

WMWare - это эмулятор компьютера целиком (плеер бесплатный), cygwin - это имплементация POSIX для Windows.

geometer
Доктор (4 lvl)
Сообщения: 340
Зарегистрирован: Вс июн 27, 2004 09:55

Сообщение geometer » Вт ноя 27, 2007 15:24

psionrevo писал(а):скачал в инете gcc 2.95.2 готовый под cygwin
запустил - работает
Кросскомпилятор для ARM'а под cygwin?! Круто! А где его можно взять, ежели не секрет?
-- geometer

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Вт ноя 27, 2007 19:21

вот как бывает : зашел на форум поведать об ошибке, так geometr меня опередил =)

to geometr:
я был не прав=(((
как раз в тот момент,
когда наконец-то завр послал прекомпиленый код на большой комп
(где его принял distccd и запустил g++ на этот код - я уже потирал руки) cc1plus на ББ выдал ошибку
cc1plus: Invalid option `tune=strongarm'
cc1plus: Invalid option `tune=strongarm'
cc1plus: bad value (armv4t) for -march= switch
проверил - точно - в specs нет arm опций =((

сейчас ищу инфу в инете по этой проблеме
странно как-то : сборка gcc2.95.2 под linux на том же процессоре под ББ должна работать, а под win нет?
я уж боюсь потерять время, собирая gcc2.95.2 под win и в конце обнаружить не работающий на завре код ....

что ж, придется по совету maslovsky,на VMWare идти
а там с сеткой легко отстроить, чтобы пакеты ходили ?

у меня проблема была - firewall comodo
пускал ssh и ping с завра на ББ без проблем
а вот distcc с завра - ни в какую
чего только не перепробовал - так и не понял причину

все же рискну собрать gcc 2.95 из исходников на ББ
может кто что посоветует?


to maslovsky:
извиняюсь за назойливость, но хоть пару слов по теме про микшер в cacko можно?
http://www.hpc.ru/pda/board/index.php?t=159849
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

maslovsky
Нобелевский лауреат (7 lvl)
Сообщения: 2781
Зарегистрирован: Пн окт 20, 2003 20:14

Сообщение maslovsky » Вт ноя 27, 2007 20:21

psionrevo писал(а):что ж, придется по совету maslovsky,на VMWare идти
а там с сеткой легко отстроить, чтобы пакеты ходили ?
Всё там ходит. Это наиболее правильный вариант. Забей на Cygwin...

geometer
Доктор (4 lvl)
Сообщения: 340
Зарегистрирован: Вс июн 27, 2004 09:55

Сообщение geometer » Вт ноя 27, 2007 20:49

psionrevo писал(а): сейчас ищу инфу в инете по этой проблеме
странно как-то : сборка gcc2.95.2 под linux на том же процессоре под ББ должна работать, а под win нет?
Если кратко -- у компилятора есть
  • 1) архитектура, на которой он работает
    2) архитектура, для которой он собирает программы
Они, вообще говоря, никак друг с другом не связаны. Если они не совпадают, то эта штука называется кросскомпилятором. Существуют готовые собранные пакеты с кросскомпилятором, который работает на i386 linux и собирает пакеты для завровкого ARM'а.

Теоретически говоря, можно собрать из исходников кросскомпилятор для любой пары архитектур, в том числе -- для Windows/Zaurus. Практически -- для человека без опыта это, скорее всего, задача, не решаемая за разумное время.

Так что присоединяюсь к совету Антона -- ставить vmware.
-- geometer

psionrevo
Доктор (4 lvl)
Сообщения: 283
Зарегистрирован: Чт окт 05, 2006 22:48

Сообщение psionrevo » Ср ноя 28, 2007 02:04

да, все это здорово, но вот весит это все... в десятки раз больше cygwin а =(((
один плеер 200М - кошмар!

может у кого есть идеи?

пока думаю попробовать
то что доступно:
1)knoppix на CD
2)DSL (он 50M всего)

может на них cross встанет?
может кто уже пробовал?
Zaurus C1000 cacko + Nokia 6230/Htc touch pro + LG gx200 + ONYX Magellan

Закрыто

Вернуться в «КПК и смартфоны на Linux: Zaurus, планшеты Nokia, прочее»