Я выяснил, какие .so
файлы нужны моей программе для работы на других машинах, но я не уверен, что мне нужно с ними делать, чтобы моя программа нашла их и связала с ними на исполнении.
Я знаю, что на платформах Windows я могу просто записать файлы .dll
в каталог исполняемого файла и покончить с этим. Похоже, что в Linux это не так.
$ ls
libjrtp.so.3.9.1 libjthread.so.1.3.1 libQtCore.so.4 libQtGui.so.4 streamer
$ ./streamer
./streamer: error while loading shared libraries: libjrtp.so.3.9.1: cannot open shared object file: No such file or directory
Мне кажется странным, что программа не может связываться с библиотекой, даже если она в основном находится прямо в рабочем каталоге. Почему это не ссылка?