Обсуждение: c++, g++, gcc под Linux
Здравствуйте господа программисты, Мир всем. Вопрос людям, кто пишет на c++, g++, gcc под Linux. Подскажите пожалуйста, какой лучше использовать интерфейс подключения к PostgreSQL серверу? Задача: 1. Чтобы приложение могло свободно работать и под Gnom и GTK (в будущем приложение будет не только консольное) любой современной сборке Linux. Сейчас хочу написать только консольное приложение. Чтобы конечный пользователь при запуске не устанавливал кучу дополнительных библиотек. Чтобы для конечного пользователя было все максимально комфортно. 2. Желательно чтобы тип подключения можно было использовать для работы с другими базами данных. (это не обязательный пункт, но в будущем желателен). Вроде бы напрашивается UnixODBC, но т.к. у меня нет опыта то прошу расскажите кто, что использует? Расскажите о своем опыте, может подводные камни есть. P.S. Если в данной конференции обсуждают только синтаксис PostgreSQL то прошу меня простить, что мой вопрос не в кассу и прошу меня направить в нужную конференцию. -- С уважением, Info mailto:info@midisa.org
Здравствуйте ! > > Вопрос людям, кто пишет на c++, g++, gcc под Linux. > Подскажите пожалуйста, какой лучше использовать интерфейс подключения > к PostgreSQL серверу? Я использую libpq для подсоединения к БД и QT для графического интерфейса (gui). Для gui можно использовать также Gtk+. > > Задача: > 1. Чтобы приложение могло свободно работать и под Gnom и GTK (в > будущем приложение будет не только консольное) любой современной > сборке Linux. Сейчас хочу написать > только консольное приложение. Чтобы конечный пользователь при запуске > не устанавливал кучу дополнительных библиотек. Чтобы для конечного > пользователя было все максимально комфортно. Если приложение консольное, то это не важно какая у конечного пользователя графическая среда. -- Best regards, Sincerely yours, Yuriy Rusinov.
Здравствуйте, Спасибо что нашли время написать ответ на мой вопрос. В течении продолжительного времени (2 месяца) качал кучу примеров но не один не смог собрать. То заголовочных файлов не хватает, то половины функций, которые есть в примерах. Вы бы не могли мне дать самый простой пример _подключения_ к базе данных с использованием библиотеки libpq. В остальном (думаю) разберусь сам. Мне главное понять какие заголовочные файлы нужно подключать к проекту. И так же попутный вопрос... Простите если он покажется глупым. После сборки он прилинкует эту библиотеку "libpq" или мне ее нужно будет "таскать" с моим проектом? Я начинающий программист системы Linux по этому пока "плаваю" в некоторых вопросах. Для сборки проекта я использую NetBeans IDE 6.8 (Ubuntu 10.4). Если есть другие (более лучшие среды разработки), подскажите пожалуйста. Конечная моя цель писать универсальные проекты, которые можно будет собирать под популярными OS (в основном Linux). Студию 2008 от Майкрософт прошу не рекомендовать, у меня от нее аллергия (надеюсь на ваше понимание). Очень буду благодарен за Вашу помощь. Всех Вам благ. Вы писали 1 июня 2010 г., 15:42:17: > Здравствуйте ! >> >> Вопрос людям, кто пишет на c++, g++, gcc под Linux. >> Подскажите пожалуйста, какой лучше использовать интерфейс подключения >> к PostgreSQL серверу? > Я использую libpq для подсоединения к БД и QT для графического > интерфейса (gui). Для gui можно использовать также Gtk+. >> >> Задача: >> 1. Чтобы приложение могло свободно работать и под Gnom и GTK (в >> будущем приложение будет не только консольное) любой современной >> сборке Linux. Сейчас хочу написать >> только консольное приложение. Чтобы конечный пользователь при запуске >> не устанавливал кучу дополнительных библиотек. Чтобы для конечного >> пользователя было все максимально комфортно. > Если приложение консольное, то это не важно какая у конечного > пользователя графическая среда. -- С уважением, Info mailto:info@midisa.org
info@midisa.org writes: > Вы бы не могли мне дать самый простой пример _подключения_ к базе > данных с использованием библиотеки libpq. В остальном (думаю) > разберусь сам. Мне главное понять какие заголовочные файлы нужно > подключать к проекту. У PostgreSQL очень хорошая документация: http://www.postgresql.org/docs/current/static/ там есть ответ и на этот вопрос, в частности см. пункты: 30.18. Behavior in Threaded Programs 30.19. Building libpq Programs 30.20. Example Programs Помимо этого у, например, Qt есть своя подсистема работы с базами данных: http://doc.qt.nokia.com/4.7-snapshot/qsqldatabase.html#details > После сборки он прилинкует эту библиотеку "libpq" или мне ее нужно > будет "таскать" с моим проектом? Я начинающий программист системы > Linux по этому пока "плаваю" в некоторых вопросах. Когда Вы будете делать пакет для распространения своей программы, Вы просто укажете в нём что для работы требуется libpq и пакетный менеджер (это программа такая) или администратор сам всё сделает что нужно при установке. -- С уважением, Сергей Бурладян
Добрый день господа. Помогите настроить Netbeans для работы с базой данных Postgresql. Читаю и делаю как написано здесь: http://www.postgresql.org/docs/current/static/libpq-build.html Вот мои действия: Создал обычный проект c++. Добавил пути Сервис - Настройки - С++ - Помошник по работе с кодом - С++ (а так же Си) /usr/include/postgresql они у меня здесь лежат. тут же лежит файл libpq-fe.h Далее захожу в свойство проекта. В дополнительные параметры компилятора добавляю: `pg_config --includedir` В дополнительные параметры компоновщика добавляю: `pg_config --libdir` Пытаюсь создать проект: #include <stdio.h> #include <string.h> #include <stdlib.h> #include <libpq-fe.h> int main(int argc, char**argv) { const char *conninfo; PGconn *conn; PGresult *res; int i; // Prints arguments printf("Arguments:\n"); for (i = 0; i < argc; i++) { printf("%i: %s\n", i, argv[i]); } return 0; } Он мне выдает: "/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= .build-conf src/args.c:33:22: warning: libpq-fe.h: Нет такого файла или каталога .... дальше идет куча ошибок. Как написано в ссылке, то компилятор не видит директорию include. Не пойму что не так. Ранее писал под винду, мне не приходилось указывать пораметры компилятора. Там все работало из коробки, даже не задумывался над этим. Помогите мне настроить netbeans для работы с Postgres. Буду вам признателен. Спасибо.
всем спасибо вопрос снят. сам разобрался. 06.08.2010 18:32, Dmitry Kruglov пишет: > Добрый день господа. > > Помогите настроить Netbeans для работы с базой данных Postgresql. > > Читаю и делаю как написано здесь: > http://www.postgresql.org/docs/current/static/libpq-build.html > > Вот мои действия: > > Создал обычный проект c++. > > Добавил пути Сервис - Настройки - С++ - Помошник по работе с кодом - С++ > (а так же Си) > /usr/include/postgresql они у меня здесь лежат. тут же лежит файл libpq-fe.h > Далее захожу в свойство проекта. > > В дополнительные параметры компилятора добавляю: `pg_config --includedir` > В дополнительные параметры компоновщика добавляю: `pg_config --libdir` > > > Пытаюсь создать проект: > > #include <stdio.h> > #include <string.h> > #include <stdlib.h> > #include <libpq-fe.h> > > int main(int argc, char**argv) > { > > const char *conninfo; > PGconn *conn; > PGresult *res; > > int i; > // Prints arguments > printf("Arguments:\n"); > for (i = 0; i < argc; i++) { > printf("%i: %s\n", i, argv[i]); > } > > return 0; > } > > Он мне выдает: > "/usr/bin/make" -f nbproject/Makefile-Debug.mk QMAKE= SUBPROJECTS= > .build-conf > src/args.c:33:22: warning: libpq-fe.h: Нет такого файла или каталога > .... дальше идет куча ошибок. Как написано в ссылке, то компилятор не > видит директорию include. > Не пойму что не так. Ранее писал под винду, мне не приходилось указывать > пораметры компилятора. Там все работало из коробки, даже не задумывался > над этим. > > Помогите мне настроить netbeans для работы с Postgres. > Буду вам признателен. > Спасибо. > >