Рейтинг:
0
Jochen Arndt
Вы должны сказать компилятору, где он должен искать включаемые файлы. Обычно это делается с помощью -I
параметр командной строки и переменные среды. Смотреть также Препроцессор C: Путь Поиска[^].
При использовании интегрированной среды разработки IDE, там обычно есть опция конфигурации, чтобы указать дополнительные пути (для текущего проекта и gobally для всех проектов). Добавьте туда путь к вашему СДЛ.ч файл.
Обратите внимание, что то же самое относится и к .библиотека библиотечные файлы,для которых также существуют параметры пути.
Member 13049206
Не подскажете, как это сделать? я не совсем понимаю, что ты говоришь
Jochen Arndt
Спросите себя: где хранится файл (полный путь)?
Выполнить в командной строке:
gcc-v /dev / null-o /dev / null
Указан ли путь (после "#include")?
Если нет, то компилятор не может найти файл. Поэтому вы должны сообщить компилятору о пути.
Самый простой способ сделать это-использовать IDE (Integrated Development Environment), которую вы используете. Поскольку вы не сказали нам, что вы используете, мы не можем помочь (из вашего изображения я вижу только, что вы используете компилятор GCC).
Ознакомьтесь с документацией IDE. Или поищите в интернете "& lt;name_of_ide> include path".
Моя проблема в том, что я не могу помочь вам с простым решением, потому что вы не дали нам какой-то важной информации:
- Какая ОС (Windows, Linux, Mac)
- Whih IDE (например, Visual Studio, CodeBlocks, Dev C++)
- Какой компилятор (я получил GCC из изображения)
Member 13049206
У меня есть windows 10, использующая код:: блоки 16.01 с GCC
Jochen Arndt
Видишь http://www.learncpp.com/cpp-tutorial/a3-using-libraries-with-codeblocks/
Member 13049206
Я думал, что сделал это, посмотрите на фотографии, что еще мне нужно сделать?
[^]
[^]
[^]
[^]
Jochen Arndt
И находится ли файл в одном из этих каталогов?
Обратите внимание также, что GCC исходит из мира Linux, где имена файлов чувствительны к регистру (на данный момент я не уверен, что это относится и к версии Windows).
В своем первоначальном вопросе вы используете
#включить "SDL. h"
а на приведенном выше снимке экрана:
#включить < SDL2/SDL. h>
Member 13049206
В основном я всегда использовала код #include &ЛТ;SDL2/SDL можно.ч&ГТ; , это единственный способ, я думаю , в ошибке написано директивой #Include "СДЛ.ч" ,я попытался изменить его, чтобы SDL2/SDL можно.ч как это на главной, но это все равно не сработает , да и файлы в каталоги, если они не были бы, вероятно, дать мне сообщение об ошибке при попытке включить-де-заголовки
Jochen Arndt
Вы получили ошибку при включении этого файла:
"фатальная ошибка: SDL. h: нет такого файла или каталога"
Но похоже, что это источник библиотеки.
Вы хотите построить библиотеку?
Это может потребовать различных шагов настройки и должно быть задокументировано на странице проекта SDL (как построить библиотеку с Windows)
Member 13049206
Я просто хочу, чтобы код работал.. что вы подразумеваете под постройкой библиотеки? есть ли другой способ, которым я мог бы скомпилироваться без получения этой ошибки?
Jochen Arndt
У меня нет доступа к вашему компьютеру и я точно не знаю, что вы делаете. Так что я могу только догадываться.
Вы компилируете фрагмент кода (откуда он у вас?) и получаете ошибку, которая, вероятно, связана с неправильной настройкой проекта.
Вы даже не показываете код или точное сообщение об ошибке, но загружаете некоторые изображения на внешние ссылки. Большинство пользователей здесь, которые могли бы ответить, не будут открывать такие ссылки на изображения.
Правильный способ решения таких проблем:
- Разместить соответствующие строки кода (сообщение об ошибке включает имя файла и номер строки)
- Показать полное сообщение об ошибке
- Дайте информацию об используемых ОС и инструментах
- С такими ошибками, как у вас, покажите соответствующий проект и конфигурацию инструмента. Здесь: пути для включения файлов и проекта make file
Я знаю, что вы новичок в программировании, но вы должны, по крайней мере, прочитать соответствующую дукментацию (здесь: IDE CodeBlocks), знать, что такое библиотеки и заголовочные файлы, а также как строится приложение C++ (этапы сборки предварительной обработки, компиляции и связывания). Без этих знаний вы не сможете понять ни одного решения, представленного здесь.
Member 13049206
Код-это просто то, что я собрал после прочтения SDL wiki.Я могу написать что угодно на SDL, но по какой-то причине не могу использовать image lib.. Вы рекомендуете открыть новый вопрос с более подробной информацией? сначала я не знал, потому что думал, что это просто ошибка.
Jochen Arndt
Пожалуйста, используйте зеленую ссылку "улучшить вопрос", чтобы отредактировать свой вопрос и добавить дополнительную информацию (ссылка отображается при перемещении мыши в правую нижнюю часть вопроса).