Примечание: после написания этого ответа мое резюме будет:
Храните все, что не является стандартным для дистрибутива Linux, который вы используете, отдельно. Фактически храните файлы для разных проектов отдельно, даже если они совместно используют библиотеки. Это значительно облегчит перенос файлов на другой компьютер, настройку нескольких завершенных сборок для тестирования и, что самое важное, возможность воссоздать сборку, начиная с нуля.
Решение действительно субъективное.
- Вам нужна только одна копия библиотеки для всех пользователей?
- Это редко меняется?
- Если ваша сборочная машина загорелась и у вас не было резервных копий этой машины, как быстро и легко вы могли бы перестроить свою среду библиотек и кросс-компиляторов?
Я задаю эти вопросы, потому что, если библиотека часто меняется или разные пользователи могут нуждаться в разных версиях, вам лучше иметь ее переносимой. То есть вы можете указать в своей сборке, где искать файлы.
Из предложений вашей команды я бы склонялся к пути, который содержит ссылку на ваш проект. Через год (когда кто-то попросит вас настроить другую сборочную машину) будет проще воспроизвести все.
Наконец, я не буду беспокоиться о попытках придерживаться «стандартных» расположений библиотек, потому что вы не создаете и не управляете дистрибутивом Linux. Кроме того, большинство людей на самом деле не знают ничего, кроме "/ usr / lib" и / usr / local / lib ", и даже люди, которые знают их, не знают разницы.
Делайте то, что лучше для вашего проекта, независимо от того, что это может быть.