Этот вопрос, вероятно, задавался десятки раз, но я не могу найти подходящий ответ.
Я пытаюсь создать простой проект с использованием Bazel. Проект включает в себя библиотеку GLFW. К сожалению, я не могу правильно связать проект. Прямо сейчас Bazel производит следующую команду для компоновщика.
ld ... -lc++ -S bazel-out/darwin-fastbuild/bin/main/_objs/orbit/main.o lib/GLFW/libglfw3.a -lglfw3 -framework Cocoa -framework OpenGL -framework IOKit -framework Foundation
По некоторым причинам, хотя библиотека включена, компоновщик отвечает
ld: library not found for -lglfw3
Но если вместо компоновки архива библиотеки я просто использовал бы свой каталог, он работает и хорошо компилируется.
ld ... -lc++ -S bazel-out/darwin-fastbuild/bin/main/_objs/orbit/main.o -L/Users/mightykho/Stuff/cpp/orbit/lib/GLFW -lglfw3 -framework Cocoa -framework OpenGL -framework IOKit -framework Foundation
Не могли бы вы объяснить мне, почему это имеет значение и как добиться тех же результатов, связывая только архив?