Компьютерный форум
Правила
Вернуться   Компьютерный форум > Форум программистов > Программирование под *nix > Общие вопросы программирования
Перезагрузить страницу Как добавить инклуды к Makefile
Закрытая тема
 
Опции темы Опции просмотра
  (#1 (permalink)) Старый
Vladimir the Red Sunny Vladimir the Red Sunny вне форума
Member
 
Сообщений: 4,232
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.05.2003
По умолчанию Как добавить инклуды к Makefile - 25.11.2006, 16:46

Написал тут мэйкфайл:

Код:
all:
    g++ -fPIC -c preved.cpp
    g++ -fPIC -c medved.cpp
    g++ -shared -o libpmdyn.so preved.o medved.o
    g++ -c main.cpp
    g++ main.o -L. -lpmdyn -o result
Просто повторил в нем все, что набирал в консоли. Работает.

Как добавить туда пути к библиотечным h-файлам? Т. е., вот я хочу в с++-файл добавить: #include "medved.h", который, к тому же, лежит не в этой директории, а где-нибудь в /root/mylibrary/include. Что нужно дописать в Makefile, чтобы оно его нашло?
  (#2 (permalink)) Старый
michael michael вне форума
Member
 
Сообщений: 969
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 08.08.2003
По умолчанию 25.11.2006, 18:51

Вообще-то этот путь в опциях компилятора указывается. Можно его какой-нибудь переменной присвоить, чтобы не повторяться:
Код:
INCPATH = -I"/root/mylibrary/include"
...
g++ -c $(INCPATH) main.cpp
...
  (#3 (permalink)) Старый
Vladimir the Red Sunny Vladimir the Red Sunny вне форума
Member
 
Сообщений: 4,232
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 15.05.2003
По умолчанию 26.11.2006, 11:10

Спасибо, получилось.

А как-нибудь можно этот путь засунуть в какой-нибудь конфиг g++, чтобы не указывать каждый раз в Makefile?
  (#4 (permalink)) Старый
madproger madproger вне форума
Новичок
 
Сообщений: 11
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 16.03.2006
По умолчанию 27.11.2006, 13:35

В принципе читай ниже, но я не уверен что это нужно делать, лучше пусть эта инфа будет в make-файле

Стандартные Директории Заголовочных Файлов (переменные окружения - можно прописать в .bash_profile

GCC_INCLUDE_DIR
означает одно и то же для родного и кросс- компиляторов. Это место, где GNU CC сохраняет свои личные заголовочные файлы, а также где GNU CC сохраняет фиксированные заголовочные файлы. Кросскомпилирующий GNU CC запускает fixincludes над заголовочными файлами в '$(tooldir)/include'. (Если заголовочные файлы кросскомпиляции должны быть зафиксированы, они должны быть установлены до построения GNU CC. Если заголовочные файлы кросскомпиляции уже доступны для ANSI C и GNU CC, ничего специально делать не нужно.)


GPLUS_INCLUDE_DIR
означает одно и то же для родного и кросс- компиляторов. Это место, где g++ смотрит в первую очередь, в поисках заголовочных файлов. libg++ устанавливает только машинонезависимые заголовочные файлы в этой директории.


LOCAL_INCLUDE_DIR
используется только для родного компилятора. Обычно это '/usr/local/include'. GNU CC просматривает эту директорию, так что пользователи могут устанавливать заголовочные файлы в '/usr/local/include'.


CROSS_INCLUDE_DIR
используется только для кросскомпилятора. GNU CC ничего здесь не устанавливает.
Ads
Закрытая тема

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблемы с makefile AD С/С++ 1 05.02.2012 22:58
Добавить память. les.2007 Любые вопросы от новичков 8 29.06.2011 19:41
Как добавить ядра????? Denis111 Процессоры 2 28.06.2011 06:52
Eclipse и Makefile как с ними работать c++ Eclipse 0 14.08.2004 03:20
Текст на RGB как добавить Dencraft Программирование графики 3 07.04.2004 09:31
Как добавить в реестр hex CTPELOK Visual C++ 0 27.02.2004 02:22
Как добавить VCL в dll Anonymous C++ Builder 1 11.07.2003 14:15
Как попросить tmake генерить дополнительны е -l* в Makefile Anonymous C++ на Unix 0 17.02.2003 10:28
Где найти инклуды и библиотеки DirectX 8.1 под Visual C++ Anonymous Visual C++ 3 17.11.2002 18:50
MAKEFILE - скрипт для всех программ компилирование кода Shunix Visual C++ 3 13.11.2002 11:57



Powered by vBulletin® Version 3.8.7
Copyright ©2000 - 2018, Jelsoft Enterprises Ltd.
Нardforum.ru - компьютерный форум и программирование, форум программистов