При установке программного обеспечения wink , я получил пакеты stdc ++ и lib expat не найдены.
prayag@prayag:~/wink$ ./installer.sh
Wink requires that the following packages be installed to run properly. Please install them and try again.
libstdc++.so.5 libexpat.so.0
Затем я попытался установить вышеупомянутые пакеты через apt-get, но получаю
prayag@prayag:~/wink$ sudo apt-get install libstdc++.so.5
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libstdc++.so.5
E: Couldn't find any package by regex 'libstdc++.so.5'
prayag@prayag:~/wink$ sudo apt-get install libexpat.so.0
Reading package lists... Done
Building dependency tree
Reading state information... Done
E: Unable to locate package libexpat.so.0
E: Couldn't find any package by regex 'libexpat.so.0'
Как я могу получить их в 32-битной Ubuntu и заставить установку подмигивания двигаться дальше.
Обновление: как предложено @Salem , я сделал
prayag@prayag:~/wink$ sudo apt-get install apt-file
prayag@prayag:~/wink$ apt-file update
## libstdc++
prayag@prayag:~/wink$ apt-file search libstdc++.so.5
libstdc++5: /usr/lib/i386-linux-gnu/libstdc++.so.5
libstdc++5: /usr/lib/i386-linux-gnu/libstdc++.so.5.0.7
prayag@prayag:~/wink$ sudo apt-get install libstdc++5
Аналогично я установил libexpat1
и libexpat1-dev
.
prayag@prayag:~/wink$ apt-file search libexpat.so
lib64expat1: /usr/lib64/libexpat.so.1
lib64expat1: /usr/lib64/libexpat.so.1.5.2
lib64expat1-dev: /usr/lib64/libexpat.so
libexpat1: /lib/i386-linux-gnu/libexpat.so.1
libexpat1: /lib/i386-linux-gnu/libexpat.so.1.5.2
libexpat1-dev: /usr/lib/i386-linux-gnu/libexpat.so
prayag@prayag:~/wink$ sudo apt-get install libexpat1
prayag@prayag:~/wink$ sudo apt-get install libexpat1-dev
Все еще подмигивающий установщик говорит мне:
prayag@prayag:~/wink$ ./installer.sh
Wink requires that the following packages be installed to run properly. Please install them and try again.
libexpat.so.0
Ошибка Wink не очень ясна, потому что это файлы, которые нужны, а не пакеты, которые вам нужно установить.
Всякий раз, когда вы получаете сообщение об ошибке типа «Я не могу найти randomfile.so», вы можете использовать apt-file
для поиска пакета, который его предоставляет. Если у вас его нет, вы можете установить его, используя sudo apt-get install apt-file
.
Поскольку я использую 64-битную систему, вы должны получить другие результаты от моей. Итак, где я получаю x86_64-linux-gnu
, вы должны получить i386-linux-gnu
, и вы должны заменить его в каждой из приведенных ниже команд
В вашем случае я получаю следующее:
$ apt-file search libstdc++.so.5
libstdc++5: /usr/lib/x86_64-linux-gnu/libstdc++.so.5
libstdc++5: /usr/lib/x86_64-linux-gnu/libstdc++.so.5.0.7
Итак, вы нужно установить пакет libstdc++5
, чтобы получить этот файл.
Что касается второго, в моей системе нет точного соответствия:
$ apt-file search libexpat.so
libexpat1: /lib/x86_64-linux-gnu/libexpat.so.1
libexpat1: /lib/x86_64-linux-gnu/libexpat.so.1.5.2
libexpat1-dev: /usr/lib/x86_64-linux-gnu/libexpat.so
, так что вы можете попробовать установить libexpat1
и libexpat1-dev
и посмотреть, принимает ли его Wink. Если нет, вы можете попытаться создать символическую ссылку на этот файл (в 32-битной системе измените путь, как описано выше).
$ sudo ln -s /usr/lib/x86_64-linux-gnu/libexpat.so /usr/lib/x86_64-linux-gnu/libexpat.so.0
Обратите внимание, что это может вообще не работать или заставить Wink работать не так, как ожидается, потому что вы будете использовать другую версию библиотеки, которая ей требуется. В случае, если это не работает, вы должны удалить созданную символическую ссылку:
$ sudo rm /usr/lib/x86_64-linux-gnu/libexpat.so.0