#1
|
|||
|
|||
32-битные библиотеки на 64-битной системе
Victor Sudakov написал(а) к All в Oct 18 09:41:12 по местному времени:
Dear All, Есть ли штатный способ запустить на 11.2-RELEASE/amd64 бинарник, собранный на старой 32-битной версии и требующий некоторых 32-битных библиотек, стоявших на старой системе из портов? Кроме как скопировать эти библиотеки вручную со старой системы и положить в /usr/lib32/compat/ ? И почему интересно ldconfig32_paths не включает по умолчанию какой-нибудь /usr/local/lib32/compat для "левого" софта? Можно ли вообще как-то поставить на 64-битную систему несколько 32-битных портов/пакетов, например 32-битный libiconv? Или опять же вручную копировать из соседней 32-битной системы? В 64-битном линухе можно принудительно поставить 32-битный пакет "apt-get install foo:i386" и он установится. А у нас как? Victor Sudakov, VAS4-RIPE, VAS47-RIPN --- GoldED+/BSD 1.1.5-b20160322-b20160322 |
#2
|
|||
|
|||
Re: 32-битные библиотеки на 64-битной системе
Eugene Grosbein написал(а) к Victor Sudakov в Oct 18 22:12:01 по местному времени:
16 окт. 2018, вторник, в 07:41 NOVT, Victor Sudakov написал(а): VS> Есть ли штатный способ запустить на 11.2-RELEASE/amd64 бинарник, собранный на VS> старой 32-битной версии и требующий некоторых 32-битных библиотек, стоявших на VS> старой системе из портов? Кроме как скопировать эти библиотеки вручную со старой VS> системы и положить в /usr/lib32/compat/ ? Есть штатный метод и мы с тобой совсем недавно его обсуждали: options COMPAT_FREEBSD10 в ядре (есть в GENERIC) и библиотеки из misc/compat10x, притом что compat10x-amd64 ставит не только 64-битные библиотеки в lib, но и 32-битные в lib32. VS> И почему интересно ldconfig32_paths не включает по умолчанию какой-нибудь VS> /usr/local/lib32/compat для "левого" софта? Потому что у нас давно уже не обязательно редактировать rc.conf для пополнения ldconfig32_paths, а есть каталоги /usr/local/libdata/ldconfig и /usr/local/libdata/ldconfig32 и любой порт при инсталляции может положить туда собственный отдельный файл с путём до каталога со своими библиотеками внутри (типа /usr/local/lib32/compat) и service ldconfig имеет в /etc/defaults/rc.conf множество настроек ldconfig_ чтобы знать, что /usr/local/libdata/ldconfig нужно просматривать. И это касается не только старых библиотек, но и обычных пакетов, к примеру mysql ставит /usr/local/libdata/ldconfig/mysql57-client и /usr/local/libdata/ldconfig/mysql57-server, потому что ставит свои библиотеки в отдельные каталоги типа /usr/local/lib/mysql/plugin. llvm39 вообще ставит в /usr/local/llvm39/lib и тоже пишет этот путь в /usr/local/libdata/ldconfig/llvm39 VS> Можно ли вообще как-то поставить на 64-битную систему несколько 32-битных VS> портов/пакетов, например 32-битный libiconv? Или опять же вручную копировать из VS> соседней 32-битной системы? VS> В 64-битном линухе можно принудительно поставить 32-битный пакет "apt-get VS> install foo:i386" и он установится. А у нас как? Из man pkg.conf: ENVIRONMENT An environment variable with the same name as the option in the configuration file always overrides the value of an option set in the file. Оттуда же: ABI: string The ABI of the package you want to install. То есть, env ABI=FreeBSD:10:i386 pkg-static install rar поставит 32-битный пакет rar от FreeBSD 10, только предварительно желательно сделать pkg lock pkg, а иначе оно и сам pkg захочет поменять на 32-битную версию. Косячок-с. Eugene -- Научить не кланяться авторитетам, а исследовать их и сравнивать их поучения с жизнью. Научить настороженно относиться к опыту бывалых людей, потому что жизнь меняется необычайно быстро. --- slrn/1.0.3 (FreeBSD) |
#3
|
|||
|
|||
32-битные библиотеки на 64-битной системе
Dmitriy Smirnov написал(а) к Victor Sudakov в Oct 18 08:30:52 по местному времени:
hi, Victor! 16 Oct 18 09:41, Victor Sudakov wrote to All: VS> Есть ли штатный способ запустить на 11.2-RELEASE/amd64 бинарник, VS> собранный на старой 32-битной версии и требующий некоторых 32-битных VS> библиотек, стоявших на старой системе из портов? Кроме как скопировать VS> эти библиотеки вручную со старой системы и положить в VS> /usr/lib32/compat/ ? у меня на ориджине/amd64 с compat9x, до этого на десятке/amd64, крутятся бинарники собранные на девятке/i386, никаких танцев не требовалось. wbr, Dmitriy. --- GoldED+/BSD 1.1.5 |
#4
|
|||
|
|||
32-битные библиотеки на 64-битной системе
Victor Sudakov написал(а) к eugen в Oct 18 23:14:44 по местному времени:
Dear eugen, 16 Oct 18 22:12, Eugene Grosbein wrote to me: VS>> Есть ли штатный способ запустить на 11.2-RELEASE/amd64 бинарник, VS>> собранный на старой 32-битной версии и требующий некоторых VS>> 32-битных библиотек, стоявших на старой системе из портов? Кроме VS>> как скопировать эти библиотеки вручную со старой системы и VS>> положить в /usr/lib32/compat/ ? EG> Есть штатный метод и мы с тобой совсем недавно его обсуждали: EG> options COMPAT_FREEBSD10 в ядре (есть в GENERIC) и библиотеки EG> из misc/compat10x, притом что compat10x-amd64 ставит не только EG> 64-битные библиотеки в lib, но и 32-битные в lib32. Так это в misc/compat* пожалуй библиотеки от старой base system. А я о портовых. VS>> И почему интересно ldconfig32_paths не включает по умолчанию VS>> какой-нибудь /usr/local/lib32/compat для "левого" софта? EG> Потому что у нас давно уже не обязательно редактировать rc.conf EG> для пополнения ldconfig32_paths, а есть каталоги EG> /usr/local/libdata/ldconfig и /usr/local/libdata/ldconfig32 и любой EG> порт при инсталляции может положить туда собственный отдельный файл с EG> путём до каталога со своими библиотеками внутри (типа EG> /usr/local/lib32/compat) и service ldconfig имеет в EG> /etc/defaults/rc.conf множество настроек ldconfig_* чтобы знать, что EG> /usr/local/libdata/ldconfig* нужно просматривать. Буду знать. VS>> Можно ли вообще как-то поставить на 64-битную систему несколько VS>> 32-битных портов/пакетов, например 32-битный libiconv? Или опять VS>> же вручную копировать из соседней 32-битной системы? В 64-битном VS>> линухе можно принудительно поставить 32-битный пакет "apt-get VS>> install foo:i386" и он установится. А у нас как? EG> Из man pkg.conf: EG> ENVIRONMENT EG> An environment variable with the same name as the option in the EG> configuration file always overrides the value of an option set in EG> the EG> file. EG> Оттуда же: EG> ABI: string The ABI of the package you want to install. EG> То есть, env ABI=FreeBSD:10:i386 pkg-static install rar EG> поставит 32-битный пакет rar от FreeBSD 10, Так это он мне пожалуй его поставит вместо штатного 64-битного. А мне бы как-то положить старые либы для legacy софта, а не переписывать поверх новых. Victor Sudakov, VAS4-RIPE, VAS47-RIPN --- GoldED+/BSD 1.1.5-b20160322-b20160322 |
#5
|
|||
|
|||
Re: 32-битные библиотеки на 64-битной системе
Eugene Grosbein написал(а) к Victor Sudakov в Oct 18 02:59:49 по местному времени:
17 окт. 2018, среда, в 21:14 NOVT, Victor Sudakov написал(а): EG>> То есть, env ABI=FreeBSD:10:i386 pkg-static install rar EG>> поставит 32-битный пакет rar от FreeBSD 10, VS> Так это он мне пожалуй его поставит вместо штатного 64-битного. VS> А мне бы как-то положить старые либы для legacy софта, VS> а не переписывать поверх новых. А, ну тогда не знаю. Может быть, вручную: # env ABI=FreeBSD:10:i386 pkg search -x ^rar pkg: Warning: Major OS version upgrade detected. Running "pkg-static install -f pkg" recommended rar-5.6.1,3 File archiver (binary port) rarian-0.8.1_4 OMF help system based on the Freedesktop specification # env ABI=FreeBSD:10:i386 pkg fetch -y rar-5.6.1,3 pkg: Warning: Major OS version upgrade detected. Running "pkg-static install -f pkg" recommended Updating FreeBSD repository catalogue... FreeBSD repository is up to date. All repositories are up to date. The following packages will be fetched: New packages to be FETCНED: rar-5.6.1,3 (304 KiB: 100.00% of the 304 KiB to download) Number of packages to be fetched: 1 304 KiB to be downloaded. Fetching rar-5.6.1,3.txz: 100% 304 KiB 311.4kB/s 00:01 # tar -C /usr/local/lib32/compat --strip-components 4 -xvf /var/cache/pkg/rar-5.6.1,3.txz /usr/local/lib Или задай вопрос в листах. Если сильно мотивирован, может быть запатчишь pkg :-) Eugene -- Что делать?! Мир стоит на воровстве!.. Воруют в Самарканде и в Хиве, В Ширазе, в Тегеране и в Стамбуле И даже - страшно вымолвить - в Москве!.. --- slrn/1.0.3 (FreeBSD) |
#6
|
|||
|
|||
32-битные библиотеки на 64-битной системе
Victor Sudakov написал(а) к eugen в Oct 18 09:52:38 по местному времени:
Dear eugen, 18 Oct 18 02:59, Eugene Grosbein wrote to me: EG>>> То есть, env ABI=FreeBSD:10:i386 pkg-static install rar EG>>> поставит 32-битный пакет rar от FreeBSD 10, VS>> Так это он мне пожалуй его поставит вместо штатного 64-битного. VS>> А мне бы как-то положить старые либы для legacy софта, VS>> а не переписывать поверх новых. EG> А, ну тогда не знаю. Может быть, вручную: Ну нафиг, не понравилось. EG> Или задай вопрос в листах. Если сильно мотивирован, EG> может быть запатчишь pkg :-) Нужно настолько редко, что проще в jail. Вот только где добыть старых пакетов. Или сделать в этом jail чекаут старых портов из svn и собирать-собирать? Victor Sudakov, VAS4-RIPE, VAS47-RIPN --- GoldED+/BSD 1.1.5-b20160322-b20160322 |
#7
|
|||
|
|||
Re: 32-битные библиотеки на 64-битной системе
Eugene Grosbein написал(а) к Victor Sudakov в Oct 18 16:52:35 по местному времени:
19 окт. 2018, пятница, в 07:52 NOVT, Victor Sudakov написал(а): VS> Нужно настолько редко, что проще в jail. Вот только где добыть старых пакетов. Я же показал: env ABI=FreeBSD:10:i386 pkg search -x ^rar И потом pkg fetch. Eugene -- Поэты - страшные люди. У них все святое. --- slrn/1.0.3 (FreeBSD) |
#8
|
|||
|
|||
32-битные библиотеки на 64-битной системе
Victor Sudakov написал(а) к eugen в Oct 18 17:05:04 по местному времени:
Dear eugen, 19 Oct 18 16:52, Eugene Grosbein wrote to me: VS>> Нужно настолько редко, что проще в jail. Вот только где добыть VS>> старых пакетов. EG> Я же показал: env ABI=FreeBSD:10:i386 pkg search -x ^rar EG> И потом pkg fetch. Их кто-то хранит, что ли? Тем более мне бы от 9-ки. Victor Sudakov, VAS4-RIPE, VAS47-RIPN --- GoldED+/BSD 1.1.5-b20160322-b20160322 |
#9
|
|||
|
|||
Re: 32-битные библиотеки на 64-битной системе
Alex Korchmar написал(а) к Victor Sudakov в Oct 18 14:20:15 по местному времени:
From: Alex Korchmar <noreply@linux.e-moe.ru> Victor Sudakov <Victor.Sudakov@f49.n5005.z2.fidonet.org> wrote: > Их кто-то хранит, что ли? Тем более мне бы от 9-ки. десяточные -разумеется, она ж поддерживается. С девяткой тебя ждет много интересных приключений. Включая и несобираемость на ней всех современных портов. > Alex --- ifmail v.2.15dev5.4 |
#10
|
|||
|
|||
Re: 32-битные библиотеки на 64-битной системе
Eugene Grosbein написал(а) к Victor Sudakov в Oct 18 21:00:02 по местному времени:
19 окт. 2018, пятница, в 15:05 NOVT, Victor Sudakov написал(а): VS>>> Нужно настолько редко, что проще в jail. Вот только где добыть VS>>> старых пакетов. EG>> Я же показал: env ABI=FreeBSD:10:i386 pkg search -x ^rar EG>> И потом pkg fetch. VS> Их кто-то хранит, что ли? Да, репозиторий. VS> Тем более мне бы от 9-ки. От девятки там тоже есть, хотя уже и не обновляется, так как EoL: http://pkg.freebsd.org/ Eugene --- slrn/1.0.3 (FreeBSD) |