g++ не может связаться с libmysqlclient

Я использую Ubuntu 12.04 на виртуальной машине на моем MacbookPro. Я установил build-essential, mysql-server и libmysqlclient-dev. Обе команды "mysql" и "mysql_config" работают.

Однако следующая программа не связывает:

#include <stdio.h>
#include <unistd.h>
#include <mysql.h>

int main(int argc,char *argv[]){
    printf("hello world\n");

    //init
        {
        MYSQL itsmysql;

        MYSQL* mytemp=0; mytemp=mysql_init(&itsmysql);
        if(mytemp){
            printf("hello world YEP\n");
            }
        else{   
            printf("hello world NOOOO\n");
            }
        }

    return 0;
    }

Я запускаю g++ с командой:

g++ `mysql_config --cflags` `mysql_config --libs` test.cpp

Я работал под 32-битной версией Ubuntu, но теперь у меня есть 64-битная версия. Проблема возникает как с использованием VirtualBox, так и с Parallels. Вывод mysql_config выглядит нормально.

Мне кажется, что компоновщик не может найти подходящий тип файла / архитектуры среди файлов libmysqlclient.

Что я должен попробовать дальше?

Сообщение об ошибке "неопределенная ссылка на mysql_init".

1 ответ

Решение

Попробуйте вместо этого: работал для меня

g++ -o test test.cpp `mysql_config --cflags` `mysql_config --libs`

Тогда тест

./test
Hello world YEP
Другие вопросы по тегам