![]() |
|
Модераторы: Daevaorn |
![]()
|
|
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Доброе время суток.
Компилирую вместе со своим проектом стороннюю библиотеку - она подключает свои же header-файлы (которые лежат в той же папке с .c-файлами) как #include <some_file.h>. Как через -Irelative_path/library или иным способом объявить относительный путь для поиска файлов, подключаемых через <>? Это сообщение отредактировал(а) KaraKum - 20.4.2010, 16:53 |
|||
|
||||
| djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 8 Всего: 39 |
Вы сами ответили на свой вопрос:).
-------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Если вы имеете в виду -Irelative_path/library, то это не решение.
Ситуация такова: - исходники проекта находятся в папке path_to_project/project/src - исходники подключаемой библиотеки (компилируемой в проекте) находятся в папке path_to_project/project/src/goocanvas - все библиотечные исходники подключают файлы как #include <goocanvas_something.h> Если включить опцию -Ipath_to_project/project/src/goocanvas, то всё верно, НО проект находится в СВН и у всех пути (path_to_project) к проекту разные, но опции -I./, -I., -I./src, -I./src/goocanvas и так далее не работают. Это сообщение отредактировал(а) KaraKum - 20.4.2010, 17:21 |
|||
|
||||
| djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 8 Всего: 39 |
Делайте рабочей директорий компилятора (к примеру размещайте там Makefile) path_to_project/project. Тогда -Isrc/goocanvas сработает (это утверждение точно верно для GCC, на других же компиляторах нужно проверять - я ими не пользуюсь).
Upd: Хотел выложить простой пример для Linux/GCC, но форум ругается на tgz... "Вы не можете загружать такой тип файлов" Это сообщение отредактировал(а) djamshud - 20.4.2010, 18:50 -------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Компилятор "g++" под Linux'ом - метод -Isrc/goocanvas не работает :( .
P.S. Попробуйте загрузить сюда просто .tar-файл. Это сообщение отредактировал(а) KaraKum - 21.4.2010, 09:33 |
|||
|
||||
| KOHCEPBATOP |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 44 Регистрация: 21.4.2010 Репутация: нет Всего: 1 |
||||
|
||||
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
||||
|
||||
| djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 8 Всего: 39 |
-------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
| jhonyxakep |
|
|||
![]() Divide Et Impera ![]() ![]() Профиль Группа: Участник Сообщений: 983 Регистрация: 7.4.2009 Где: Что, Когда? Репутация: нет Всего: 8 |
KaraKum, может вы про это?
|
|||
|
||||
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Пример прекрасно работает. Я свой проект компилирую через KDevelop и флаги -I... задаю в Makefile.am (пробовал и в INCLUDES и в project_CPPFLAGS) - возможно причина в этом, но всё-равно не понимаю почему - ведь эти параметры вроде передаются напрямую компилятору. |
|||
|
||||
| djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 8 Всего: 39 |
KaraKum, от KDevelop отказался именно по причине, что не смог нормально управлять процессом компиляции. В нынешней версии он вроде бы уже умеет работать с внешним Makefile, но я пока не тестировал.
-------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
| KaraKum |
|
||||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Вообще все файлы, которые библиотека инклудит лежат в той же папке что сама библиотека |
||||
|
|||||
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
А в пользу какого IDE произошёл отказ? Eclipse, Dev-C++? |
|||
|
||||
| djamshud |
|
|||
![]() Пердупержденный ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1655 Регистрация: 23.11.2009 Репутация: 8 Всего: 39 |
kate + make
-------------------- 'Cuz I never walk away from what I know is right Alice Cooper - Freedom |
|||
|
||||
| KaraKum |
|
|||
|
Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 640 Регистрация: 3.12.2007 Репутация: 1 Всего: 1 |
Оригинально
Спасибо за ответы. Проблема, можно сказать, решена. Вопрос отмечен как решённый. |
|||
|
||||
![]()
|
| Правила форума "С++:Общие вопросы" | |
|
|
Добро пожаловать!
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Earnest Daevaorn |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | C/C++: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |