Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
Форум программистов > *NIX системы: Общие вопросы > gcc |
Автор: Kefir 2.12.2006, 11:38 | ||
привет! тут такое дело - поставил я себе Crystal Space поиграться (sudo apt-get install crystalspace). всё вроде нормально, сырцы его ушли в /usr/include/crystalspace и лежат там себе преспокойненько. однако при компиляции файла (инклюды пишу а-ля #include "crystalspace/iutil/event.h" - прокатывает) выходят мсги типа
(не буду всё выписывать - и так всё понятно) т.е. в принципе всё понятно - сам Crystal Space в своих сырцах ссылается на свои хедеры и эти инклюды прописываются как iutil/event.h (без папки crystalspace). Вопрос собственно такой - как добавить ещё одну папку с хедерами (в частности /usr/include/crystalspace), чтобы gcc её тоже видел? (можно конечно cp -R заюзать, но хочется понять как сделать это по-человечески) |
Автор: MAKCim 2.12.2006, 12:02 | ||
|
Автор: powerfox 2.12.2006, 14:34 |
ln -s? |
Автор: GrayCardinal 2.12.2006, 15:27 |
powerfox, Нельзя тут ln -s ![]() |
Автор: powerfox 2.12.2006, 16:26 |
Почему? Я так делал. Классический пример - папка с ядром и его хедеры. |
Автор: Kefir 2.12.2006, 17:03 |
powerfox, тут надо каждый хедер ln'ить, поэтому не получится (ну получится, но некрасиво очень, я понимаю когда надо папку линковать, а так нет). |
Автор: bilbobagginz 2.12.2006, 23:47 |
Тов. Кефир, ответ вам был выслан товарищем MAKCim. обычно такие извр. библиотеки имеют шаблонный Makefile, в который добавляется иннклюдная папка как переменная относительно --prefix. также предполагаю объяснения должны имется в examples/samples - там думаю есть и примеры ( хмм ![]() пока. |
Автор: Kefir 2.12.2006, 23:55 |
Ой, да, товарищу MAKCimу спасибо за ответ, который всё уладил ![]() |
Автор: Dude03 3.12.2006, 00:33 |
А если указано "Следовать по sym-link'ам"? |
Автор: Kefir 3.12.2006, 14:08 |
Помечаю вопрос решённым. |
Автор: KoliaMor 7.2.2012, 18:29 | ||
Добрый день Помогите разобраться пробую компилировать простой код main.c
при компиляции gcc main.c выпадают сообщения main.c:1:19: error: stdio.h: No such file or directory main.c: In function 'main': main.c:6: warning: incompatible implicit declaration of built-in function 'printf' понятно что компилятор не нашел библиотеку, при попытке обновлений apt-get inctall libc6 пишет что все установлено libc6 is already the newest version. The following packages were automatically installed and are no longer required: manpages-dev linux-libc-dev manpages Use 'apt-get autoremove' to remove them. 0 upgraded, 0 newly installed, 0 to remove and 0 not upgraded. подскажите куда копать?) депазитарий debian находится на http://www.emdebian.org на самом диске в папке /usr/lib/ файл stdio.h отсутствует |
Автор: Фантом 7.2.2012, 19:32 |
Компилятор не нашел заголовочный файл stdio.h (который должен лежать в /usr/include/). А вот почему... |
Автор: KoliaMor 8.2.2012, 12:25 | ||
Такого файла нет, но почуму непонятно и как его туда добавить apt-get'ом? |
Автор: KoliaMor 8.2.2012, 14:53 |
При установке apt-get install libc-dev Reading package lists... Done Building dependency tree Reading state information... Done Note, selecting 'libc6-dev' instead of 'libc-dev' Some packages could not be installed. This may mean that you have requested an impossible situation or if you are using the unstable distribution that some required packages have not yet been created or been moved out of Incoming. The following information may help to resolve the situation: The following packages have unmet dependencies: libc6-dev : Depends: libc6 (= 2.11.3-2) but 2.13-25em1 is to be installed Depends: libc-dev-bin (= 2.11.3-2) but it is not going to be installed E: Broken packages как это побороть? |
Автор: Фантом 8.2.2012, 23:30 |
Там версии разные. По-видимому, надо сменить libc6 на более старую версию. P.S. Кстати, использование именно этого дистрибутива вызвано какими-то объективными причинами? Просто если нет, то проще будет начать с какого-либо более "стандартного" - хотя бы обычного Debian. |
Автор: KoliaMor 9.2.2012, 00:54 | ||||
А как это сделать безопасно, если удалю libc6 не ляжет ли система?
Дистрибутив собран под конкретный однопалатный компьютер, не мной, я собирать не умею =(, поэтому мне проще доставить недостающие компоненты.... |