Спасибо за этот ответ. Как-то мне было трудно узнать немного о расширении тильды.
аюсь скомпилировать этот инструмент. Ниже приведено начало его Makefile:
CC = gcc
CFLAGS = -Wall -O2 -D TRACES
DFLAGS = -g -Wall -o0
CPPFLAGS= $(INCLUDES:%=-I %)
LDFLAGS = $(LIBRARIES:%=-L %)
LDLIBS = $(USED_TOOLS:%=-l%)
MY_FILES =
INCLUDE_DIR = ~/include
TOOLBOX_INC = $(INCLUDE_DIR)/tools
TOOLBOX_LIB = $(TOOLBOX_INC)
USED_TOOLS = std_io stringutils
INCLUDES = $(TOOLBOX_INC)
LIBRARIES = $(TOOLBOX_LIB)
У меня также есть ~ / include / tools, которые после компиляции включают std_io.o, libstd_io.a, stringutils.o и libstringutils.a
Я получаю следующую ошибку:
gcc -L ~/include/tools rank.o counterexample.o -lstd_io -lstringutils -o rank
ld: library not found for -lstd_io
collect2: ld returned 1 exit status
make: *** [rank] Error 1
Я не уверен, что вещи не включены правильно, и почему он не находит файлы библиотеки.
Редактировать: Оказывается, я случайно оставил пробел между опциями -L и -I. Кроме того, пути должны были быть расширены, я думаю. Это работает сейчас, спасибо!