Ich habe eine externe Bibliothek aus einem Projekt, das ich arbeitete, die gegen Boost 1.55 kompiliert wurde; Ich bin auf ein anderes Projekt gezogen, das diese Bibliothek verwenden muss, aber das aktuelle System verwendet boost 1.58.External Library Boost Version Probleme
Wenn ich verlinkt gegen die Bibliothek beschwert es sich, dass es keine Referenzen für Boost 1.55 Bibliotheken hat. Die Bibliothek, die ich gegen mir Verknüpfung wurde mit dem folgenden find_package Befehl zusammengestellt:
find_package(Boost 1.55 COMPONENTS ... REQUIRED)
Ich weiß, dass es für CMake einen min Befehl ist, aber ich bin nicht sicher, ob dies erlaubt mir die Bibliothek zu verwenden, die gegen Auftrieb kompiliert wurde 1.55 auf einer laufenden Maschine 1.58.
Irgendwelche Ratschläge, wie man diese externe Bibliothek kompiliert, so dass es jede Version von Boost verwendet, die mit 1.55 kompatibel ist, würde sehr geschätzt werden!
find_package Befehl für das neue Programm versucht Auftrieb zu finden):
find_package(Boost 1.55 COMPONENTS system filesystem chrono regex thread date_time REQUIRED)
Das System das neue Programm eingeschaltet ist hat 1,58 nicht 1,55 steigern so gibt es folgendes:
-- Boost version: 1.58.0
-- Found the following Boost libraries:
-- system
-- filesystem
-- chrono
-- regex
-- thread
-- date_time
-- atomic
Die kompiliert funktioniert gut gegen 1.58 ist es nur, wenn das neue Programm gegen die Bibliothek (gegen 1.55 kompiliert), dass es beschwert sich nicht in der Lage, th zu finden e boosten 1,55 Bibliotheken (siehe unten).
Verknüpfung Ausgang: (neue Programmverknüpfung zur Bibliothek)
/usr/bin/ld: warning: libboost_system.so.1.55.0, needed by library.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_filesystem.so.1.55.0, needed by library.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_chrono.so.1.55.0, needed by library.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_regex.so.1.55.0, needed by library.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_thread.so.1.55.0, needed by library.so, not found (try using -rpath or -rpath-link)
/usr/bin/ld: warning: libboost_date_time.so.1.55.0, needed by library.so, not found (try using -rpath or -rpath-link)
Haben Sie tatsächlich ein Problem? Ist das so, posten Sie die Details. –
Ich habe die Frage aktualisiert, um sie hoffentlich klarer zu machen. – badrobit