какая самая старая версия glib, с которой может работать приложение qt 4.6 - PullRequest
1 голос
/ 19 марта 2010

Я пытаюсь создать отдельное приложение qt (построенное на ubuntu и развернутое в Red Hat 5.3, оба 64-разрядных) после создания приложения qt, которое статически связано с библиотекой qt. Я пытался запустить программу в Red Hat и получена ошибка о том, что libc.so.6 не найден и что GLIBC_2.9 или GLIBC_2.10 не установлены и не нужны. Я попытался выполнить yum install glibc, но затем я получил сообщение о том, что glibc обновлен (я думаю, что его версия 2.5). Я думаю, что я собираюсь перезапустить процесс сборки, но на этот раз из установки Red Hat. Что вы предлагаете мне сделать в этом случае? Моя цель - создать автономное приложение qt, которое нужно запускать только в Red Hat 5 (я уверен, что с fontconfig.so также возникнет проблема, но я могу просто предоставить эту библиотеку прямо в том же каталоге, что и приложение)

1 Ответ

2 голосов
/ 19 марта 2010

Вы пытаетесь сделать переносимый двоичный файл в Linux? Есть два способа, которые я знаю.

Во-первых, возможно, это технически правильный метод, но он также довольно труден и, вероятно, не стоит времени: скомпилируйте Qt и ваше приложение с помощью LSB SDK. (или просто скомпилируйте ваше приложение с помощью LSB SDK, если версия Qt в LSB достаточно новая для вас.)

Во-вторых, прагматичный подход: скомпилируйте Qt и ваше приложение на машине с самой старой версией glibc, которую вы намереваетесь поддерживать. Например, вместо компиляции в Ubuntu и развертывания в Redhat, попробуйте другой способ.

Если вам нужно поддерживать широкий спектр библиотек glibc или других системных библиотек, вам, вероятно, придется компилировать несколько раз и распространять несколько двоичных файлов.

...