Я хочу использовать команду «make» и связать ее с путями include и lib.
Я использую:
make -I / path_to_include - L / path_to_lib
, но это дает мне:
«ничего не поделаешь для / path_to_lib
(путь правильный)
make
не принимает опции, подобные -L /path/to/somewhere
- это аргументы, которые необходимо передать компилятору, и make
не будет передавать их. Возможно, вам нужно отредактировать Makefile
соответствующим образом.
В зависимости от Makefile
, он часто будет использовать переменную типа CFLAGS
, LIBS
или LDFLAGS
для передачи дополнительных опций компилятору. Вы можете установить их при запуске make
: LIBS=-lmylib LDFLAGS=-L/path/to/mylib make
. Это основано на том, что Makefile
был написан для использования таких переменных, однако, что, вероятно, будет сгенерировано системой, подобной autoconf
, а одна, написанная от руки, не сможет.
Вы можете использовать приведенную ниже ссылку «make» для команды lib и включить,
make <filename_without_extension> LDLIBS="-l<lib1> -l<lib2>"
предположим, что у вас есть файл server1.cpp для компиляции с использованием команды make,
make server1 LDLIBS="-lcpprest -lpthread -lssl -lcrypto" LDFLAGS="-L/usr/lib/" CXXFLAGS="-I/usr/include/"
Вывод будет разверните команду компиляции как,
g++ -I/usr/include/ -L/usr/lib/ server1.cpp -lcpprest -lpthread -lssl -lcrypto -o server1