c++ и mysql

Discussion in 'С/С++, C#, Rust, Swift, Go, Java, Perl, Ruby' started by malik555, 26 Jun 2009.

  1. malik555

    malik555 New Member

    Joined:
    4 Feb 2009
    Messages:
    132
    Likes Received:
    1
    Reputations:
    0
    Всем привет !

    Нашел статью http://netsago.org/ru/notes/2008/8/

    где подробно описывается как работать с mysql в с++

    выполнил все действия как написанно - установил либу mysql++ все установилось без проблем в папку

    /usr/local/include

    в скрипте прописую

    Code:
    #include <fstream.h>
    #include <mysql++.h>
    using namespace std;
    using namespace mysqlpp;
    
    а скрипт не видит модуль mysql++

    test.cpp:21:21: error: mysql++.h: No such file or directory
    test.cpp:23: error: 'mysqlpp' is not a namespace-name
    test.cpp:23: error: expected namespace-name before ';' token


    а почему ведь все установлено ?

    Как решить проблему ?

    сервер freeBSD
     
  2. zythar

    zythar Elder - Старейшина

    Joined:
    16 Feb 2008
    Messages:
    517
    Likes Received:
    109
    Reputations:
    5
    хедеры из /usr/local/include перемести в /usr/include
     
  3. malik555

    malik555 New Member

    Joined:
    4 Feb 2009
    Messages:
    132
    Likes Received:
    1
    Reputations:
    0

    Да перемещал не помогает !

    Вот нащел как нужно кампилить правельно с mysql++

    http://tangentsoft.net/mysql++/doc/html/userman/incorporating.html#inc-unix
    я ввожу командой

    c++ test.cpp -o test -I/usr/include/mysql -I/usr/local/include/mysql++ -L/usr/local/lib -lmysqlpp -lmysqlclient

    выдает кучу ошибок я так понял так как по адресу

    -I/usr/include/mysql нет там mysql

    на моем FreeBSD он тут -I/usr/local/include/mysql

    изминил команду

    c++ test.cpp -o test -I/usr/local/include/mysql -I/usr/local/include/mysql++ -L/usr/local/lib -lmysqlpp -lmysqlclient

    выдает

    /usr/bin/ld: cannot find -lmysqlclient
     
  4. zythar

    zythar Elder - Старейшина

    Joined:
    16 Feb 2008
    Messages:
    517
    Likes Received:
    109
    Reputations:
    5
    стоп. попробуй скопировать и хедеры и либы в /usr/include и /usr/lib и укажи -lmysqlclient.
     
  5. malik555

    malik555 New Member

    Joined:
    4 Feb 2009
    Messages:
    132
    Likes Received:
    1
    Reputations:
    0
    Как я понял он не может найти эти либы lmysqlclient

    по адресу /usr/local/lib ее нет !
     
  6. zythar

    zythar Elder - Старейшина

    Joined:
    16 Feb 2008
    Messages:
    517
    Likes Received:
    109
    Reputations:
    5
    а файл libmysqlclient в /usr/local/lib есть?
     
  7. malik555

    malik555 New Member

    Joined:
    4 Feb 2009
    Messages:
    132
    Likes Received:
    1
    Reputations:
    0
    он тут
    /usr/local/lib/mysql

    а что получается не этот lmysqlclient а этот использовать libmysqlclient


    а тогда этот -lmysqlpp найти не могу - или у него может быть другое название ?
     
  8. malik555

    malik555 New Member

    Joined:
    4 Feb 2009
    Messages:
    132
    Likes Received:
    1
    Reputations:
    0
    либа тут находится

    /usr/local/lib/mysql


    Code:
    
    c++ test.cpp -o test -I/usr/local/include/mysql -I/usr/local/include/mysql++ -L/usr/local/lib/mysql -lmysqlpp -libmysqlclient
    
    
    но при компиляции он всеравно ее не видет

    /usr/bin/ld: cannot find -libmysqlclient