iDmitriyWinX
@iDmitriyWinX
В чём концепция...?

Как правильно подключить эту библиотеку к проекту?

Мне нужно написать программку на C++, и так как я очень не хочу вводить пути руками, я хочу подключить вот эту вот библиотеку.

Но так как я новичок в С++, то я не совсем понимаю, как это сделать. В её исходниках нет команды make install и её не установить через apt.

Со структурой C++ проектов я пока тоже не очень знаком и не совсем понимаю что тут происходит.

У меня есть такой проект (структура сгенерирована VSCode):

61a35bc350454227681230.png
Так как подобным образом я никогда не ставил библиотеки и вообще я на плюсах меньше недели, мне не очень понятно, что и куда надо сувать чтобы это заработало.

Что говорит разработчик про её сборку: https://github.com/mlabbe/nativefiledialog#building
  • Вопрос задан
  • 32 просмотра
Решения вопроса 1
@sergiodev
В коде nativefiledialog есть Makefile для сборки с GNU Make. Т. к. у вас тоже используется make, то процесс примерно такой:

1. Скопируйте код библиотеки в папку lib/nativefiledialog

git clone https://github.com/mlabbe/nativefiledialog.git lib/nativefiledialog


2. Добавьте цель для компиляции билиотеки в ваш Makefile и добавьте соотвествующие флаги для директории хедеров и линковки с библиотекой, например вот так:

all: my_program

my_program: nfd_lib
	g++ -Llib/nativefiledialog/build/lib/Release/x64 -Ilib/nativefiledialog/src/include \
		-lnfd src/main.cpp -o my_program

clean: nfd_clean
	rm *.o my_program

nfd_lib:
	make -C lib/nativefiledialog/build/gmake_linux

nfd_clean:
	make -C lib/nativefiledialog/build/gmake_linux clean


3. Подключайте библиотеку в main.cpp

#include <nfd.h>

Я использовал конфигурацию Release/x64, если у вас 32-битная машина (что маловероятно), у вас будет Release/x86.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
SERIOUS.PARTNERS Санкт-Петербург
от 120 000 ₽
Radario Санкт-Петербург
от 160 000 до 260 000 ₽
13 янв. 2022, в 12:39
1350 руб./в час
26 янв. 2022, в 00:25
5000 руб./за проект