Cannot locate referenced shared object

Bug #2125594 reported by Jack Borer
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
apriltag (Ubuntu)
New
Undecided
Unassigned

Bug Description

On Ubuntu 24.04, after installing libapriltag-dev and adding find_package(apriltag REQUIRED) to my CMakeLists.txt I get the following error during cmake configuration:

#9 0.440 CMake Error at /usr/lib/x86_64-linux-gnu/cmake/apriltag/apriltagTargets.cmake:92 (message):
#9 0.440 The imported target "apriltag::apriltag" references the file
#9 0.440
#9 0.440 "/usr/lib/lib/x86_64-linux-gnu/libapriltag.so.3.3.0"
#9 0.440
#9 0.440 but this file does not exist. Possible reasons include:
#9 0.440
#9 0.440 * The file was deleted, renamed, or moved to another location.
#9 0.440
#9 0.440 * An install or uninstall procedure did not complete successfully.
#9 0.440
#9 0.440 * The installation package was faulty and contained
#9 0.440
#9 0.440 "/usr/lib/x86_64-linux-gnu/cmake/apriltag/apriltagTargets.cmake"
#9 0.440
#9 0.440 but not all the files it references.

---
If I run the same exact set of commands on ubuntu 22.04 the cmake configuration runs without error. Looking at the error message I see something suspicious in the path "/usr/lib/lib/x86_64-linux-gnu/libapriltag.so.3.3.0" that the word lib is repeated twice. I can find no such folder or the referenced file there.

To recreate the issue easily I have created a minimal docker file which I will copy and paste below. If you change the base image to 22.04 the process executed with no configuration error. I have looked in the repository changelog and other issues but found no reference to a problem related to this.

Thank you in advance to anyone who has a moment to look at this, and if you can point me in the right direction if I have made a simple mistake that would be much appreciated.

---

FROM ubuntu:24.04

ARG DEBIAN_FRONTEND=noninteractive
SHELL ["/bin/bash", "-c"]
WORKDIR /buildroot

# Install build prereqs
RUN apt-get update; apt-get install --yes build-essential cmake ninja-build;
# Install libapriltag-dev
RUN apt-get update; apt-get install --yes libapriltag-dev;
# Write minimal CMakeLists.txt
RUN echo -e "cmake_minimum_required(VERSION 3.22)\nproject(apriltag_bug LANGUAGES CXX)\nfind_package(apriltag REQUIRED)" > CMakeLists.txt
# Run cmake configuration and observe failure in error logs on 24.04
RUN cmake -G Ninja -S /buildroot

Revision history for this message
dima (9-ubuntu-4) wrote :

This works on Debian and the latest libapriltag-dev package: version 3.4.2-1+b2. You say that 24.04 is broken but 22.04 worked. These have 3.3 and 3.2 of apriltag respectively. I susped that this issue is fixed in 3.4. Are you able to try?

To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.