Как установить lfreetype с помощью вина?

Я столкнулся с этой проблемой, и вот как я работал над этой проблемой:

Если имя пользователя «ubuntu», как и должно быть, и если для выполнения команды sudo не требуется пароль, вам все равно будет предложено ввести пароль после выхода из системы при входе в систему, и пустой пароль обычно не будет работать здесь.

Чтобы обойти это, просто откройте терминал и выполните следующую команду:

sudo passwd ubuntu

следовать подсказкам и устанавливать пароль; текущий пароль пуст, поэтому, если он запрашивает пароль здесь или для sudo, просто нажмите enter.

Теперь, когда система запрашивает пароль, у вас будет одно, и это должно работать вокруг вашего проблема.

Возможно, вам потребуется выполнить эту команду с TTY1 или 2.

1
задан 5 October 2012 в 06:29

9 ответов

Дойдите до каталога, в котором вы извлекли файлы для вина.

В терминале запустите эту команду:

./configure --without-freetype

Затем, после того, как это будет сделано полностью, запустите:

make
5
ответ дан 25 May 2018 в 13:22
  • 1
    Не могли бы вы добавить, что это за недостатки? То есть как часто используется freetype, что произойдет, если приложение нуждается в этом freetype? Или, по крайней мере, что-нибудь из этого? – Hi-Angel 7 September 2015 в 15:07

Он жалуется на отсутствие 32-битного пакета dev freetype. Вы можете попробовать установить его с помощью sudo apt-get install libfreetype6-dev:i386 и посмотреть, прошло ли предупреждение.

2
ответ дан 25 May 2018 в 13:22
  • 1
    Спасибо, но у меня есть 64-битный, и я установил: sudo apt-get install libfreetype6-dev .... Мне интересно, доступно ли только 1,6 в i386, но добавлено 64-битной версии, еще одна проблема .. sudo apt -get установить libfreetype6-dev – pst007x 25 March 2012 в 16:00
  • 2
    Пожалуйста, прочитайте, какие пакеты будут удалены из вашей системы, прежде чем пытаться выполнить указанную выше команду . Пользователи сообщили об удалении критичных для системы пакетов. – earthmeLon 21 May 2012 в 09:41
  • 3
    Не хорошая идея. [F1] – kenorb 14 June 2015 в 15:18
  • 4

Чтобы настроить Wine на 64-битной машине, вы должны сделать:

./configure --enable-win64

Если вы действительно хотите скомпилировать 32-битное вино на 64-битной машине, тогда Я думаю, что самый простой способ - использовать контейнер lxc, поскольку Ubuntu создает 32-битное винье, потому что 64-разрядная система не поставляется с полным набором 32-разрядных библиотек разработки (см. Bug # 990982).

Итак, базовый подход к компиляции как 32-битного, так и 64-битного вина:

Сборка 64-битного вина. Создайте 32-битные инструменты в lxc. Создайте 32-битное вино в lxc, ссылаясь к 64-битным винам и 32-битным инструментам. 1. встроенный в предыдущие шаги. Установите 32-битное вино. Установите 64-битное вино

. На странице Ошибка № 990982 мы можем прочитайте следующие инструкции:

Сборка 64-битного вина Сборка 64-битного вина:
mkdir $HOME/wine64
cd $HOME/wine64
../wine-git/configure --enable-win64
make -j4
Построение 32-разрядных инструментов в lxc Создание 32 -битного контейнера с именем «my32bitbox» с использованием шаблона Ubuntu и привязать ваш домашний каталог к ​​/ home директории в контейнере:
sudo lxc-create -t ubuntu -n my32bitbox -- --bindhome $LOGNAME -a i386
Построить 32-битное вино в lxc, ссылаясь на 64-битный винные и 32-битные инструменты 1. построены на предыдущих шагах Запустите контейнер; в приглашении на вход в консоль он даст вам доступ к вашему логину и паролю.
sudo lxc-start -n my32bitbox
Установите 32-битное вино Теперь вы находитесь в контейнере. Делайте нестандартную сборку Вина как обычно, просто чтобы получить инструменты. Сначала вам нужно будет установить все необходимые предварительные условия. Например:
sudo apt-get update
sudo apt-get install python-software-properties git-core
sudo apt-get build-dep wine
mkdir $HOME/wine32-tools
cd $HOME/wine32-tools
~/wine-git/configure
make -j4
Установите 64-битное вино Все еще внутри контейнера установите 32-битное вино, чтобы заставить последний бит здания:
cd $HOME/wine32
sudo make install
Пока все еще внутри контейнера, отключите его :
sudo shutdown -h now
Это отбрасывает вас обратно в вашу настоящую машину. Затем вам нужно удалить все существующие пакеты Wine. Вы можете сделать это из командной строки, но, вероятно, проще с aptitude или одним из инструментов управления пакетами GUI. Вам понадобится вино-моно, вино-геккон и, возможно, winetricks для вашей скомпилированной версии вина. Однако эти пакеты могут зависеть от существующей винной установки, которая может заставить вас их удалить. Установите вновь построенное вино на свою настоящую машину:
cd $HOME/wine32
sudo make install
cd $HOME/wine64
sudo make install
Предупреждение. Когда вы устанавливаете локально построенную версию Wine, система управления пакетами не будет знать, что она существует, поскольку она не появилась из пакета. Таким образом, можно позже разбить свои зависимости или установить противоречивую версию вина без предупреждения из инструментов управления пакетами. Это можно предотвратить, создав пакет или заблокировав конфликтующие пакеты с помощью apt-pinning, установив для этих пакетов «Pin-Priority: -1». Затем установите Mono, Gecko и, возможно, winetricks, если вам нужно было удалить их пакеты из-за зависимости от противоречивого пакета вина.

Примечание. Многие из вышеперечисленных команд требуют привилегий от root. У вашей учетной записи пользователя должен быть доступ к root через sudo или вам нужно переключиться на учетную запись пользователя.

2
ответ дан 25 May 2018 в 13:22
PKG_CONFIG_LIBDIR=/usr/lib/pkgconfig ./configure

Попробуйте настроить эту строку. Возможно, вы пытаетесь скомпилировать на 64-битной системе 32-битное вино, и вы обнаружите, что configure иногда проверяет неправильное место для libs.

1
ответ дан 25 May 2018 в 13:22

Linux

Проблема в том, что Ubuntu pkg-config не видит ваши 32-битные файлы разработки FreeType.

Чтобы убедиться, что это так, вы можете проверить это следующей командой:
pkg-config --cflags --libs freetype2
У вас должна быть ошибка, что pkg-config не может найти этот пакет. Примечание. Если у вас нет pkg-config, установите его через sudo apt-get install pkg-config. Затем проверьте, правильно ли установлен ваш freetype и где.
$ dpkg -l | grep freetype        
$ sudo updatedb && locate freetype2
Попробуйте переустановить его на всякий случай:
sudo apt-get update && sudo apt-get install libfreetype6-dev --reinstall
Если все еще не работает, найдите свой файл pc в вашем пакете freetype:
dpkg -L libfreetype6 libfreetype6-dev | grep pc$
или в другом месте:
sudo updatedb && locate freetype2.pc
и убедитесь, что этот файл связан (locate pkgconfig):
ln -s YOUR_FOUND_PATH/freetype2.pc /usr/lib/x86_64-linux-gnu/pkgconfig/freetype2.pc
Примечание. Замените YOUR_FOUND_PATH на полный путь файла freetype2.pc. Если вы не можете найти свой компьютерный файл, создайте его внутри своего каталога pkc_config (как freetype2.pc):
prefix=/usr
exec_prefix=${prefix}
libdir=${prefix}/lib/x86_64-linux-gnu
includedir=${prefix}/include

Name: FreeType 2
Description: A free, high-quality, and portable font engine.
Version: 14.0.8
Requires:
Libs: -L${libdir} -lfreetype
Libs.private: -lz  
Cflags: -I${includedir}/freetype2 -I${includedir}
Если ваша проблема все еще не решена (или она связана с чем-то еще), отсканируйте сценарий ./configure в оболочке:
$ sh -x ./configure
И найдите место вашей проблемы (например, какая команда pkg-config выполняется для проверки существования конкретного пакета).

Mac

Если у вас есть аналогичная проблема на Mac, и вы нашли эту тему, пожалуйста, используйте homebrew для установки вашего пакета freetype:

sudo brew install freetype

Если вы все еще есть проблема, проверьте эту ошибку: homebrew

1
ответ дан 25 May 2018 в 13:22

Просто установите libfreetype6-dev по умолчанию и libfreetype6: i386, затем создайте ссылку для библиотеки.

sudo ln -s /usr/lib/i386-linux-gnu/libfreetype.so.6 /usr/lib/i386-linux-gnu/libfreetype.so

По неизвестной причине на одном из моих ПК у меня возникла проблема, когда libfreetype6-dev сказал ошибку в libfreetype6, но на самом деле это было libfreetype6: i386 и libpng. В любом случае, вы можете решить проблему одинаково

sudo apt-get install libpng12-0-dev libpng12-0:i386 zlib1g-dev zlib1g:i386
sudo ln -s /usr/lib/i386-linux-gnu/libpng12.so.0 /usr/lib/i386-linux-gnu/libpng12.so
sudo ln -s /usr/lib/i386-linux-gnu/libz.so.1.2.8 /usr/lib/i386-linux-gnu/libz.so

Общий способ решения подобных проблем: открыть файл config.log, перейти к концу и выполнить поиск в верхнем направлении слова error. Вы найдете код, который использовался для проверки наличия библиотеки или заголовков. Просто скопируйте функцию libfreetype6 с включением в отдельный файл; затем найдите выше кода команду, которая была использована для компиляции. Это выглядело бы как

gcc -m32 -o conftest -g -O2 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0   conftest.c  >&5

Удалите часть >&5, напишите вместо conftest.c имя вашего тестового файла , включая и попытайтесь скомпилировать эту команду - вы увидите гораздо более полезные сообщения об ошибках.

Советы по возможным ошибкам:

Недостающие заголовки - просто перейдите на сайт packages.ubuntu.com, и найдите имя заголовка, чтобы найти нужный пакет. Отсутствующие библиотеки - установите библиотеку с -dev postfix, а затем, если это не сработает, с :i386. Если он не работает снова, как в случае с libfreetype, тогда перейдите к решению, написанному выше, то есть сделайте символические ссылки вручную.
1
ответ дан 25 May 2018 в 13:22

ну, а вы, судо, что вам лучше, вы просто заходите в программный центр Ubuntu и получаете то, что хотите, приходит все в одном, поэтому вам не нужно sudo их всех, просто нажмите одну вещь, и все придет в пакет, готов к использованию ...

0
ответ дан 25 May 2018 в 13:22
[F1]
0
ответ дан 25 May 2018 в 13:22
  • 1
    После флагов (например, -s) команда ln принимает свой первый аргумент в качестве target ссылки, а второй аргумент (если присутствует) в качестве источника. Команда, которую вы отправили, попытается создать /usr/include как символическую ссылку на /usr/include/freetype2/freetype, которая будет неизменно терпеть неудачу, поскольку любая система Ubuntu уже имеет реальный каталог /usr/include. Вы имели в виду это наоборот? – Eliah Kagan 21 June 2012 в 15:24

Я установил freetype из источника http://sourceforge.net/projects/freetype/files/ с помощью

./configure --without-png 
make 
sudo make install
0
ответ дан 25 May 2018 в 13:22

Другие вопросы по тегам:

Похожие вопросы: