On 17.04.2015 11:14, Eugene Grosbein wrote: > On 17.04.2015 13:40, Konstantin Stefanov wrote: >> А есть ли для FreeBSD 32-битные версии пакетов для 64-битной системы? >> >> У меня есть 32-битный бинарник, который я хочу запустить на 64-битной >> системе, и которому нужны библиотеки типа pcre, iconv и еще что-то в том >> духе. >> >> Соответственно, нужны эти билиотеки в 32-битной версии. Можно, конечно, >> взять пакет от 32-битной версии и поставить его, или обмануть pkg типа >> >> UNAME_p=x86 pkg install pcre >> >> Но в этом случае библиотека встанет в /usr/lib, а бывшая там раньше >> 64-битная библиотека затрется, и не будут работать уже 64-битные бинарники. >> >> Можно как-то иметь сразу обе версии (32 и 64 бита) пакетных библиотек? > > Можно. Погляди, например, как это делает /usr/ports/misc/compat9x - > устанавливает библиотеки в /usr/local/lib32/compat и прописывает этот > путь в виде одной строчки в новом файле в каталоге > /usr/local/libdata/ldconfig32 - > оттуда при загрузке система узнает название про каталог > /usr/local/lib32/compat > и запустит ldconfig -32 -m /usr/local/lib32/compat > > Эту команду нужно вручную выполнить после распаковки библиотек, > чтобы не ребутиться. Как это сделать руками - понятно, я примерно так и сделал. Вопрос в том, можно ли для этого воспользоваться стандартной инфраструктурой пакетов/портов. Т.е получить пакет, который сам это все сделает. Я не очень представляю, что сказать тому же порту devel/pcre, чтобы он на amd64 собрал версию для x86 и положил библиотеки не в lib, а в lib32.
-- Константин Стефанов И если жиже стала снежная гладь, лыжи пора менять.
