Как да използвате sqlite3.c и sqlite3.h в проекта на eclipse C/C++

Опитвам се да използвам амалгамирана версия на sqlite3.c и sqlite3.h в моя C/C++ проект. Има код както на C, така и на C++. Използвам eclipse IDE в UBUNTU 12.04.

Сега проблемът ми е, че след като включих sqlite3.h в моя файл, където имам нужда от sqlite3.c функции и добавих библиотеки ld и pthread в линкера, все още получавам грешки и не мога да изградя проекта.

Това е странно и не трябва да се случва. Моля, разгледайте следните екранни снимки, които обясняват моя проблем.

Моментна снимка на проекта

************************************************************************************

Моментна снимка на грешки

************************************************************************************

Моментна снимка на включените библиотеки

какво ми липсва

Моля помогнете! Благодаря


person VinayChoudhary99    schedule 13.12.2012    source източник
comment
Не мога да видя екранните снимки.   -  person ScoPi    schedule 13.12.2012
comment
@ScoPi - Звучи като личен проблем... Виждам ги.   -  person Mike    schedule 13.12.2012
comment
Моята мрежа блокира мястото, където той хоства изображенията. Просто копирайте и поставете вашите грешки, VinayChoudhary99.   -  person ScoPi    schedule 13.12.2012


Отговори (1)


Уверете се, че библиотеката pthread е свързана преди библиотеката dl.

С други думи, вашата команда на компилатора (както е генерирана от Eclipse) трябва да бъде:

gcc shell.c sqlite3.c -lpthread -ldl

и не

gcc shell.c sqlite3.c -ldl -lpthread

Вижте тук за правилен команден ред:

http://www.sqlite.org/howtocompile.html

person user1284631    schedule 13.12.2012
comment
Здравейте, имам нужда само от файлове sqlite3.c и sqlite3.h. Освен това, тъй като използвам eclipse за изграждане, как да се уверя, че някои файлове са изградени с помощта на определени библиотеки? - person VinayChoudhary99; 13.12.2012
comment
@VinayChoudhary99: за момента просто добавете dl и pthread kibrary към Eclipse в ОБРАТЕН РЕД, отколкото направихте. - person user1284631; 14.12.2012