Sqlite undefined ссылка на ошибку sqlite3_open в Netbeans C ++ на Ubuntu, интеграция SQLite в Netbeans C ++ Ubuntu

Я пытаюсь использовать Sqlite в своем Netbeans C ++ и следую инструкциям здесь http://www.dreamincode.net/forums/topic/122300-sqlite-in-c/

Когда я его создаю, он дает мне неопределенные ссылки на `sqlite3_open ‘и другие функции sqlite3. Я включил sqlite3.h тоже. Что мне здесь не хватает?

Когда я добавил компоновщик в статическую библиотеку libsqlite3.a в свойствах проекта, мои неопределенные ссылочные ошибки исчезли, но теперь это дает мне

/usr/lib/libsqlite3.a(sqlite3.o): В функции pthreadMutexTry': /usr/lib/libsqlite3.a(sqlite3.o): In function pthreadMutexAlloc’: /usr/lib/libsqlite3.a(sqlite3.o ): В функции pthreadMutexAlloc': /usr/lib/libsqlite3.a(sqlite3.o): In function pthreadMutexAlloc’: /usr/lib/libsqlite3.a(sqlite3.o): В функции unixDlError': /usr/lib/libsqlite3.a(sqlite3.o): In function findLockInfo ‘: /usr/lib/libsqlite3.a(sqlite3.o): В функции findLockInfo': /usr/lib/libsqlite3.a(sqlite3.o): In function unixDlSym ‘: /usr/lib/libsqlite3.a(sqlite3.o): В функции unixDlClose': /usr/lib/libsqlite3.a(sqlite3.o): In function unixDlOpen ‘: collect2: ld возвращено 1 статус выхода make [2 ]: * [dist / Debug / GNU-Linux-x86 / cddb] Ошибка 1 make [1]: * [.build-conf] Ошибка 2: *** [.build-impl] Ошибка 2

И если я включаю sqlite3ext.h, я получаю main.cpp: 20: ошибка: «sqlite3_api» не был объявлен в этой области

(см. ниже EDIT)

Не уверен, как работает C ++ в NetBeans, но добавление libsqlite3.a выглядит довольно хорошо. Теперь, если у вас есть Makefile, вы можете отредактировать его и определить (или изменить) переменную LDFLAGS и передать ее в качестве опции для компоновщика …

SQLite в своей конфигурации по умолчанию должен связываться с libdl и libpthread , поэтому вам может понадобиться добавить -ldl -lpthread к вашим настройкам ссылок.

Например (если это возможно в NetBeans), добавьте это в свой Makefile:

 LDFLAGS= -ldl -lpthread 

В моих проектах я использую его так:

 target: $(OBJ) gcc $(LDFLAGS) $(OBJ) -o $@ 

РЕДАКТИРОВАТЬ :

На самом деле также возможно добавить параметры компоновщика в графический интерфейс, без редактирования файла Makefile вручную:

В подменю Configuration Properties -> Linker -> Command Line, просто добавьте -ldl -lpthread в «Дополнительные параметры» и перекомпилируйте свой проект.

Интеграция Sqlite в Netbeans на Linux
1) Synaptic Package Manager – установить libsqlite3-dev
2) Netbeans-> Your_Project Properties-> Linker-> Libraries-> Добавить библиотеку-> libsqlite3.a
3) #include sqlite3.h
Оно работает!