Russian Qt Forum
Ноябрь 26, 2024, 06:29
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Qt
>
Вопросы новичков
>
Динамические библиотеки Linux
Страниц: [
1
]
2
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: Динамические библиотеки Linux (Прочитано 8849 раз)
CJ1
Гость
Динамические библиотеки Linux
«
:
Июнь 04, 2013, 10:00 »
Всем привет, проблема такая.
Стоит VirtualBox, на ней Linux ubuntu, создаю общую папку rems-loco, монтирую ее в /mnt/gui/gui.
Там создаю проект на винде, на линукси компилю.
Все вроде работает, НО Хочу создать динамическую библиотеку QIOMCDevice.
Собственно создаю папку /mnt/gui/gui/QIOMCDevice. Там создаю динамическую библиотеку, и на стадии make
создается только libQIOMCDevice.so.1.0.0
Что с ним дальше делать? Как подключить?
в .pro файле проекта пишу
LIBS += \
libQIOMCDevice.so
он ее не находит! Как быть?
Записан
m_ax
Джедай : наставник для всех
Offline
Сообщений: 2095
Re: Динамические библиотеки Linux
«
Ответ #1 :
Июнь 04, 2013, 10:06 »
Цитата: CJ1 от Июнь 04, 2013, 10:00
Всем привет, проблема такая.
Стоит VirtualBox, на ней Linux ubuntu, создаю общую папку rems-loco, монтирую ее в /mnt/gui/gui.
Там создаю проект на винде, на линукси компилю.
Все вроде работает, НО Хочу создать динамическую библиотеку QIOMCDevice.
Собственно создаю папку /mnt/gui/gui/QIOMCDevice. Там создаю динамическую библиотеку, и на стадии make
создается только libQIOMCDevice.so.1.0.0
Что с ним дальше делать? Как подключить?
в .pro файле проекта пишу
LIBS += \
libQIOMCDevice.so
он ее не находит! Как быть?
LIBS += -L$$LIB_PATH -lQIOMCDevice
Записан
Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..
Arch Linux Plasma 5
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #2 :
Июнь 04, 2013, 10:09 »
неработает!!!
Но я понял! Мне нужна недистрибутивно скомпилировать библиотеку!! Только как это сделать?
Записан
m_ax
Джедай : наставник для всех
Offline
Сообщений: 2095
Re: Динамические библиотеки Linux
«
Ответ #3 :
Июнь 04, 2013, 10:13 »
Цитата: CJ1 от Июнь 04, 2013, 10:09
неработает!!!
Но я понял! Мне нужна недистрибутивно скомпилировать библиотеку!! Только как это сделать?
Не работает - пишется раздельно)
LIB_PATH - инициирована?
Записан
Над водой луна двурога. Сяду выпью за Ван Гога. Хорошо, что кот не пьет, Он и так меня поймет..
Arch Linux Plasma 5
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #4 :
Июнь 04, 2013, 10:13 »
Вот мой .pro файл!
Цитировать
#-------------------------------------------------
#
# Project created by QtCreator 2013-06-04T11:49:47
#
#-------------------------------------------------
QT -= gui
TARGET = QIOMCDevice
TEMPLATE = lib
DEFINES += QIOMCDEVICE_LIBRARY
SOURCES += qiomcdevice.cpp
HEADERS += qiomcdevice.h\
qiomcdevice_global.h
unix:!symbian {
maemo5 {
target.path = /opt/usr/lib
} else {
target.path = /usr/lib
}
INSTALLS += target
}
Как мне сделать что бы в итоге появлялся только .so
Записан
mutineer
Гость
Re: Динамические библиотеки Linux
«
Ответ #5 :
Июнь 04, 2013, 10:13 »
Цитировать
нужна недистрибутивно скомпилировать библиотеку
что это значит?
И окромя "неработает" хотелось бы увидеть конкретную ошибку
Записан
mutineer
Гость
Re: Динамические библиотеки Linux
«
Ответ #6 :
Июнь 04, 2013, 10:15 »
Цитата: CJ1 от Июнь 04, 2013, 10:13
Как мне сделать что бы в итоге появлялся только .so
Тебе нужно создать символические ссылки libQIOMCDevice.so.1.0, libQIOMCDevice.so.1, libQIOMCDevice.so, которые будут указывать на libQIOMCDevice.so.1.0.0. Странно что они сами не создались во время сборки
Записан
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #7 :
Июнь 04, 2013, 10:16 »
объясняю! В линуксе, выдумана какаето фигня с версиями so.1 so.2.0.0 и так далее. мне этот бред не нужен!
Мне нужно чтобы появился .so файл я его копернул в каталог с программой и все работало! Как это сделать?
Записан
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #8 :
Июнь 04, 2013, 10:17 »
Цитировать
Странно что они сами не создались во время сборки
ничего странного! команда ln во время сборки говорит что не может работать с файловой системой VirtualBox!
Записан
mutineer
Гость
Re: Динамические библиотеки Linux
«
Ответ #9 :
Июнь 04, 2013, 10:19 »
Цитата: CJ1 от Июнь 04, 2013, 10:17
Цитировать
Странно что они сами не создались во время сборки
ничего странного! команда ln во время сборки говорит что не может работать с файловой системой VirtualBox!
Переименуй файл тогда, раз у тебя файловая система без ссылок
Записан
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #10 :
Июнь 04, 2013, 10:19 »
ln failed to create symbolic link `libQIOMDevice` : Read-only file system
Записан
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #11 :
Июнь 04, 2013, 10:20 »
Цитировать
Переименуй файл тогда, раз у тебя файловая система без ссылок
пробовал переименовать в libQIOMCDevice.so
Тогда при запуске программа говорит ей нужен libQIOMCDevice.so.1
Записан
mutineer
Гость
Re: Динамические библиотеки Linux
«
Ответ #12 :
Июнь 04, 2013, 10:22 »
Цитата: CJ1 от Июнь 04, 2013, 10:20
Цитировать
Переименуй файл тогда, раз у тебя файловая система без ссылок
пробовал переименовать в libQIOMCDevice.so
Тогда при запуске программа говорит ей нужен libQIOMCDevice.so.1
Вот поэтому в линуксе и есть эта чехарда с символическими ссылками на либы - приложение при линковке хочет .so, а при запуске .so.*. Попробуй так:
LIBS += -l:libQIOMCDevice.so
Записан
CJ1
Гость
Re: Динамические библиотеки Linux
«
Ответ #13 :
Июнь 04, 2013, 10:24 »
Всеравно просит .so1
Записан
mutineer
Гость
Re: Динамические библиотеки Linux
«
Ответ #14 :
Июнь 04, 2013, 10:25 »
Ну тогда я вижу только два варианта - сделать ссылки, либо не линковаться, а грузить в рантайме
Записан
Страниц: [
1
]
2
Вверх
Печать
« предыдущая тема
следующая тема »
Перейти в:
Пожалуйста, выберите назначение:
-----------------------------
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...