Допустим, у меня есть библиотека lib1.so, созданная так:
gcc 1.cpp -o lib1.so -shared
И у меня есть еще одна библиотека lib2.so, созданная таким образом:
gcc 2.cpp -o lib2.so -shared -L. -l1
Но соединение с lib2.so
gcc main.cpp -o main -L. -l2
выдает предупреждение:
warning: lib1.so, needed by lib2.so, not found (try using -rpath or -rpath-link)
Но AFAIK использование rpath не рекомендуется, потому что тогда библиотека не может быть перемещена в другое место.
Как связать "main" с "lib2.so" без указания "lib1.so" и rpath?