On 17.04.2015 11:36, Eugene Grosbein wrote:
>>> Можно. Погляди, например, как это делает /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.
> 
> По сути, нужно сделать новый порт или дополнить старый.
> Тот же misc/compat9x при установке на 32-битной системе
> ставит библиотечки без различия тонкостей 32/64,
> а на 64-битной - особым образом. Возьми за образец.
Это образец того, как в зависимости от битности что-то поставить
по-разному. А вот как на 64-битной системе скомпилировать под 32 бита?

Или можно сделать этакий слейв-порт, который возьмет (откуда?) пакет,
собранный мастером под другую архитектуру, и перепакует его? Тоже
непонятно, как это делать.

Видимо, задача непростая, и проще один раз сделать руками, а если
придется такое делать часто, то копать.

> Произвольный заранее собранный пакет к такому не приспособлен afaik.

-- 
Константин Стефанов

Цинизм - это юмор в плохом настроении.

Ответить