Я пытаюсь запустить клиент для школьного проекта с ИИ, разработанным на Lua, я добавил liblua.so в папку /lib/ в корне папки моей программы.
После компиляции и запуска указанной программы я получаю следующую ошибку:
./zappy_ai: ошибка при загрузке общих библиотек: liblua.so: невозможно открыть общий объектный файл: нет такого файла или каталога
Насколько я понимаю, я должен что-то сделать при компиляции, чтобы моя программа знала, где находится моя общая библиотека.
Вот соответствующая часть моего Makefile:
CXX = g++
BASE_FLAGS = -Wall -Wextra -Iincludes
AI_NAME = zappy_ai
AI_PATH = ./sources/client/
AI_FLAGS = $(BASE_FLAGS) \
-L./lib/ \
-I./includes/client/ \
-I./include/ \
-std=c++11 \
AI_LDFLAGS = -llua
AI_SRCS = main.cpp \
Client.cpp \
Params/Params.cpp \
Params/Option.cpp \
SocketTCP.cpp \
Misc/Error.cpp
AI_OBJS = $(addprefix $(AI_PATH), $(AI_SRCS:.cpp=.cpp.o))
%.cpp.o : %.cpp
@printf "%b[Compilation]%b %-50s" $(BLUE) $(RESET) $<
@$(CXX) $(FLAGS) -c $< -o $@
@printf "%bOK%b\n" $(GREEN) $(RESET)
$(AI_NAME) : FLAGS = $(AI_FLAGS)
$(AI_NAME) : $(AI_OBJS)
@$(CXX) $^ -o $@ $(AI_LDFLAGS)
@printf "%b[Message]%b AI compilation done\n\n" $(YELLOW) $(RESET)
Что я должен добавить, чтобы иметь возможность запускать мою программу и находить мою общую библиотеку?