Я распределяю свои cpp файлы наряду с make-файлом. Теперь make-файл расположен в том же каталоге как cpp файл.
Какова переменная (если таковые имеются) в make-файле, который позволяет мне получать текущий каталог, где make-файл расположен? Таким образом я могу использовать ту переменную для определения моего пути cpp для компиляции.
Мой make-файл следующие:
all:
g++ ($makeFileDir)/main.cpp ($makeFileDir)/hello.cpp ($makeFileDir)/factorial.cpp -o ($makeFileDir)/hello.exe
Править: Я выполняю свои make-файлы в Windows
Помню, у меня была точно такая же проблема. Это невозможно, насколько я помню. Лучше всего передать ее как переменную. То есть и кроссплатформенность и гарантированно работать, как вы знаете makefile dir при вызове времени (в противном случае вы не можете вызвать его).
В качестве альтернативы, вы можете сделать очень грязный трюк, то есть вы пытаетесь объединить ваш текущий путь (вы можете получить с $ (CURDIR) в gnu сделать) с пути вызова makefile (который может быть хитрым, и зависит от вашей марки)
.можно использовать $(srcdir)
затем ./configure --srcdir="/your/path/to/the/source/directory"
.