FreeBSD 64 и Wine: теперь работает
Как известно, порт wine для freebsd имеет ограничение i386 only и, соответственно, не работает и даже не собирается под AMD64. Однако, есть несколько способов заставить-таки работать wine под шестидесятичетырехразрядной FreeBSD. Один из них описан в июньском номере BSD magazine. В преимуществах данного способа то, что нам не придется собирать ни строчки кода, что изрядно экономит время.
Ниже краткий перевод статьи из журнала
Для начала нужно подключить devfspseudo filesystem:
[cc lang=»bash»]# mount -t devfs devfs /compat/i386/dev[/cc]
Кроме того, нам нужно определить несколько алиасов:
[cc lang=»bash»]% alias winecfg32=»LD_32_LIBRARY_PATH=/compat/i386/usr/local/lib PATH=/compat/i386/usr/local/bin:$PATH /compat/i386/usr/local/bin/winecfg»
% alias wine32=»LD_32_LIBRARY_PATH=/compat/i386/usr/local/lib PATH=/compat/i386/usr/local/bin:$PATH /compat/i386/usr/local/bin/wine»[/cc]
Следующие действия нам нужно производить от имени рута.
Во-первых нам понадобится wget, так что если он не установлен в системе, делаем
[cc lang=»bash»]# pkg_add -r wget[/cc]
Затем определяем несколько переменных, которые будут использоваться позже:
[cc lang=»bash»]
# setenv UNAME $( uname -r | egrep -o «.*-[A-Z]+» )
# setenv URL ftp.freebsd.org/pub/FreeBSD/releases/i386/${UNAME}/base
# setenv DESTDIR /compat/i386[/cc]
Теперь создаем целевую директорию, скачиваем в нее и устанавливаем необходимые для нас FreeBSD datasets:
[cc lang=»bash»]
# mkdir -p ${DESTDIR}
# wget -r -c ftp://${URL}
# cd ${URL}
# chmod +x install.sh
# ./install.sh (answer ‘y’ here)[/cc]
Также нам нужно скопировать в наше /compat/i386 окружение информацию о DNS, что достигается просто копированием файла resolv.conf.
[cc lang=»bash»]# cp /etc/resolv.conf ${DESTDIR}/etc/[/cc]
Следующий шаг предполагает использование механизма chroot(8); мы определяем необходимые переменные, после чего устанавливаем WINE package с его зависимостями:
[cc lang=»bash»]# chroot ${DESTDIR} /bin/sh
> /etc/rc.d/ldconfig start
> export MACHINE=i386
> export UNAME_p=i386
> export UNAME_m=i386
> pkg_add -r wine
> exit
#
[/cc]
На этом все. Если все сделано по инструкции и правильно, то в нашей системе есть работающий Wine. Не все игры и приложения MS Windows требуют devfspseudo filesystem, однако некоторым она необходима, так что неплохо иметь ее примонтированной из /etc/fstab.
Теперь, чтобы запустить приложение windows, нам нужно использовать команду
[cc lang=»bash»]% wine32 app.exe [/cc]
А для запуска утилиты конфигурирования Wine:
[cc lang=»bash»]%winecfg32[/cc]
Для того, чтобы эти команды были доступны постоянно, нужно определить эти алиасы в файлах автозагрузки вашего шелла.
Качаем wine x64 с сайта http://www.mediafire.com/wine_fbsd64 и радуемся жизни :).
Я бы подождал появления этого чуда в портах.
Зачем? Работает стабильно пока.
Ну и славно. Просто раз в дерево портов не включают, значит, какие-то причины для этого есть?
skiangel, они просто забыли :). Заработались.
ачаем wine x64 с сайта http://www.mediafire.com/wine_fbsd64 ага щас…. нет там давно уже ничего