Russian Qt Forum
Ноябрь 22, 2024, 20:12
Добро пожаловать,
Гость
. Пожалуйста,
войдите
или
зарегистрируйтесь
.
Вам не пришло
письмо с кодом активации?
1 час
1 день
1 неделя
1 месяц
Навсегда
Войти
Начало
Форум
WIKI (Вики)
FAQ
Помощь
Поиск
Войти
Регистрация
Russian Qt Forum
>
Forum
>
Компиляторы и платформы
>
Mac OS X
>
[Решено]Mac OS X: не могу запустить проект, ошибка с DYLD
Страниц:
1
[
2
]
3
Вниз
« предыдущая тема
следующая тема »
Печать
Автор
Тема: [Решено]Mac OS X: не могу запустить проект, ошибка с DYLD (Прочитано 20173 раз)
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #15 :
Июнь 18, 2015, 12:29 »
Честно говоря не понял. Не для исполняемого файла прописывать, а для dylib?
Записан
kuzulis
Джедай : наставник для всех
Offline
Сообщений: 2812
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #16 :
Июнь 18, 2015, 13:57 »
А если сам креатор запускать с DYLD_LIBRARY_PATH (и прочими, через скрипт, например)?
Например, сначала попытаться запустить свое приложение из консольки, установив нужное окружение и прописав все что нужно..
А потом уже, зная нужные "настройки" добавить их в скрипт для запуска креатора..
Записан
ArchLinux x86_64 / Win10 64 bit
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #17 :
Июнь 18, 2015, 14:32 »
Цитата: mezmay от Июнь 18, 2015, 12:29
Честно говоря не понял. Не для исполняемого файла прописывать, а для dylib?
Да, с помощью install_name_tool, а исполняемый перелинковать (чтобы он измененный путь подхватил)
Записан
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #18 :
Июнь 22, 2015, 19:04 »
Проблема запустить без среды - по значку.
Если просто пытаться запустить, ошибка
Цитировать
dyld: Library not loaded: ./libipps-8.2.dylib
.
Попробовал воспользоваться
./macdeployqt /path_to_my_app/my.app
:
Цитировать
ERROR: no file at "/./libipps-8.2.dylib"
ERROR: no file at "/./libippcore-8.2.dylib"
otool -L my
:
Цитировать
./libipps-8.2.dylib
./libippcore-8.2.dylib
...
...
Поменял пути:
Цитировать
install_name_tool -change ./libipps-8.2.dylib /opt/intel/ipp/lib/libipps-8.2.dylib my
install_name_tool -change ./libippcore-8.2.dylib /opt/intel/ipp/lib/libippcore-8.2.dylib my
и сделал еще раз макдеплой
Теперь:
При запуске:
Цитировать
dyld error message:
Library not loaded: ./libippcore-8.2.dylib
Referenced from: /my_path/my.app/Contents/Frameworks/libipps-8.2.dylib
Reason: image not found
(сейчас обе эти библиотеки лежат во /Frameworks, макдеплой их туда положил)
и наконец отул от libipps из Frameworks:
Цитировать
otool -L libipps-8.2.dylib
libipps-8.2.dylib:
@executable_path/../Frameworks/libipps-8.2.dylib (compatibility version 8.2.0, current version 8.2.0)
./libippcore-8.2.dylib (compatibility version 8.2.0, current version 8.2.0)
/usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 169.3.0)
Что делать?
«
Последнее редактирование: Июнь 22, 2015, 19:19 от mezmay
»
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #19 :
Июнь 23, 2015, 07:44 »
Цитата: mezmay от Июнь 22, 2015, 19:04
Что делать?
Запакуйте bundle в zip и выложите сюда (если надо отключите код, оставьте ссылки на dylib)
Записан
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #20 :
Июнь 23, 2015, 19:15 »
Сам bundle:
https://yadi.sk/d/vkgUmgqThRxrj
кроме того для запуска понадобится Jack Audio Connection Kit:
https://yadi.sk/d/soM__RrqhRyDR
На данный момент вижу что проблема в том, что libippcore в свою очередь зависит от других динамических библиотек Intel IPP, которых всего 900 МБ в /opt/intel/ipp/lib/ . Их много и какая-то точно грузит зависимости в райнтайме.
Дистрибутив Intel IPP:
https://yadi.sk/d/cUQkmsPnhS2MK
«
Последнее редактирование: Июнь 23, 2015, 19:57 от mezmay
»
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #21 :
Июнь 24, 2015, 12:04 »
Цитата: mezmay от Июнь 23, 2015, 19:15
Дистрибутив Intel IPP:
https://yadi.sk/d/cUQkmsPnhS2MK
Ммм... он требует активации
Скиньте сначала те 2 либы, может этого будет достаточно. Хотя я бы совсем не отказался и от активации т.к. юзаю icc. Есть возможность - стукните в личку, ну а нет - так нет. Спасибо
Цитата: mezmay от Июнь 23, 2015, 19:15
На данный момент вижу что проблема в том, что libippcore в свою очередь зависит от других динамических библиотек Intel IPP, которых всего 900 МБ в /opt/intel/ipp/lib/ . Их много и какая-то точно грузит зависимости в райнтайме.
PRINT_DYLD_LIBRARIES напечатает всю последовательность загрузки
Записан
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #22 :
Июнь 24, 2015, 21:35 »
Эти две библиотеки:
https://yadi.sk/d/qG4eCeOEhTW3S
Все библиотеки:
https://yadi.sk/d/J7uzEq9xhTWDg
в личку отписал
«
Последнее редактирование: Июнь 24, 2015, 21:37 от mezmay
»
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #23 :
Июнь 25, 2015, 08:32 »
Залил 2 либы в MacOS и вправил все пути.
Здесь
К сожалению, на этом дело не кончается, получаю
Цитировать
Error at loading of ippSP library: No shared libraries were found in the Waterfall procedure
Видимо она в рантайме ищет еще либы. Чтобы сделать приложение без зависимостей
1) Устанавливаете LD_LIBRARY_PATH как написано
здесь
2) Включаете export PRINT_DYLD_LIBRARIES=1 толкаете в терминале и смотрите что она грузит. Потом тем же макаром заливаете это в MacOS.
Записан
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #24 :
Июнь 28, 2015, 12:51 »
Проблема в том что какая-то из этих библиотек (libipps или libippcore) грузит свои зависимости
в рантайме
.
Надо как-то задать этим библиотеками rpath (rpath - это список путей поиска библиотек для рантайма).
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #25 :
Июнь 28, 2015, 15:31 »
Цитата: mezmay от Июнь 28, 2015, 12:51
Проблема в том что какая-то из этих библиотек (libipps или libippcore) грузит свои зависимости
в рантайме
.
Надо как-то задать этим библиотеками rpath (rpath - это список путей поиска библиотек для рантайма).
Попробуйте как написано в ссылке выше
Цитировать
export LD_LIBRARY_PATH=/opt/intel/ipp/X.X/ia32/sharedlib:$LD_LIBRARY_PATH
Или выложите эти либы - я попробую
Записан
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #26 :
Июнь 28, 2015, 17:55 »
Задавать DYLD_LIBRARY_PATH я пробовал, работает, но только для запуска из терминала
либы все здесь:
https://yadi.sk/d/J7uzEq9xhTWDg
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #27 :
Июнь 29, 2015, 08:36 »
Цитата: mezmay от Июнь 28, 2015, 17:55
Задавать DYLD_LIBRARY_PATH я пробовал, работает, но только для запуска из терминала
либы все здесь:
https://yadi.sk/d/J7uzEq9xhTWDg
Похоже что не все. Вот я устанавливаю DYLD_LIBRARY_PATH на скачанные либы и включаю печать (export PRINT_DYLD_LIBRARIES=1). Вывод
Цитировать
...
dyld: loaded: /System/Library/PrivateFrameworks/DebugSymbols.framework/Versions/A/DebugSymbols
dyld: loaded: /Users/igorigor/Desktop/DYLD/lib/libippsu8-8.2.dylib
dyld: unloaded: /Users/igorigor/Desktop/DYLD/lib/libippsu8-8.2.dylib
dyld: loaded: /Users/igorigor/Desktop/DYLD/lib/libippsm7-8.2.dylib
dyld: unloaded: /Users/igorigor/Desktop/DYLD/lib/libippsm7-8.2.dylib
dyld: loaded: /Users/igorigor/Desktop/DYLD/lib/libippsmx-8.2.dylib
dyld: unloaded: /Users/igorigor/Desktop/DYLD/lib/libippsmx-8.2.dylib
Error at loading of ippSP library: No shared libraries were found in the Waterfall procedure
Edit: нет, либы все - нужно было добавить libippsu8-8.2.dylib. Ну вот у меня и запустилось, начинает вякать "Файл частотных полос не найден". Вот
бандл с прописаными либами
. У Вас пошло?
«
Последнее редактирование: Июнь 29, 2015, 09:03 от Igors
»
Записан
mezmay
Гость
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #28 :
Июнь 29, 2015, 09:29 »
Да, запускается! В чем фишка? Просто добавить libippsu c прописанными
в ней самой
путями к самой себе и libippcore?
А для запуска окна программы надо запустить JackPilot и в нем нажать start.
«
Последнее редактирование: Июнь 29, 2015, 09:54 от mezmay
»
Записан
Igors
Джедай : наставник для всех
Offline
Сообщений: 11445
Re: Mac OS X: не могу запустить проект, ошибка с DYLD
«
Ответ #29 :
Июнь 29, 2015, 10:04 »
Цитата: mezmay от Июнь 29, 2015, 09:29
Да, запускается! В чем фишка? Просто добавить libippsu c прописанными в нем самом путями к самому себе и libippcore? И как добились отображения в PRINT_DYLD_LIBRARIES этих библиотек?
Посмотрите (otool -L) все либы долитые в MacOS. В них все (и собственный id и все на что ссылается) тупо прописано на @executable_path, т.е. приложение без зависимостей. DYLD_LIBRARY_PATH не волнует.
Теперь, чтобы не возиться всякий раз, просто копируете все эти прописанные либы из MacOS куда-нибудь и линкуете оттуда. И добавляете "post build phase" (или как называется в вашей IDE) который скопирует их оттуда в MacOS. И все, у Вас сразу собирается приложение без зависимостей которое запускается как угодно и не требует никаких "переменных окружения"
Записан
Страниц:
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 сферы
=> Говорилка
=> Юмор
=> Объявления
Загружается...