У меня есть программа (в частности, моя запись для SO DevDays Countdown app), которая опирается на несколько динамических библиотек, а именно libSDL, libSDL_ttf и другие. У меня эти библиотеки установлены под /opt/local/lib
через MacPorts, и многие люди не будут иметь эти установленные (и некоторые из них могут быть установлены, но не в этом месте).
Как распространять мою программу, чтобы люди, не имеющие этих библиотек, могли запускать ее из коробки? Очевидно, мне придется распространять различные файлы .dylib
, но этого недостаточно. Динамический загрузчик по-прежнему ищет библиотеки, установленные в местах, где я их установил. Есть ли способ сказать динамическому загрузчику посмотреть в текущем каталоге исполняемого файла, например, что делает Windows с DLL? Людям не нужно изменять какие-либо переменные среды (например, DYLD_LIBRARY_PATH
), так как снова я хочу, чтобы это работало готово.