Имя:    Пароль:      Помнить меня       
Unsorted   ~  Software  ~  Linux and Unix  ~  Есть желание наладить распределенную компиляцию? Посредством distcc
На страницу «  1, 2, 3
chaser
Сообщение  14 Окт 2008, 22:44  Ссылка : Ответить с цитатой
Возраст: 35 Пол: Мужской 
C нами с 04.02.2005
Репутация: 121.3

ZoRG, предлагаю все-таки назвать g++-4.1 и положить его в PATH, необязательно в /opt/
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID
splav
Сообщение  14 Окт 2008, 22:58  Ссылка : Ответить с цитатой
Возраст: 36 Пол: Мужской  Доверенный пользователь
C нами с 22.01.2006
Репутация: 256.8

chaser, предлагаю назвать как положено...
i686-pc-linux-gnu-gcc-4.2.2 и x86_64-pc-linux-gnu-gcc-4.1.2 (именно эти на unsorted есть)

Добавлено спустя 6 минут 5 секунд:

Ну или устоявшие симлинки сделать вида i686-pc-linux-gnu-gcc-4.2 и i686-pc-linux-gnu-gcc-4.1
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID : ICQ
ZoRG
Сообщение  14 Окт 2008, 23:08  Ссылка : Ответить с цитатой
Возраст: 37 Пол: Мужской 
C нами с 14.10.2004
Репутация: 94.1

chaser писал(а):
ZoRG, предлагаю все-таки назвать g++-4.1 и положить его в PATH, необязательно в /opt/
Можно и так, наверное, действительно более правильный вариант.

splav писал(а):
chaser, предлагаю назвать как положено...
i686-pc-linux-gnu-gcc-4.2.2 и x86_64-pc-linux-gnu-gcc-4.1.2 (именно эти на unsorted есть)
Но тут опять проблемы с именами - у меня, например, в дистрибутиве все пакеты собраны для i486 и имя бинарика, соответственно, i486-linux-gnu-gcc-4.1 + опять-таки на unsorted в имени бинарика присутствуют 3 цифры из версии gcc, а у меня, chaser'а и DALDON'а - 2.
В начало
Профиль : Блог : Личное Сообщение : E-mail
splav
Сообщение  14 Окт 2008, 23:16  Ссылка : Ответить с цитатой
Возраст: 36 Пол: Мужской  Доверенный пользователь
C нами с 22.01.2006
Репутация: 256.8

ZoRG, ну i*86 и x86_64 то надо обозначить...
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID : ICQ
ZoRG
Сообщение  15 Окт 2008, 19:48  Ссылка : Ответить с цитатой
Возраст: 37 Пол: Мужской 
C нами с 14.10.2004
Репутация: 94.1

splav писал(а):
ZoRG, ну i*86 и x86_64 то надо обозначить...
Я наверное сейчас глупость скажу но... Весело Насколько я понимаю, i*86 и x86_64 - это архитектура, под которую собран компилятор, а компилировать он может под любую архитектуру (разве что слинковать не сможет, если в системе не установлены библиотеки, собранные для данной архитектуры), а следовательно эти самые i*86 и x86_64 как раз надо скрывать. Глупость? На самом деле все обстоит совсем по другому? Смайлик
В начало
Профиль : Блог : Личное Сообщение : E-mail
splav
Сообщение  15 Окт 2008, 19:56  Ссылка : Ответить с цитатой
Возраст: 36 Пол: Мужской  Доверенный пользователь
C нами с 22.01.2006
Репутация: 256.8

ZoRG, дело в поведении по умолчанию. Если оно на разных компах не совпадёт - будет не хорошо...
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID : ICQ
ZoRG
Сообщение  15 Окт 2008, 20:22  Ссылка : Ответить с цитатой
Возраст: 37 Пол: Мужской 
C нами с 14.10.2004
Репутация: 94.1

splav, но разве проблема сделать CFLAGS += -m32 (ну или какие-то другие флаги - пока не разбирался)? По-моему если кто-то пользуется услугами distcc, то он не должен знать, на какой архитектуре работают удаленные машины, а иначе придется разрешать проблемы в различии путей к компилятору. Насколько я понял, distcc не позволяет указать для каждого хоста в отдельности путь к компилятору, а в таком случае по-моему другого выхода, кроме как иметь одинаковый путь на всех компьютерах, не остается.
В начало
Профиль : Блог : Личное Сообщение : E-mail
splav
Сообщение  15 Окт 2008, 20:32  Ссылка : Ответить с цитатой
Возраст: 36 Пол: Мужской  Доверенный пользователь
C нами с 22.01.2006
Репутация: 256.8

ZoRG, больно сложно... Должно работать без специальных ключей. Проще поставить одну версию под все нужные платформы и использовать стандартные имена. Случай с песочницей естественно не рассматривается...
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID : ICQ
ZoRG
Сообщение  16 Окт 2008, 15:07  Ссылка : Ответить с цитатой
Возраст: 37 Пол: Мужской 
C нами с 14.10.2004
Репутация: 94.1

splav, ну это с какой стороны посмотреть - не думаю, что у многих возникнет желание собирать компилятор, да еще и под несколько платформ.
В начало
Профиль : Блог : Личное Сообщение : E-mail
chaser
Сообщение  16 Окт 2008, 18:57  Ссылка : Ответить с цитатой
Возраст: 35 Пол: Мужской 
C нами с 04.02.2005
Репутация: 121.3

splav писал(а):
chaser, предлагаю назвать как положено...
i686-pc-linux-gnu-gcc-4.2.2 и x86_64-pc-linux-gnu-gcc-4.1.2 (именно эти на unsorted есть)


"Как положено" — это где? В ортодоксальном Gentoo? Улыбочка

По-моему, ставить две версии компилятора только для того, чтобы его можно было вызывать без ключей — не комильфо.

Давайте уже придем к разумному решению. Итак, существенные различия между версиями компилятора состоят в двух пунктах:
1) номер ветки (4.1 / 4.2)
2) целевая архитектура по умолчанию (x86 / x86_64)

Платформа у всех нас вроде как pc-linux-gnu, поэтому ее можно вполне убрать из имени файла. Так что предлагаю сделать следующие имена:
gcc-4.1-x86
gcc-4.1-x86_64
g++-4.1-x86
g++-4.1-x86_64
gcc-4.2-x86
gcc-4.2-x86_64
g++-4.2-x86
g++-4.2-x86_64

Чтобы заставить 64-битный компилятор собирать 32-битный код без указания параметров, можно воспользоваться силой шелл-скриптов. Например, создать файл g++-4.1-x86 следующего содержания:
#!/bin/bash
g++-4.1 -m32 $*


Критика?
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID
splav
Сообщение  16 Окт 2008, 19:09  Ссылка : Ответить с цитатой
Возраст: 36 Пол: Мужской  Доверенный пользователь
C нами с 22.01.2006
Репутация: 256.8

chaser, ну можно...
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение : JabberID : ICQ
ZoRG
Сообщение  18 Окт 2008, 20:44  Ссылка : Ответить с цитатой
Возраст: 37 Пол: Мужской 
C нами с 14.10.2004
Репутация: 94.1

Ну так что, будем приходить к какому-нибудь соглашению? Улыбочка Лично меня вариант, который предложил chaser, вполне устраивает. Разве что вместо
#!/bin/bash
g++-4.1 -m32 $*
лучше сделать
#!/bin/bash
g++-4.1 -m32 "$@"
В начало
Профиль : Блог : Личное Сообщение : E-mail
DALDON
Сообщение  18 Окт 2008, 22:34  Ссылка : Ответить с цитатой
Пол: Мужской  Доверенный пользователь
C нами с 09.04.2005
Репутация: 0.1

Да, давайте уже придём к единому стандарту чтобы можно было не зависимо от дистрибутива компилировать распределённо. Определяйтесь, пишите how-to. А мы (читать нубы) уже подтянемся.
В начало
Профиль : Фотоальбом : Блог : Личное Сообщение
Показать сообщения:   
На страницу «  1, 2, 3

Unsorted   ~  Software  ~  Linux and Unix  ~  Есть желание наладить распределенную компиляцию?

Ответить на тему

Перейти:  





Powered by phpBB   © Unsorted Team  support@unsorted.me  promo@unsorted.me  Полезные скрипты