Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > C/C++: Общие вопросы > настройка с++


Автор: shuttle 2.6.2010, 08:02
пишу заголовочник так 
Код

#include "Engine.h"

все нормально

теперь
Код

#include <Engine.h>


говорит не могу найти файл, файл находится в каталоге с проектом. 
Если заголовочник написан в угловых скобках, то он же ищется в кталогах где лежат хеадеры (эти каталоги прописаны в Tools->Options->VC++Directories)? если он там не находится то должен искаться в каталоге проекта. Так или нет, и если так то как это настроить.

Автор: mrbrooks 2.6.2010, 08:14
Код
    
#include "Engine.h"

заголовочник ищется в корневом каталоге

Код

#include <Engine.h>

заголовочник ищется в директориях описанных в переменной окружения PATH (win)

Автор: shuttle 2.6.2010, 09:01
Цитата

заголовочник ищется в директориях описанных в переменной окружения PATH (win) 


где ее можно просмотреть/изменить?

Автор: Cheloveck 2.6.2010, 09:13
Цитата(mrbrooks @  2.6.2010,  08:14 Найти цитируемый пост)
1:
    
#include <Engine.h>

заголовочник ищется в директориях описанных в переменной окружения PATH (win) 

Это с каких таких пор оно в PATH ищет? Оно ищет в стандартных каталогах, указанных в настройках компилятора и в командной строке компилятора.

Автор: mrbrooks 2.6.2010, 09:53
Цитата(Cheloveck @  2.6.2010,  10:13 Найти цитируемый пост)
Это с каких таких пор оно в PATH ищет?

С тех самых.

Цитата

Microsoft Specific
To locate includable source files, the preprocessor first searches the directories specified by the /I compiler option. If the /I option is not present or fails, the preprocessor uses the INCLUDE environment variable to find any include files within angle brackets. The INCLUDE environment variable and /I compiler option can contain multiple paths separated by semicolons (;). If more than one directory appears as part of the /I option or within the INCLUDE environment variable, the preprocessor searches them in the order in which they appear.


Добавлено через 11 минут и 19 секунд
зы. я про VC++

Автор: Cheloveck 2.6.2010, 10:18
Цитата(mrbrooks @  2.6.2010,  09:53 Найти цитируемый пост)
Цитата

Microsoft Specific
To locate includable source files, the preprocessor first searches the directories specified by the /I compiler option. If the /I option is not present or fails, the preprocessor uses the INCLUDE environment variable to find any include files within angle brackets. The INCLUDE environment variable and /I compiler option can contain multiple paths separated by semicolons (;). If more than one directory appears as part of the /I option or within the INCLUDE environment variable, the preprocessor searches them in the order in which they appear.

И где тут про PATH?

Автор: mrbrooks 2.6.2010, 10:27
Цитата

environment variable

как бэ намекает


Автор: shuttle 2.6.2010, 10:38
где находится compiler option

Автор: djamshud 2.6.2010, 10:42
mrbrooks, там про env INCLUDE а не PATH.

shuttle, в настройках проекта.

Автор: mrbrooks 2.6.2010, 10:47
мда. кажется я отстал от жизни:

во.
Цитата

#include "MyFile.hpp"

The preprocessor searches for include files in the following order:

   1. In the same directory as the file that contains the #include statement.
   2. In the directories of any previously opened include files in the reverse order in which they were opened. The search starts from the directory of the include file that was opened last and continues through the directory of the include file that was opened first.
   3. Along the path specified by each /I compiler option.
   4. Along the paths specified by the INCLUDE environment variable.

#include <MyFile.hpp>

The preprocessor searches for include files in the following order:

   1. Along the path specified by each /I compiler option.
   2. When compiling from the command line, along the paths that are specified by the INCLUDE environment variable.


Автор: djamshud 2.6.2010, 10:53
Скажу, что это недостатейка, не претендующая на достоверность. PATH - стандартная env винды, путь до бинарников (и библиотек может быть, я уже не помню).

http://vlaurie.com/computers2/Articles/environment.htm

ЗЫ, недостатейка, потому что не сказано ни что за операционка, ни что за компилятор. Сказано, что язык Си. Но сам по себе си и понятия о env-ах не имеет.

Автор: mrbrooks 2.6.2010, 10:55
Ну то бишь PATH можно заменить на INCLUDE

Автор: djamshud 2.6.2010, 10:55
>Если имя файла задано в угловых скобках, то поиск файла производится в стандартных директориях операционной системы, задаваемых командой PATH.

wtf команда PATH? В общем в баню такие статьи.

Автор: mrbrooks 2.6.2010, 10:57
Цитата(djamshud @  2.6.2010,  11:53 Найти цитируемый пост)
Скажу, что это недостатейка, не претендующая на достоверность. PATH - стандартная env винды, путь до бинарников (и библиотек может быть, я уже не помню).

согласен - статья не аргумент

Автор: Dem_max 2.6.2010, 12:06
Пути к подключаемым файлам  и библиотекам задаются в настройках проекта, и виндовый PATH тут не причем.

Автор: mrbrooks 2.6.2010, 12:09
Dem_max, эм. ты тему то прочитал, прежде чем огласил истину?
ну там, что кто то не прав, etc?
или главное участие? smile

Автор: Dem_max 2.6.2010, 12:16
Я то прочитал.

Автор: mrbrooks 2.6.2010, 12:18
 smile 

Автор: djamshud 2.6.2010, 12:21
Мальчики, не ссорьтесь. Dem_max, я первым победил мистера брукса, не трожьте мои лавры.

//:)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)