![]() |
Здравствуйте, гость ( Вход | Регистрация )
![]() ![]() |
![]() |
Osamu |
![]()
Сообщение
#1
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 24.12.2010 Пользователь №: 2297 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
Необходимо поместить qt-библиотеки в отдельную папку рядом с .exe,
а не рядом с исполняемым файлом. Возможно ли такое? |
|
|
kwisp |
![]()
Сообщение
#2
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
Osamu,
как программно сделать не в курсе. почему-то сомневаюсь что такой способ существует. а вот если написать установщик, который пропишет путь к dll в PATH, либо redme файл, где попросишь пользователя ручками вписать, либо батник который рискнет запускать программу так PATH=%PATH%;<путь к qt*.dll> myprog.exe, в самой же программе можно проверять если пути к qt*.dll нет писать сообщение на консоль с ругательствами. |
|
|
Osamu |
![]()
Сообщение
#3
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 24.12.2010 Пользователь №: 2297 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
kwisp
Программно тоже думаю, что не возможно. думал может как-нибудь в pro-файле прописать папку, откуда брать библиотеки , рядом же с exe-файлом цыпляет же их, хотелось бы их поместить в отдельную папку |
|
|
BRE |
![]()
Сообщение
#4
|
![]() Профессионал ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1112 Регистрация: 6.3.2009 Из: Ростов-на-Дону Пользователь №: 591 Спасибо сказали: 264 раз(а) Репутация: ![]() ![]() ![]() |
рядом же с exe-файлом цыпляет же их, хотелось бы их поместить в отдельную папку При запуске программы, загрузкой dll занимается специальный загрузчик операционой системы, в соответствии со своими правилами. В разных операционных системах они разные, например, в linux загрузчик не найдет разделяемые библиотеки, если положить их рядом с исполняемым файлом (он их там даже искать не станет, без дополнительных телодвижений со стороны пользователя). |
|
|
Osamu |
![]()
Сообщение
#5
|
Новичок Группа: Новичок Сообщений: 3 Регистрация: 24.12.2010 Пользователь №: 2297 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
При запуске программы, загрузкой dll занимается специальный загрузчик операционой системы, в соответствии со своими правилами. В разных операционных системах они разные, например, в linux загрузчик не найдет разделяемые библиотеки, если положить их рядом с исполняемым файлом (он их там даже искать не станет, без дополнительных телодвижений со стороны пользователя). Спасибо, понял) про linux - как раз читал,что не найдет, в итоге, придется писать батник |
|
|
voipp |
![]()
Сообщение
#6
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 116 Регистрация: 20.10.2009 Из: Msk Пользователь №: 1166 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
А можете подробнее написать (или дать ссылку, где это написано), что должно быть в bat файле, чтобы в переменную окружения PATH прописывался путь к библиотекам qt.
спасибо |
|
|
panter_dsd |
![]()
Сообщение
#7
|
![]() Жаждущий знаний ![]() ![]() ![]() Группа: Участник Сообщений: 254 Регистрация: 1.1.2009 Из: Санкт-Петербург Пользователь №: 474 Спасибо сказали: 32 раз(а) Репутация: ![]() ![]() ![]() |
Для винды set PATH=path_to_your_dlls;%PATH%
Для Линуха export PATH=path_to_your_dlls:$PATH |
|
|
voipp |
![]()
Сообщение
#8
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 116 Регистрация: 20.10.2009 Из: Msk Пользователь №: 1166 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
не хочит прописываться путь в переменную окружения.
PS. у меня библиотека находится на диске |
|
|
kwisp |
![]()
Сообщение
#9
|
![]() астарожна ынтжинэр ![]() ![]() ![]() ![]() ![]() Группа: Участник Сообщений: 1404 Регистрация: 26.11.2008 Из: ТаганрогРодинаЧехова Пользователь №: 435 Спасибо сказали: 113 раз(а) Репутация: ![]() ![]() ![]() |
|
|
|
voipp |
![]()
Сообщение
#10
|
![]() Участник ![]() ![]() Группа: Участник Сообщений: 116 Регистрация: 20.10.2009 Из: Msk Пользователь №: 1166 Спасибо сказали: 0 раз(а) Репутация: ![]() ![]() ![]() |
все заработало, только после вот этого: SETX PATH "C:\chm\LIBS";
как вы понимаете "C:\chm\LIBS" - путь до библиотек Сообщение отредактировал voipp - 27.12.2010, 18:58 |
|
|
![]() ![]() ![]() |
![]() |
Текстовая версия | Сейчас: 11.3.2025, 6:51 |