Несколько версий компиляторов и glibc (компилировать нужно под казные версии...)

Модератор: Модераторы разделов

Nab
Сообщения: 257

Несколько версий компиляторов и glibc

Сообщение Nab »

Ребята, назрел вопрос серьезно... немного для начинающих, но я еще под линукс серьезно не писал... :( тока на скриптовых типа perl и bash, но это не считается :)

Вопрос вот в чем, на определенном переходном периоде необходимо иметь libc5 и libc6, несколько версий компиляторов, и библиотеки скомпиленные в разных конфигурациях.

Как бы это организовать покультурней и как правильно потом компилить проги на разных версиях.... тыкните носом или дайте почитать чего ...

Я думаю реализовать это с помощью разных скриптов, которые выставляют различные переменные, а потом запускают 'make'... но я не знаю какие переменные за что отвечают.... :( подскажите хоть куда копать...
Чтобы правильно задать вопрос, нужно знать больше половины ответа...
FREESCO in Ukraine
Спасибо сказали:
Аватара пользователя
powerfox
Сообщения: 458

Re: Несколько версий компиляторов и glibc

Сообщение powerfox »

Nab писал(а):
04.01.2006 04:12
Ребята, назрел вопрос серьезно... немного для начинающих, но я еще под линукс серьезно не писал... :( тока на скриптовых типа perl и bash, но это не считается :)

Вопрос вот в чем, на определенном переходном периоде необходимо иметь libc5 и libc6, несколько версий компиляторов, и библиотеки скомпиленные в разных конфигурациях.

Как бы это организовать покультурней и как правильно потом компилить проги на разных версиях.... тыкните носом или дайте почитать чего ...

Я думаю реализовать это с помощью разных скриптов, которые выставляют различные переменные, а потом запускают 'make'... но я не знаю какие переменные за что отвечают.... :( подскажите хоть куда копать...

При конфигурировании компилятора перед сборкой можно задать суффикс и приставку, например gcc-old. По умолчанию создаются исполняемые фаёлы gcc-3.3.2 или gcc-0.0.0.
--program-prefix=prefix
GCC supports some transformations of the names of its programs when installing them. This option prepends prefix to the names of programs to install in bindir (see above). For example, specifying --program-prefix=foo- would result in gcc being installed as /usr/local/bin/foo-gcc.
--program-suffix=suffix
Appends suffix to the names of programs to install in bindir (see above). For example, specifying --program-suffix=-3.1 would result in gcc being installed as /usr/local/bin/gcc-3.1.
--program-transform-name=pattern
Applies the sed script pattern to be applied to the names of programs to install in bindir (see above). pattern has to consist of one or more basic sed editing commands, separated by semicolons. For example, if you want the gcc program name to be transformed to the installed program /usr/local/bin/myowngcc and the g++ program name to be transformed to /usr/local/bin/gspecial++ without changing other program names, you could use the pattern --program-transform-name='s/^gcc$/myowngcc/; s/^g++$/gspecial++/' to achieve this effect.

All three options can be combined and used together, resulting in more complex conversion patterns. As a basic rule, prefix (and suffix) are prepended (appended) before further transformations can happen with a special transformation script pattern.


As currently implemented, this option only takes effect for native builds; cross compiler binaries' names are not transformed even when a transformation is explicitly asked for by one of these options.


For native builds, some of the installed programs are also installed with the target alias in front of their name, as in i686-pc-linux-gnu-gcc. All of the above transformations happen before the target alias is prepended to the name - so, specifying --program-prefix=foo- and program-suffix=-3.1, the resulting binary would be installed as /usr/local/bin/i686-pc-linux-gnu-foo-gcc-3.1.


As a last shortcoming, none of the installed Ada programs are transformed yet, which will be fixed in some time.

В Makefile есть переменные типа CC="gcc".
Спасибо сказали:
Nab
Сообщения: 257

Re: Несколько версий компиляторов и glibc

Сообщение Nab »

Спасибо... по компиляторам понял ....

Но меня больше всего интересует как правильно установить несколько версий, не только компиляторов но и glibc или еще каких библиотек...
и если не возможно использовать одновременно, то как корректно удалить библиотеку, и поставить другую версию...
я подозреваю что возможно придется заменять линки на библиотеки.... но ведь это не очень просто для таких масштабных библиотек как glibc
Чтобы правильно задать вопрос, нужно знать больше половины ответа...
FREESCO in Ukraine
Спасибо сказали:
d_n_k
Сообщения: 636
ОС: Gentoo GNU/Linux

Re: Несколько версий компиляторов и glibc

Сообщение d_n_k »

Nab , с glibc проблеммы, когда-то пытался поставить 2 - не получилось.
с другимим библиотечками проще, есть какая-то переменная окружения LD_LIBRARY_PATH для смены пути к библиотеке.

попробуй поиграться с chroot для смены libc

зы: man ld-linux.so
все сказанное есть имхо...
Спасибо сказали:
Аватара пользователя
}{idrag
Сообщения: 140
ОС: это полосатый мух

Re: Несколько версий компиляторов и glibc

Сообщение }{idrag »

Такой вопрос по glib:
Захотел поставить xmms, а ./configure выдал такую ошибку:

checking for GLIB - version >= 1.2.2... no
*** The glib-config script installed by GLIB could not be found
*** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GLIB_CONFIG environment variable to the
*** full path to glib-config.
configure: error: *** GLIB >= 1.2.2 not installed - please install first ***

это что значит у меня библиотеки старые в системе стоят?
Java Developer
Спасибо сказали:
d_n_k
Сообщения: 636
ОС: Gentoo GNU/Linux

Re: Несколько версий компиляторов и glibc

Сообщение d_n_k »

}{idrag писал(а):
13.01.2006 12:40
Такой вопрос по glib:
Захотел поставить xmms, а ./configure выдал такую ошибку:

checking for GLIB - version >= 1.2.2... no
*** The glib-config script installed by GLIB could not be found
*** If GLIB was installed in PREFIX, make sure PREFIX/bin is in
*** your path, or set the GLIB_CONFIG environment variable to the
*** full path to glib-config.
configure: error: *** GLIB >= 1.2.2 not installed - please install first ***

это что значит у меня библиотеки старые в системе стоят?

это значит что у тебя glib-1.2 не стоит. и ничего другого. может даже стоит glib-2. но xmms требует gtk+-1.2
все сказанное есть имхо...
Спасибо сказали:
Аватара пользователя
}{idrag
Сообщения: 140
ОС: это полосатый мух

Re: Несколько версий компиляторов и glibc

Сообщение }{idrag »

gtk?
...а я под KDE всегда или это не важно?
Java Developer
Спасибо сказали:
Аватара пользователя
glist
Сообщения: 134
ОС: Debian Linux

Re: Несколько версий компиляторов и glibc

Сообщение glist »

}{idrag писал(а):
13.01.2006 17:53
gtk?
...а я под KDE всегда или это не важно?

по борльшому счёту это не важно.... главное что бы gtk1.2 была установлена.
Debian GNU/Linux, windowmaker, Centericq, Opera/Mozilla/links.
----------------------------------
Sending Kiddies to /dev/null
Спасибо сказали:
Аватара пользователя
Данил
Сообщения: 944
ОС: windows xp, cruncheee, ddwrt

Re: Несколько версий компиляторов и glibc

Сообщение Данил »

xmms построен на gtk+ если у тебя нет её , то он не будет работать!
ASUS eee pc 701 [windowsXP sp3] [Ubuntu linux]
wi-fi router d-link dir-400 [ddWRT v24 SP1 linux]
[sony psp 2008 slim wi-fi netBSD]
nas d-link dsm-600

Противник HAL NETWORKMANAGER и других подобных паделок!!!
Спасибо сказали: