powered by simpleCommunicator - 2.0.56     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Не могу подключить Sqlite3 к Visual C++ 2008
11 сообщений из 11, страница 1 из 1
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450427
vkharseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Доброго времени суток.

Я новичек в Sqlite и у меня проблема. Стоит Visual C++ 2008, ОС Vista. Скачал архив с офф. сайта в нем 3 файла - sqlite3.h, sqlite3.c и sqlite3ext.h - написано для написания ПО хватит. При компиляции указанного кода:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
#include "stdio.h"
#include "conio.h"
#include "sqlite3.h"
#include "stdlib.h"

int data_callback(void *unused, int field_num, char **fields, char **field_names);

int data_callback(void *unused, int field_num, char **fields, char **field_names){
    for(int i =  0 ; i<field_num;i++)    {
        printf("%s = %s, ",field_names[i],fields[i]);
    }
    printf("\n");
    return  0 ;
}
int main(int argc, char* argv[]){
	sqlite3 *db = NULL;
	char *zErrMsg =  0 ;
	char *dbname="phbook.db";
	int resultdb;
	char *error_msg = NULL;
	char *sql;
	resultdb=sqlite3_open(dbname,&db);
	if(resultdb!= SQLITE_OK){
		printf("Can't open database: phbook.db\n");getch();
		sqlite3_close(db);
		exit( 1 );
	};
	sql = "create table clients(id int(5) primary key, name varchar(30))";
	resultdb=sqlite3_exec(db, sql, data_callback,  0 , &error_msg);
	if(resultdb!=SQLITE_OK) {
               printf("Error %d: %s\n", resultdb, error_msg);
               sqlite3_free(error_msg);
           };
	sqlite3_close(db);
	getch();
	return  0 ;
}
Появляються такие ошибки:
error LNK2019: ссылка на неразрешенный внешний символ _sqlite3_free в функции _main
error LNK2019: ссылка на неразрешенный внешний символ _sqlite3_exec в функции _main
error LNK2019: ссылка на неразрешенный внешний символ _sqlite3_close в функции _main
error LNK2019: ссылка на неразрешенный внешний символ _sqlite3_open в функции _main
fatal error LNK1120: 4 неразрешенных внешних элементов

Брал готовый пример с офф.сайта таже борода. Файлы лежат и в корне проекта и в VC\include\
Что даляю не так? Где еще нужно указать\прописать что бы можно было работать с БД. Может чего-то не хватает? Может сменить компиллятор? Заранее спасибо.
Модератор: Используйте тег/кнопку SRC
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450458
White Owl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkharseevЧто даляю не так? Где еще нужно указать\прописать что бы можно было работать с БД. Может чего-то не хватает?Прочитать школьный учебник, главу про модульное программирование. Узнать наконец для чего нужны объектные файлы и чем занимается линкер.

vkharseev Может сменить компиллятор?Правильно! Если поцарапал палец надо отрезать руку по локоть и пришить новую.
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450485
###
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkharseev,

sqlite3.c к проекту подключил?

White Owl,

Ну все когда-то были школярами, чего так на них наезжать-то?
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450498
MBG
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
MBG
Гость
###vkharseev,

sqlite3.c к проекту подключил?

White Owl,

Ну все когда-то были школярами, чего так на них наезжать-то?

Разве это наезд - написано в старом добром стиле рубрики "письма читателей" в журнале "Юность" :-)
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450502
vkharseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
как его подключить? как код .cpp? или #include <sqlite3.c>
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450506
vkharseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и попрошу без насмешек, я можно сказать только учусь...
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450517
vkharseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Дайте пожалуйста вразумительный ответ что мне нужно зделать что бы компилятор прохавал...
sqlite3.c подключал разными способами - количество ишибок возврастает до 106!
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450528
Фотография Dmitry Arefiev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1) Срочно учить C/C++ если не понимаешь структуры C/C++ программы.
C модули включаются в проект - т.е. компилируются, а далее объектные
модули подсовываются линкеру. Не #include !
2) Если что-то не получается, то телепатов здесь нет, что бы почуять
что ты делал и что же сказал компилятор. Говори - что делал и как
компилятор ругался.
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450561
vkharseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
в проекте в раздел "Файлы исходного кода"
внес скачаный с-шный код (sqlite.c), добавляю в начало #include "stdafx.h". вручную его компилирую - вываливается 2-3 экрана ошибок такого плана:

1>d:\документы\phone book\phone book\phone book\sqlite3.cpp(11806) : error C2440: =: невозможно преобразовать 'void *' в 'char *'
1> Для преобразования 'void*' к указателю на тип, не являющемуся 'void', требуется явное приведение
1>d:\документы\phone book\phone book\phone book\sqlite3.cpp(12500) : error C2440: =: невозможно преобразовать 'void *' в 'sqlite3_int64 *'
1> Для преобразования 'void*' к указателю на тип, не являющемуся 'void', требуется явное приведение
............................
1>d:\документы\phone book\phone book\phone book\sqlite3.cpp(19650) : error C2227: выражение слева от "->chain" должно указывать на тип класса, структуры или объединения либо на универсальный тип
1>d:\документы\phone book\phone book\phone book\sqlite3.cpp(19652) : error C2027: использование неопределенного типа "_ht"
1> d:\документы\phone book\phone book\phone book\sqlite3.cpp(19536): см. объявление '_ht'
1>d:\документы\phone book\phone book\phone book\sqlite3.cpp(19652) : error C2227: выражение слева от "->count" должно указывать на тип класса, структуры или объединения либо на универсальный тип
1>d:\документы\phone book\phone book\phone book\sqlite3.cpp(19737) : error C2664: insertElement: невозможно преобразовать параметр 2 из 'Hash::_ht *' в '_ht *'
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450591
Siemargl
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
не надо в sqlite.c добавлять всякую фигню. И переименовывать его в .cpp

Проект Win32 console app / Precompiled header off

Все отлично компилится VS2008
...
Рейтинг: 0 / 0
Не могу подключить Sqlite3 к Visual C++ 2008
    #36450623
vkharseev
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Siemarglне надо в sqlite.c добавлять всякую фигню. И переименовывать его в .cpp

Проект Win32 console app / Precompiled header off

Все отлично компилится VS2008

Огромное спасибо. Пересоздал проект при этом убрал птичку Precompiled header.
Сделал те же операции но не переименовывал в cpp и все заработало.
Отлака прошла успешно, БД создана и таблица добавлена...
...
Рейтинг: 0 / 0
11 сообщений из 11, страница 1 из 1
Форумы / SQLite [игнор отключен] [закрыт для гостей] / Не могу подключить Sqlite3 к Visual C++ 2008
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]