ФорумПрограммированиеБольше языковC/C++ и C# → подключение libmysql

подключение libmysql

  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 13 июня 2010 г. 10:34

    Есть код:
    #include "config-win.h"
    #include "mysql.h"

    #include <stdlib.h>
    #include <stdio.h>

    int main (int argc, char** argv)
    {
       MYSQL *link;

       link = mysql_init(NULL);
       if (link == NULL)
       {
           printf(&quot;Mysql initialization filed\n&quot;);
           return EXIT_FAILURE;
       }
       printf(&quot;Mysql initialization complete\n&quot;);
       mysql_close(link);
       return EXIT_SUCCESS;
    }
    К проекту подключены библиотеки libmysql.lib и ws2_32.lib.

    Компилится всё замечательно, но при билде проекта всплывают unresolved external symbol errors, линкер почему-то не хочет цеплять из подключенных библиотек описания функций.
    Вопрос, почему? =) {+++92+++} Сами либы линкер находит и юзает, пробовал подсунуть несуществующую либу, линковка вообще не началась, вылезла ошибка &quot;файл библиотеки не найден&quot;
    Work, buy, consume, die
  • kostyl

    Сообщения: 5203 Репутация: N Группа: Джедаи

    Spritz 13 июня 2010 г. 10:35, спустя 32 секунды

    Naaayh, а на чём компилишь?
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 13 июня 2010 г. 10:47, спустя 12 минут 30 секунд

    MSVS 2010 Express, соотвественно компилятор/линковщик тоже майкросовтовский
    Work, buy, consume, die
  • Lastnote

    Сообщения: ? Репутация: N Группа: Кто попало

    Spritz 13 июня 2010 г. 11:23, спустя 35 минут 34 секунды

    Что насчет заголовочных файлов?
    Сдаётся мне, что там напихали всякую фигню, которую MSVCC по регламенту читает из сурсных файлов.
    Он не дурак, есть что попало не будет.
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 14 июня 2010 г. 10:51, спустя 23 часа 28 минут 32 секунды

    пистец, кажись допёрло, но всеравно какой-то бред:
    добавляю дефенишин файл либмайскуэль библиотеки в проект: /DEF:&quot;g:\server\bin\mysql\include\libmysql.def&quot;, ловлю ошибку:
    1>—— Build started: Project: test.mysql, Configuration: Debug Win32 ——
    1> Creating library C:\Users\nyaah\documents\visual studio 2010\Projects\test.mysql\Debug\test.mysql.lib and object C:\Users\nyaah\documents\visual studio 2010\Projects\test.mysql\Debug\test.mysql.exp
    1>test.mysql.exp : warning LNK4070: /OUT:LIBMYSQL.dll directive in .EXP differs from output filename &#39;C:\Users\nyaah\documents\visual studio 2010\Projects\test.mysql\Debug\test.mysql.exe&#39;; ignoring directive
    1>libmysql.lib(libmysql.dll) : fatal error LNK1112: module machine type &#39;x64&#39; conflicts with target machine type &#39;X86&#39;
    ========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped ==========
    - ага, понятно, либа х64, а у меня приложение х86, поэтому никуя и не работало, на радостях меняю target machine на x64, wtf Oo?:
    1>Debug\main.obj : fatal error LNK1112: module machine type &#39;X86&#39; conflicts with target machine type &#39;x64&#39;
    че за нахер Оо {+++40+++} пля, я дибил ) стандартные то бибилиотеки 32битные ))) {+++118+++} тихо сам с собою я веду беседу, всем спасибо за помощь =)
    придётся устанавливать х86 mysql сервер и оттуда дёргать дллку
    Work, buy, consume, die
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 14 июня 2010 г. 11:11, спустя 19 минут 22 секунды

    еее, работа пошла, так что вот: если все бибилиотеки поключены, а проект не линкуется, смотрите на соответсвие архитектуры используемых dll и создаваемого приложения, вижуал студия по этому поводу почему-то никаких ругательств не выдаёт…
    Work, buy, consume, die
  • mario

    Сообщения: ? Репутация: N Группа: Джедаи

    Spritz 14 июня 2010 г. 11:13, спустя 2 минуты 33 секунды

    Ура! Ура! УРа!:)
  • phpdude

    Сообщения: 26618 Репутация: N Группа: в ухо

    Spritz 15 июня 2010 г. 8:03, спустя 20 часов 50 минут 5 секунд


    еее, работа пошла, так что вот: если все бибилиотеки поключены, а проект не линкуется, смотрите на соответсвие архитектуры используемых dll и создаваемого приложения, вижуал студия по этому поводу почему-то никаких ругательств не выдаёт…
    уху, недавно так наебался с драйвером скл сервера компакт едишн, под 64 нихуя не ругалось при компиляции, но как по расписанию крашилось в дебагер при первом скл запросе, гвооря мол &quot;ебана, чото не то&quot; ))))))))))

    полвечера потерял, пока случайно гдето не наткнулся на камент в виде &quot;проверьте архитектуры&quot;, памятник тому человеку)
    Сапожник без сапог

Пожалуйста, авторизуйтесь, чтобы написать комментарий!