Russian Qt Forum
Июля 02, 2025, 06:09
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Qt взять нужную библиотеку на другую Ubuntu
Страниц: [
1
]
2
3
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Qt взять нужную библиотеку на другую Ubuntu (Прочитано 15481 раз)
Zeka13
Гость
Qt взять нужную библиотеку на другую Ubuntu
«
:
Апреля 27, 2012, 18:16 »
Всем доброго времени суток.
Мой проект собран с использованием библиотеки qwt
Речь пойдёт о Linux
У меня в системе установлен пакет libqwt-dev (библиотека в /usr/lib), собственно с этим пакетом к меня всё работает и на других Ubuntu с этим пакетом тоже, но если я пытаюсь запустить бинарник на Ubuntu без этого пакета, то получаю
./plot4: error while loading shared libraries: libqwt.so.6: cannot open shared object file: No such file or directory
Положить библиотеку просто рядом с бинарником, как я это делаю в маздае, не прокатило, как тогда поступить?
Заранее спасибо за ответы!
Записан
navrocky
Гипер активный житель
Offline
Сообщений: 817
Погроммист
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #1 :
Апреля 27, 2012, 18:28 »
user@host> export LD_LIBRARY_PATH=. ; ./my_cool_prog_with_qwt
Записан
Гугль в помощь
Alex Custov
Джедай : наставник для всех
Offline
Сообщений: 2063
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #2 :
Апреля 27, 2012, 18:48 »
Поставить пакет, как ни странно)
Записан
Zeka13
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #3 :
Апреля 27, 2012, 20:38 »
navrocky
, зачем?
Alex Custov
Цитировать
Поставить пакет, как ни странно)
P.S. надо чтоб как в винде, ничего от пользователя не требовалось установить!
Я думал это и так понятно ...
«
Последнее редактирование: Апреля 28, 2012, 09:28 от Пантер
»
Записан
sudo
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #4 :
Апреля 27, 2012, 23:05 »
Цитата: Zeka13 от Апреля 27, 2012, 20:38
P.S. надо чтоб как в винде, ничего от пользователя не требовалось установить!
Я думал это и так понятно ...
Собирать пакет, делать зависимости
Записан
Zeka13
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #5 :
Апреля 27, 2012, 23:21 »
собирать пакет ради одной либы?
а больше никак?
Записан
Bepec
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #6 :
Апреля 28, 2012, 07:00 »
Это не винда. Это НЕ дружелюбный пользователю интерфейс. Это линукс
Записан
alexis031182
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #7 :
Апреля 28, 2012, 08:43 »
Цитата: Bepec от Апреля 28, 2012, 07:00
Это не винда. Это НЕ дружелюбный пользователю интерфейс. Это линукс
Да, домохозяйки отдыхают
Записан
alexis031182
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #8 :
Апреля 28, 2012, 08:46 »
Цитата: Zeka13 от Апреля 27, 2012, 23:21
собирать пакет ради одной либы?
а больше никак?
Так вроде ВСЕ приложения в Ubuntu собраны в пакеты. Если делать корректно, то собрать пакет нужно в независимости от того, использует ли программа дополнительные либы или нет.
Записан
navrocky
Гипер активный житель
Offline
Сообщений: 817
Погроммист
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #9 :
Апреля 28, 2012, 09:57 »
Цитата: Zeka13 от Апреля 27, 2012, 20:38
navrocky
, зачем?
Что зачем? Я тебе показал как подгружать либы из папки в которой лежит бинарь. Ты ведь этого хотел?
А если ты хочешь совсем чтобы как в винде, то это отдельная тема, надо не только qwt тащить но и всю бороду из системных либ (Qt, Xlib....). Или пересобрать пол системы в статике и слинковать со всем этим статически свой бинарь.
Хороший пример - google earth. Посмотри какие либы он с собой тащит и как их загружает.
Правда это не тру. Правильней собрать готовые пакеты для каждой ОС по отдельности и указывать необходимые зависимости, чтобы пакетный менеджер все необходимое установил автоматически не напрягая пользователя.
«
Последнее редактирование: Апреля 28, 2012, 10:07 от navrocky
»
Записан
Гугль в помощь
Bepec
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #10 :
Апреля 28, 2012, 10:18 »
Собрать около 10-20 пакетов и постоянно их поддерживать
Записан
Alex Custov
Джедай : наставник для всех
Offline
Сообщений: 2063
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #11 :
Апреля 28, 2012, 10:48 »
Цитата: Zeka13 от Апреля 27, 2012, 23:21
собирать пакет ради одной либы?
а больше никак?
ты уверен, что ради одной? Посмотри в ldd сколько зависимостей у программы, и не все они могут совпасть на другой машине. Поэтому принято делать пакеты и прописывать зависимости там.
Записан
Zeka13
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #12 :
Апреля 28, 2012, 11:02 »
navrocky
, мне пользователю говорить каждый раз в терминал просить лезть или делать системный вызов из кода можно?(сорри если что-то не своими словами называю)
alexis031182
, а вот и нет
пример:
tuxboot для linux долгое время распространялся просто как один бинарник и отлично работал, у меня даже остался для 64x машину, если не верите, могу скинуть
Записан
Alex Custov
Джедай : наставник для всех
Offline
Сообщений: 2063
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #13 :
Апреля 28, 2012, 11:07 »
Цитата: Zeka13 от Апреля 28, 2012, 11:02
пример:
tuxboot для linux долгое время распространялся просто как один бинарник и отлично работал, у меня даже остался для 64x машину, если не верите, могу скинуть
Это статически слинкованный бинарник. Мне, например, не нравится загаживать систему отдельными файлами, которые идут без пакетов.
Записан
alexis031182
Гость
Re: Qt взять нужную библиотеку на другую Ubuntu
«
Ответ #14 :
Апреля 28, 2012, 11:12 »
Цитата: Alex Custov от Апреля 28, 2012, 11:07
Это статически слинкованный бинарник. Мне, например, не нравится загаживать систему отдельными файлами, которые идут без пакетов.
++
Записан
Страниц: [
1
]
2
3
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
Qt
-----------------------------
=> Вопросы новичков
=> Уроки и статьи
=> Установка, сборка, отладка, тестирование
=> Общие вопросы
=> Пользовательский интерфейс (GUI)
=> Qt Quick
=> Model-View (MV)
=> Базы данных
=> Работа с сетью
=> Многопоточное программирование, процессы
=> Мультимедиа
=> 2D и 3D графика
=> OpenGL
=> Печать
=> Интернационализация, локализация
=> QSS
=> XML
=> Qt Script, QtWebKit
=> ActiveX
=> Qt Embedded
=> Дополнительные компоненты
=> Кладовая готовых решений
=> Вклад сообщества в Qt
=> Qt-инструментарий
-----------------------------
Программирование
-----------------------------
=> Общий
=> С/C++
=> Python
=> Алгоритмы
=> Базы данных
=> Разработка игр
-----------------------------
Компиляторы и платформы
-----------------------------
=> Linux
=> Windows
=> Mac OS X
=> Компиляторы
===> Visual C++
-----------------------------
Разное
-----------------------------
=> Новости
===> Новости Qt сообщества
===> Новости IT сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...