Рейтинг:0

Неопределенная ссылка на библиотеки при сборке

флаг br

я пытаюсь установить tgs2apng в Ubuntu на WSL. В соответствии с инструкциями я установил 3 библиотеки: рлотти, libpng и апнгаз. Однако, когда я бегу делать Я получаю неопределенные ссылки на рлотти и апнгаз

Вот результат делать

g++ -Wl,--start-group -lrlottie -lapngasm -lboost_filesystem -lboost_regex -Wl,--end-group -Wl,-rpath-link=/usr/local/lib tgs2apng.cpp -o tgs2apng
tgs2apng.cpp: В функции «bool tgs2apng::render(const string&, const string&, size_t, size_t)»:
tgs2apng.cpp:30:38: предупреждение: формат «%d» ожидает аргумент типа «int», но аргумент 3 имеет тип «size_t» {он же «long unsigned int» } [-Wformat=]
   30 | std::fprintf(stderr, "Количество кадров: %d\n", кадров);
      | ~^ ~~~~~~
      | | |
      | int size_t {длинное целое число без знака}
      | %ld
/usr/bin/ld: /tmp/ccWPPbxE.o: в функции `tgs2apng::render(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, unsigned long, unsigned long)':
tgs2apng.cpp:(.text+0xf3): неопределенная ссылка на `rlottie::Animation::loadFromData(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&, std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator <char> > const&, bool)'
/usr/bin/ld: tgs2apng.cpp:(.text+0x175): неопределенная ссылка на `rlottie::Animation::totalFrame() const'
/usr/bin/ld: tgs2apng.cpp:(.text+0x193): неопределенная ссылка на `rlottie::Animation::frameRate() const'
/usr/bin/ld: tgs2apng.cpp:(.text+0x25d): неопределенная ссылка на `apngasm::APNGasm::APNGasm()'
/usr/bin/ld: tgs2apng.cpp:(.text+0x315): неопределенная ссылка на `rlottie::Surface::Surface(unsigned int*, unsigned long, unsigned long, unsigned long)'
/usr/bin/ld: tgs2apng.cpp:(.text+0x36e): неопределенная ссылка на `rlottie::Animation::renderSync(unsigned long, rlottie::Surface, bool)'
/usr/bin/ld: tgs2apng.cpp:(.text+0x4ad): неопределенная ссылка на `apngasm::APNGFrame::APNGFrame(apngasm::rgba*, unsigned int, unsigned int, unsigned int, unsigned int)'
/usr/bin/ld: tgs2apng.cpp:(.text+0x4c6): неопределенная ссылка на `apngasm::APNGasm::addFrame(apngasm::APNGFrame const&)'
/usr/bin/ld: tgs2apng.cpp:(.text+0x4ec): неопределенная ссылка на `apngasm::APNGAsm::assemble(std::__cxx11::basic_string<char, std::char_traits<char>, std: :allocator<char> > const&)'
/usr/bin/ld: tgs2apng.cpp:(.text+0x506): неопределенная ссылка на `apngasm::APNGasm::~APNGasm()'
/usr/bin/ld: /tmp/ccWPPbxE.o: в функции `std::default_delete<rlottie::Animation>::operator()(rlottie::Animation*) const':
tgs2apng.cpp:(.text._ZNKSt14default_deleteIN7rlottie9AnimationEEclEPS1_[_ZNKSt14default_deleteIN7rlottie9AnimationEEclEPS1_]+0x22): неопределенная ссылка на `rlottie::Animation::~Animation()'
collect2: ошибка: ld вернул 1 статус выхода
make: *** [<встроенный>: tgs2apng] Ошибка 1

ldconfig -p | грэп рлотти возвращается-

  librlottie.so.0 (libc6,x86-64) => /lib/librlottie.so.0
  librlottie.so (libc6,x86-64) => /lib/librlottie.so
  librlottie-image-loader.so (libc6,x86-64) => /lib/librlottie-image-loader.so

и ldconfig -p | апнгазм возвращается-

  libapngasm.so (libc6,x86-64) => /usr/local/lib/libapngasm.so

Я думаю, это означает, что библиотеки установлены, может ли кто-нибудь указать причину этой ошибки?

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.