420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
1

G++.exe путь к *.h

04.06.2014, 23:17. Показов 3322. Ответов 4
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Учусь работать в консоли с g++.exe (из MinGW). В с++ новичок. Перехожу с явы (и Делфи) - h-файлы для меня нечто новое и малопонятное.
Неожиданная проблема: Компилятор не видит H-файл из папки проекта!

так НЕ видит:
C
1
#include <log1.h>
так ВИДИТ:
C
1
#include <d:\mini\log1.h>
Почему нужно указывать полный путь к папке проекта???

Компилирую так (buil.bat):
Bash
1
2
3
d:
cd d:\MinGW\bin\
g++.exe d:\mini\*.cpp -o d:\mini\mini.exe -L"d:\mini\"
Версия компилятора:
g++.exe (GCC) 4.8.1

Ошибка:
d:\mini\main.cpp:8:18: fatal error: log1.h: No such file or directory
#include <log1.h>
^
compilation terminated.
0
Лучшие ответы (1)
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.06.2014, 23:17
Ответы с готовыми решениями:

Как узнать в программе путь к EXE файлу?
Товарищи, поиогите плз. Как узнать в программе путь к исполняемому файлу.

Как прописать путь к PATH? Ошибка Error spawning cl.exe
Для сдачи лаб в универе, нужно в ретро среде разработки код скомпилировать, получается вот что...

Найти и вывести путь к notepad.exe и calc.exe
Создать командный файл find.bat, который ищет в системных каталогах и выводит на экран полное...

Путь к .exe
База написана на FoxPro. Скопировал эту базу на другой компьютер (перед этим установив Visual...

4
Неэпический
17869 / 10634 / 2054
Регистрация: 27.09.2012
Сообщений: 26,736
Записей в блоге: 1
04.06.2014, 23:30 2
Цитата Сообщение от Tester64 Посмотреть сообщение
H-файл из папки проекта!
имя в кавычки
C++
1
#include "log1.h"
Из стандарта:
16.2/2
A preprocessing directive of the form
C
1
#include <h-char-sequence> new-line
searches a sequence of implementation-defined places for a header identified uniquely by the specified sequence between the < and > delimiters, and causes the replacement of that directive by the entire contents of the header. How the places are specified or the header identified is implementation-defined.

16.2/3
A preprocessing directive of the form
C
1
#include "q-char-sequence" new-line
causes the replacement of that directive by the entire contents of the source file identified by the specified sequence between the " delimiters. The named source file is searched for in an implementation-defined manner. If this search is not supported, or if the search fails, the directive is reprocessed as if it read
C
1
#include <h-char-sequence> new-line
with the identical contained sequence (including > characters, if any) from the original directive.
0
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
08.06.2014, 07:05  [ТС] 3
Неа! ошибка оказалась в нехватке ключа -I"d:\mini\" в компиляторе!
Компилятор успешно видит и
#include <log1.h>
и
#include "log1.h"
0
327 / 230 / 55
Регистрация: 30.05.2014
Сообщений: 682
08.06.2014, 08:11 4
Лучший ответ Сообщение было отмечено Tester64 как решение

Решение

Цитата Сообщение от Tester64 Посмотреть сообщение
Неа! ошибка оказалась в нехватке ключа -I"d:\mini\" в компиляторе!
C++
1
#include <log1.h>
В таком варианте файл ищется по путям include файлов (перечисленных в -I)

C++
1
#include "log1.h"
В таком варианте файл ищется сначала в каталоге .cpp файла, а потом по путям include файлов.

И в стандарте это написано.
1
420 / 357 / 47
Регистрация: 22.05.2013
Сообщений: 2,518
08.06.2014, 09:04  [ТС] 5
спасибо! попробую разницу... Я сначала нашел ключ -I и у меня заработало... а потом попробовал кавычки - разницы небыло... теперь попробую без ключа!
0
08.06.2014, 09:04
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.06.2014, 09:04
Помогаю со студенческими работами здесь

путь к exe
доброго времени суток , у меня такая проблемка , мне нужно получить имена и пути к exe всех...

Путь к ярлыку, а не к *exe
Есть ярлык на *exe. Мне нужно извлечь путь к *exe, а не к ярлыку... Подсобите пожалуйста делом да...

Путь к exe-файлу.
Ребят, как выдрать путь к exe файлу - запускнику проги? Если пользователь переместит программу в...

RAD Studio: путь к EXE
Доброго дня! При отладке: EXE кладется в папку Win32\Debug При релизе: EXE кладется в папку...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
5
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru