ld не может найти существующую библиотеку

Я пытаюсь создать большое приложение, но почему-то связывание не выполняется, и ld отвечает

/ usr / bin / ld: не удается найти -l / usr / lib / x86_64-linux-gnu / libX11.so

Шаги, которые я пробовал:

  1. libx11-dev установлен правильно, а файл libX11.so – символическая ссылка, которая указывает на libX11.so.6.3.0
  2. Удалили ссылку и воссоздали ее с помощью ln -s /usr/lib/x86_64-linux-gnu/libX11.so.6.3.0 /usr/lib/x86_64-linux-gnu/libX11.so
  3. ldconfig -v для обновления кеша. Не повезло…

У кого-нибудь есть идея?

ОБНОВИТЬ

Sato Katsura опубликовал очень полезный комментарий, предлагая вместо этого использовать -L/usr/lib/x86_64-linux-gnu -lX11 . Это действительно сработало, и приложение скомпилировано без дополнительной информации!

Может ли кто-нибудь просветить меня о том, в чем разница?