RFC (Request for Comments, Запрос на комментарии) - серия документов, публикуемая сообществом исследователей и разработчиков, руководствующихся практическими интересами, в которой описывается набор протоколов и обобщается опыт функционирования Интернет.
Как известно, порт wine для freebsd имеет ограничение i386 only и, соответственно, не работает и даже не собирается. Однако, есть несколько способов заставить-таки работать wine под шестидесятичетырехразрядной FreeBSD. Один из них описан в июньском номере BSD magazine. В преимуществах данного способа то, что нам не придется собирать ни строчки кода, что изрядно экономит время.
Ниже краткий перевод статьи из журнала
Для начала нужно подключить devfspseudo filesystem:
# mount -t devfs devfs /compat/i386/dev
Кроме того, нам нужно определить несколько алиасов:
% 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"
Следующие действия нам нужно производить от имени рута.
Во-первых нам понадобится wget, так что если он не установлен в системе, делаем
# pkg_add -r wget
Затем определяем несколько переменных, которые будут использоваться позже:
Теперь создаем целевую директорию, скачиваем в нее и устанавливаем необходимые для нас FreeBSD datasets:
# mkdir -p ${DESTDIR}
# wget -r -c ftp://${URL}
# cd ${URL}
# chmod +x install.sh
# ./install.sh (answer 'y' here)
Также нам нужно скопировать в наше /compat/i386 окружение информацию о DNS, что достигается просто копированием файла resolv.conf.
# cp /etc/resolv.conf ${DESTDIR}/etc/
Следующий шаг предполагает использование механизма chroot(8); мы определяем необходимые переменные, после чего устанавливаем WINE package с его зависимостями:
# 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
#
На этом все. Если все сделано по инструкции и правильно, то в нашей системе есть работающий Wine. Не все игры и приложения MS Windows требуют devfspseudo filesystem, однако некоторым она необходима, так что неплохо иметь ее примонтированной из /etc/fstab.
Теперь, чтобы запустить приложение windows, нам нужно использовать команду
% wine32 app.exe
А для запуска утилиты конфигурирования Wine:
%winecfg32
Для того, чтобы эти команды были доступны постоянно, нужно определить эти алиасы в файлах автозагрузки вашего шелла.