Połączenie z mysql z poziomu C++. Konflikt bibliotek

Bash, C, C++, Java, PHP, Ruby, GTK, Qt i wiele innych - wszystko tutaj.
Prewitt_88
Piegowaty Guziec
Piegowaty Guziec
Posty: 2
Rejestracja: 25 sty 2011, 23:10
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Połączenie z mysql z poziomu C++. Konflikt bibliotek

Post autor: Prewitt_88 »

OS: Ubuntu 10.04.2 LTS
Serwer MySQL: 5.1.41-3ubuntu12.10
Connector/C++ 1.1
kompilator gcc: version 4.4.3

Witam serdecznie,

Łącząc się z mysql wykorzystując Connector C++ 1.1 otrzymuje następujący warning podczas kompilacji programu z manuala MySQL 5.1:

Kod: Zaznacz cały

g++ -I/usr/local/include -I/usr/local/include/cppconn -Wl,-Bdynamic -lmysqlcppconn  standalone_example_docs1.cpp
/usr/bin/ld: warning: libstdc++.so.5, needed by /usr/local/lib/libmysqlcppconn.so, may conflict with libstdc++.so.6
Uruchamiając następnie program, od razu się on wysypuje.
libmysqlcppconn.so wymaga libstdc++.so.5, zaś w systemie domyślnie instalowana jest wersja następna libstdc++.so.6.
Jednym z internetowych rozwiązań tego problemu było przejście na g++ w wersji 3.3, lecz nie potrafiłem zainstalować tego "starego" już pakietu.

Czy zna ktoś odpowiedź jak nie doprowadzać do danego konfliktu bibliotek?
A może dać sobie z tym spokój i przejść np. na mysql++
Razi
Serdeczny Borsuk
Serdeczny Borsuk
Posty: 150
Rejestracja: 20 paź 2007, 16:23
Płeć: Mężczyzna
Wersja Ubuntu: 11.04
Środowisko graficzne: KDE Plasma
Kontakt:

Re: Połączenie z mysql z poziomu C++. Konflikt bibliotek

Post autor: Razi »

Przekompiluj tą bibliotekę pod nowego GCC i użyj tej nowoskompilowanej.
standardowy pakiecik ./configure --prefix=/usr && make && sudo make install powinien wystarczyć
Prewitt_88
Piegowaty Guziec
Piegowaty Guziec
Posty: 2
Rejestracja: 25 sty 2011, 23:10
Płeć: Mężczyzna
Wersja Ubuntu: 9.10
Środowisko graficzne: GNOME
Architektura: x86

Re: Połączenie z mysql z poziomu C++. Konflikt bibliotek

Post autor: Prewitt_88 »

Jako początkujący użytkownik linuxa od razu napotkałem problem:)
W katalogu /usr/lib posiadam plik libstdc++.so.5 i jest to plik binarny, który zainstalowałem z pakietów debiana. Usunąłem go, i następnie szukałem w sieci kodów źródłowych tej biblioteki.. no i nie znalazłem.
Chyba coś tutaj źle robię:)
ODPOWIEDZ

Wróć do „Programowanie”

Kto jest online

Użytkownicy przeglądający to forum: Obecnie na forum nie ma żadnego zarejestrowanego użytkownika i 9 gości