Приложение Linux qt после развертывания - ошибка поиска символа: libQt5Core.so.5 неопределенный символ: uncv_getDefaultName_56 - PullRequest
0 голосов
/ 15 января 2019

Я хочу развернуть свое приложение qt в Linux, но я получаю ошибку компоновки, такую ​​как:

ошибка поиска символа libQt5Core.so.5 неопределенный символ: uncv_getDefaultName_56

Может иметь что-то общее с libicu, но в правильной версии он находится в каталоге / lib64. Моя цель - развернуть все статически, и я не уверен, возможно ли это с QT

1 Ответ

0 голосов
/ 15 января 2019

Вы можете использовать ldd в вашем двоичном файле, чтобы узнать, какие библиотеки ему нужны.

Если у вас нет коммерческой лицензии на Qt, вы можете развертывать только динамически связанные двоичные файлы. Вы можете развернуть необходимые динамические библиотеки, которые должны быть установлены в вашей системе. В моей системе я нахожу следующее для libQt5Core

lrwxrwxrwx 1 root root      20 Dec 26 19:30 /usr/lib64/libQt5Core.so -> 
libQt5Core.so.5.12.0
lrwxrwxrwx 1 root root      20 Dec 26 19:30 /usr/lib64/libQt5Core.so.5 -> 
libQt5Core.so.5.12.0
lrwxrwxrwx 1 root root      20 Dec 26 19:30 /usr/lib64/libQt5Core.so.5.12 -> 
libQt5Core.so.5.12.0
-rwxr-xr-x 1 root root 5421416 Dec 26 19:32 /usr/lib64/libQt5Core.so.5.12.0

libQt5Core.so.5.12.0 - это актуальная библиотека. Другие являются ссылками, созданными ldconfig. Вы должны включить их все в свой двоичный файл.

В качестве альтернативы вы можете установить пакеты libQt5 в вашей целевой системе.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...