Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: #include <glib.h> почемуто не подключаэтса билд есенс есть а штоже делать?  (Прочитано 5958 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн merl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • Да Здравствует Великий Народ
    • Просмотр профиля
извините прошу помощи у мене в проекте не хочит подключатса библиотека glib.h говорит нет такого файла билд есенсес загрузил даже стандартныэ библиотеки с++ идут на ура а вот ета не хотит никак . :'( :'( :'( :'( :'( :'( :'( помогитеее... мне генератор случайных значений нуно

Оффлайн ziv

  • Активист
  • *
  • Сообщений: 403
    • Просмотр профиля
Думаю, что нужно установить libglib-dev.

Оффлайн merl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • Да Здравствует Великий Народ
    • Просмотр профиля

Оффлайн merl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • Да Здравствует Великий Народ
    • Просмотр профиля
почти получилось  :D вопервых оно мне дало не glib а libglib1.2
и щяс вот такая ситуацыя..... я пока новичьок в линуксе и темболиэ в програмировании может хто подскажыт как ево заставить работать

root@akva:/home/andriy/Desktop# locate glib.h
/usr/include/glib-1.2/glib.h
/usr/share/doc/libglib1.2-dev/glib.html
root@akva:/home/andriy/Desktop# g++ b.c -o b
b.c:4:18: error: glib.h: No such file or directory
b.c: In function ‘int main()’:
b.c:261: error: ‘guint32’ was not declared in this scope
b.c:261: error: ‘g_rand_new_with_seed’ was not declared in this scope

Оффлайн S.Tokarev

  • Активист
  • *
  • Сообщений: 415
    • Просмотр профиля
g++ -c b.c -o b -I/usr/include/glib-1.2

Или лучьше в самом файле b.c

#include <glib-1.2/glib.h>
« Последнее редактирование: 15 Июля 2008, 21:29:50 от S.Tokarev »

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Есть вариант из учебника по glib
g++ -c b.c -o b.o `pkg-config --cflags glib-2.0`
Естественно это только компиляция. для линковки потребуется что-то вроде
g++ -o b b.o `pkg-config --libs glib-2.0`

P.S. конечно 2.0 надо заменить на вашу версию

Оффлайн merl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • Да Здравствует Великий Народ
    • Просмотр профиля
ну спасибо щяс попробую  :coolsmiley: но вот интересно а нельзя ли библиотечку както прописать так штоб G++ или gcc автоматически подключали без дополнительного указания при компиляцыи. :coolsmiley:

Оффлайн merl

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
  • Да Здравствует Великий Народ
    • Просмотр профиля
ну всьо я полностью запутался файл который я щя компилю содержит только фактичиски
#include <glib.h>
когда я прошу систему найти glib она ево видит, когда в сишном файле или при компиляции я прописую к нему путь

root@akva:/home/andriy/Desktop# g++ b.c -o b.o -I/usr/include/glib-1.2
или в файле
#include <glib-1.2/glib.h>

получаю вот штото такоэ непонятное:

root@akva:/home/andriy/Desktop# g++ b.c -o b.o -I/usr/include/glib-1.2
У файлі включеному з b.c:4:
/usr/include/glib-1.2/glib.h:66:24: error: glibconfig.h: No such file or directory
In file included from b.c:4:
/usr/include/glib-1.2/glib.h:502: error: ‘gint32’ does not name a type
/usr/include/glib-1.2/glib.h:503: error: ‘guint32’ does not name a type
/usr/include/glib-1.2/glib.h:504: error: ‘guint32’ does not name a type
/usr/include/glib-1.2/glib.h:505: error: ‘gint32’ does not name a type
/usr/include/glib-1.2/glib.h:769: error: typedef ‘GDataForeachFunc’ is initialised (use __typeof__ instead)
/usr/include/glib-1.2/glib.h:769: error: ‘GQuark’ was not declared in this scope
/usr/include/glib-1.2/glib.h:770: error: expected primary-expression before ‘data’
/usr/include/glib-1.2/glib.h:771: error: expected primary-expression before ‘user_data’
/usr/include/glib-1.2/glib.h:840: error: ISO C++ forbids declaration of ‘guint8’ with no type
/usr/include/glib-1.2/glib.h:840: error: expected ‘;’ before ‘*’ token
/usr/include/glib-1.2/glib.h:1573: warning: ‘g_bit_nth_lsf’ initialised and declared ‘extern’
/usr/include/glib-1.2/glib.h:1573: error: ‘guint32’ was not declared in this scope
/usr/include/glib-1.2/glib.h:1574: error: expected primary-expression before ‘nth_bit’
/usr/include/glib-1.2/glib.h:1574: error: initializer expression list treated as compound expression
/usr/include/glib-1.2/glib.h:1591: warning: ‘g_bit_nth_msf’ initialised and declared ‘extern’
/usr/include/glib-1.2/glib.h:1591: error: ‘guint32’ was not declared in this scope
/usr/include/glib-1.2/glib.h:1592: error: expected primary-expression before ‘nth_bit’
/usr/include/glib-1.2/glib.h:1592: error: initializer expression list treated as compound expression
/usr/include/glib-1.2/glib.h:1737: error: expected ‘,’ or ‘...’ before ‘*’ token
/usr/include/glib-1.2/glib.h:1738: error: ISO C++ forbids declaration of ‘guint8’ with no type
/usr/include/glib-1.2/glib.h:1740: error: expected ‘,’ or ‘...’ before ‘*’ token
/usr/include/glib-1.2/glib.h:1741: error: ISO C++ forbids declaration of ‘guint8’ with no type
/usr/include/glib-1.2/glib.h:1773: error: ‘GQuark’ does not name a type
/usr/include/glib-1.2/glib.h:1774: error: ‘GQuark’ does not name a type
/usr/include/glib-1.2/glib.h:1775: error: ‘GQuark’ does not name a type
/usr/include/glib-1.2/glib.h:1776: error: ‘GQuark’ was not declared in this scope
/usr/include/glib-1.2/glib.h:1785: error: ‘GQuark’ has not been declared
/usr/include/glib-1.2/glib.h:1787: error: ‘GQuark’ has not been declared
/usr/include/glib-1.2/glib.h:1791: error: ‘GQuark’ has not been declared
/usr/include/glib-1.2/glib.h:1793: error: ‘GDataForeachFunc’ has not been declared
/usr/include/glib-1.2/glib.h:1816: error: ‘GQuark’ has not been declared
/usr/include/glib-1.2/glib.h:1818: error: ‘GQuark’ has not been declared
/usr/include/glib-1.2/glib.h:1822: error: ‘GQuark’ has not been declared
/usr/include/glib-1.2/glib.h:1824: error: ‘GDataForeachFunc’ has not been declared
/usr/include/glib-1.2/glib.h:2094: error: ‘guint16’ does not name a type
/usr/include/glib-1.2/glib.h:2095: error: ‘guint8’ does not name a type
/usr/include/glib-1.2/glib.h:2168: error: ‘GDateDay’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2169: error: expected primary-expression before ‘month’
/usr/include/glib-1.2/glib.h:2170: error: ‘GDateYear’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2170: error: initializer expression list treated as compound expression
/usr/include/glib-1.2/glib.h:2171: error: ‘guint32’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2180: error: ‘GDateDay’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2182: error: ‘GDateYear’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2184: error: ‘guint32’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2185: error: ‘GDateDay’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2186: error: expected primary-expression before ‘month’
/usr/include/glib-1.2/glib.h:2187: error: ‘GDateYear’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2187: error: initializer expression list treated as compound expression
/usr/include/glib-1.2/glib.h:2191: error: ‘GDateYear’ does not name a type
/usr/include/glib-1.2/glib.h:2192: error: ‘GDateDay’ does not name a type
/usr/include/glib-1.2/glib.h:2193: error: ‘guint32’ does not name a type
/usr/include/glib-1.2/glib.h:2219: error: ‘GTime’ has not been declared
/usr/include/glib-1.2/glib.h:2223: error: ‘GDateDay’ has not been declared
/usr/include/glib-1.2/glib.h:2225: error: ‘GDateYear’ has not been declared
/usr/include/glib-1.2/glib.h:2227: error: ‘GDateDay’ has not been declared
/usr/include/glib-1.2/glib.h:2229: error: ‘GDateYear’ has not been declared
/usr/include/glib-1.2/glib.h:2231: error: ‘guint32’ has not been declared
/usr/include/glib-1.2/glib.h:2252: error: ‘GDateYear’ was not declared in this scope
/usr/include/glib-1.2/glib.h:2253: error: ‘guint8’ does not name a type
/usr/include/glib-1.2/glib.h:2255: error: ‘guint8’ does not name a type
/usr/include/glib-1.2/glib.h:2256: error: ‘guint8’ does not name a type
/usr/include/glib-1.2/glib.h:2267: error: ‘gsize’ does not name a type
/usr/include/glib-1.2/glib.h:2354: error: expected `}' before ‘GLIB_SYSDEF_POLLIN’
/usr/include/glib-1.2/glib.h:2355: error: expected initializer before ‘GLIB_SYSDEF_POLLOUT’
/usr/include/glib-1.2/glib.h:2360: error: expected constructor, destructor, or type conversion before ‘;’ token
/usr/include/glib-1.2/glib.h:2370: error: ‘GIOCondition’ has not been declared
/usr/include/glib-1.2/glib.h:2388: error: ‘GIOCondition’ has not been declared
/usr/include/glib-1.2/glib.h:2412: error: ‘GIOCondition’ has not been declared
/usr/include/glib-1.2/glib.h:2417: error: ‘GIOCondition’ has not been declared
/usr/include/glib-1.2/glib.h:2823: error: expected declaration before ‘}’ token

или когда я делаю вот так то ето меня воще выбивает из понимания слова "почему"

root@akva:/home/andriy/Desktop# g++ -c  b.c -o b.o 'pkg-config --cflags glib1-2'
                                                                 
g++: pkg-config --cflags glib1-2: No such file or directory
b.c:4:18: error: glib.h: No such file or directory

 :'( :'( :'( :'( :'( :'( :'( я не настолько опытен штоб понять в чьом здесь што


Оффлайн Kwah

  • Старожил
  • *
  • Сообщений: 1442
  • Ubuntu 17.10
    • Просмотр профиля
Сдаётся мне, что библиотека, которую ты поставил старовата.
Цитировать
$ aptitude search libglib | grep dev
v   libglib-dev                     -                                           
p   libglib-java-dev                - GLib bindings for Java (development files)
p   libglib1.2-dev                  - The GLib library of C routines (developmen
p   libglib2.0-dev                  - Development files for the GLib library   
p   libglibmm-2.4-dev               - C++ wrapper for the GLib toolkit (developm

А под рутом сидеть - это теперь такой экстремальный вид спорта?

Оффлайн S.Tokarev

  • Активист
  • *
  • Сообщений: 415
    • Просмотр профиля
или когда я делаю вот так то ето меня воще выбивает из понимания слова "почему"

root@akva:/home/andriy/Desktop# g++ -c  b.c -o b.o 'pkg-config --cflags glib1-2'
                                                                 
Апострофы не в ту сторону. Надо не  ' , а `

Но правильно будет
g++ -c b.c -o b.o `glib-config --cflags`
g++ b.o -o b.exe `glib-config --libs`
« Последнее редактирование: 16 Июля 2008, 13:56:55 от S.Tokarev »

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
Дожились... люди "копипастить" не умеют.
Скоро реально на прилавках появятся книжки типа "Клавиатура для идиотов" или "Мышка для даунов"
нужный апостроф находится на букве Ё, прямо под клавишей Esc, слева от 1, над клавишей Tab. Набирается легко и просто без всяких шифтов и прочей лабуды в английской раскладке

 

Страница сгенерирована за 0.039 секунд. Запросов: 25.