The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]




Версия для распечатки Пред. тема | След. тема
Новые ответы [ Отслеживать ]
Клиент на С для MYSQL не видит функции MYSQL., !*! DH, 27-Фев-04, 16:38  [смотреть все]
  • Клиент на С для MYSQL не видит функции MYSQL., !*! solov, 20:10 , 27-Фев-04 (1)
    • Клиент на С для MYSQL не видит функции MYSQL., !*! DH, 22:05 , 27-Фев-04 (2)
    • Клиент на С для MYSQL не видит функции MYSQL., !*! DS, 21:12 , 30-Апр-04 (3)
      >Тебе надо просто подключит все правильно. Где -lmysqlclient? Для того что-бы долго
      >не искать где у тебя лежат либы и инклуды с mysql
      >идет маленькая програмка mysql_config. Тебе остается только сделать следуещее
      >gcc -o one one.c 'mysql_config --cflags' 'mysql_config --libs'
      У меня на флаг 'mysql_config --libs' выводит следующее:
      /usr/bin/ld: cannot find -lmysqlclient
      collect2: ld returned 1 exit status
      Что делать? 8) Подскажите плз..
      >
      >
      >>Пробую програмить под Linux. Хочу поюзать мускул из сишки.
      >>Поставил мускул 4.1. - всё по дефолту.
      >>Запустил, проверил через mysql -u root mysql -p.
      >>Базы посоздавал, юзверей. Всё ок.
      >>
      >>Дошёл до с.
      >>Набил исходник - простой до невменяемости:
      >>//============= one.c =============
      >>#include <stdio.h>
      >>#include <mysql/mysql.h>
      >>static MYSQL *d_sql;
      >>int main()
      >>{
      >>  mysql_init(d_sql);
      >>  return 0;
      >>}
      >>//=================
      >>Make file сделал
      >>//========Makefile=========
      >>one: one.c
      >>        gсс -o one one.c
      >>
      >>//=================
      >>Самое интерестное.
      >>Делаю make и получается фигня.
      >>//========фигня=========
      >># make
      >>gсс -o one one.c
      >>/tmp/ccw5wJiJ.o: In function `main':
      >>/tmp/ccw5wJiJ.o(.text+0x10): undefined reference to `mysql_init'
      >>collect2: ld returned 1 exit status
      >>make: *** [one] Error 1
      >>//======================
      >>
      >>Насколько я знаю из сишки - он мне написал, что неопределена связь
      >>(реализация, тобишь) mysql_init.
      >>В mysql.h файле она есть - проверял.
      >>Так какого фига..........!!!!!!!!!!
      >>
      >>Вопрос по ходу - в h файлах - прототипы функций, а где
      >>в линухе хранятся реализации функций и как он связывает при компиляции!
      >>
      >>
      >>Заранее благодарен хоть на какую нибудь инфу!


      • Клиент на С для MYSQL не видит функции MYSQL., !*! solov, 11:50 , 01-Май-04 (4)
        • Клиент на С для MYSQL не видит функции MYSQL., !*! DS, 13:08 , 01-Май-04 (5)
          >На сколько я знаю mysqlclient.so должен лежать в /usr/lib/. Попробуй запустить в
          >консоле mysql если появится
          >mysql>
          >то эта либа точно есть. ищи ее с помощью find. Когда найдеш
          >тогда не забудь указать компилятору путь к либе -L / ....
          >-lmysqlclient. Ну а если ее у тебя нет тогда качай с
          >инета и копируй в /usr/lib
          делаю locate mysqlclient
          находит
          /usr/lib/mysql/libmysqlclient.so и еще несколько версий.

          делаю
          gcc -L/usr/include/mysql -L/usr/lib/mysql -llibmysqlclient.so proga.c
          gcc -L/usr/include/mysql -L/usr/lib/mysql -lmysqlclient.so proga.c
          gcc -L/usr/include/mysql -L/usr/lib/mysql -llibmysqlclient proga.c
          gcc -L/usr/include/mysql -L/usr/lib/mysql -llibmysqlclient_r.so.10.0.0 proga.c

          И всеравно пишет /usr/bin/ld: cannot find
          -llibmysqlclient.so и тп.
          collect2: ld returned 1 exit status
          Че делать? 8)

          П.С. С праздничокм. 8))))


          • Клиент на С для MYSQL не видит функции MYSQL., !*! DS, 20:48 , 01-Май-04 (6)
            Все разобрался..;)
            >>На сколько я знаю mysqlclient.so должен лежать в /usr/lib/. Попробуй запустить в
            >>консоле mysql если появится
            >>mysql>
            >>то эта либа точно есть. ищи ее с помощью find. Когда найдеш
            >>тогда не забудь указать компилятору путь к либе -L / ....
            >>-lmysqlclient. Ну а если ее у тебя нет тогда качай с
            >>инета и копируй в /usr/lib
            >делаю locate mysqlclient
            >находит
            >/usr/lib/mysql/libmysqlclient.so и еще несколько версий.
            >
            >делаю
            >gcc -L/usr/include/mysql -L/usr/lib/mysql -llibmysqlclient.so proga.c
            >gcc -L/usr/include/mysql -L/usr/lib/mysql -lmysqlclient.so proga.c
            >gcc -L/usr/include/mysql -L/usr/lib/mysql -llibmysqlclient proga.c
            >gcc -L/usr/include/mysql -L/usr/lib/mysql -llibmysqlclient_r.so.10.0.0 proga.c
            >
            >И всеравно пишет /usr/bin/ld: cannot find
            >-llibmysqlclient.so и тп.
            >collect2: ld returned 1 exit status
            >Че делать? 8)
            >
            >П.С. С праздничокм. 8))))





Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру