Линкер не может найти реализацию в каталоге include - PullRequest
0 голосов
/ 09 апреля 2020

Я использую gcc на WSL для компиляции C++ Linux проекта. Я хотел использовать библиотеку base64 кодирования / декодирования , поэтому я установил ее с vcpkg. Я включаю функции библиотеки через #include <cpp-base64/base64.h>. Однако это вызывает ошибку компоновщика:

undefined reference to `base64_encode[abi:cxx11](unsigned char const*, unsigned int)'

После изучения каталога include я не вижу ничего необычного:

/bin/vcpkg/installed/x64-linux/include/cpp-base64$ ls
base64.cpp  base64.h

В качестве теста я решил скопировать base64.cpp в мой каталог с исходным кодом, и он правильно связан. Почему это происходит? Разве компоновщик не должен без проблем забрать реализацию base64.cpp из каталога include?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...