Russian Qt Forum
Ноябрь 26, 2024, 02:30
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Общие вопросы
>
Qt взять нужную библиотеку на другую Ubuntu
Страниц: [
1
]
2
3
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Qt взять нужную библиотеку на другую Ubuntu (Прочитано 14893 раз)
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...