Основы программирования в Linux
Шрифт:
Если вам нужно написать программу для коллективного использования, при выбранных степени соответствия стандарту и типах предупреждений компилятора, которые вы считаете достаточными, очень важно затратить немного больше усилий и добиться компиляции вашего кода без каких-либо предупреждений вообще. Если вы допустите наличие некоторых предупреждений и привыкните их игнорировать, в один прекрасный день может появиться более серьезное предупреждение, которое вы рискуете пропустить. Если ваш программный код всегда компилируется без предупреждающих сообщений, новое предупреждение неизбежно привлечет ваше внимание. Компиляция программного кода без предупреждений — полезная привычка, которую стоит взять на вооружение.
Приведенные далее опции передаются gcc в командной строке; мы перечисляем здесь только самые важные из них.
•
•
•
Существуют константы (
Эти опции передаются компилятору из командной строки. И снова мы перечислим лишь основные, полный список можно найти в интерактивном справочном руководстве gcc.
Существует еще огромное множество дополнительных опций предупреждений, все подробности см. на Web-страницах gcc. В основном мы рекомендуем применять
Интерфейсы и Linux Standards Base
Теперь мы собираемся подняться на уровень выше и перейти от программного кода на языке С к рассмотрению интерфейсов (системных функций), предоставляемых операционной системой. У этого уровня стандартизации есть разные составляющие: функции, предоставляемые библиотеками, и системные вызовы, реализованные операционной системой на низком уровне. И у тех, и у других есть два уровня детализации: какие интерфейсы представлены и определение того, что делает каждый интерфейс.
Определяющий документ в этой области для ОС Linux — Linux Standards Base (LSB, стандарты операционных систем на базе Linux), который можно найти на Web-сайтах http://mvw.linuxbase.org или http://www.linux-foundation.org/en/LSB. Уже выпущено несколько версий стандартов, и работа продолжается.
Список дистрибутивов, прошедших сертификацию, можно найти по адресу http://www.linux-foundation.org/en/Products. Сертифицированы разные версии Red Hat, SUSE и Ubuntu, но помните о том, что после выпуска дистрибутива до момента сертификации должно пройти некоторое время. На Web-сайте есть список дистрибутивов, проходящих тестирование или только нуждающихся в некоторых обновлениях для того, чтобы пройти сертификационные испытания.
Газлайтер. Том 23
23. История Телепата
Фантастика:
боевая фантастика
попаданцы
аниме
рейтинг книги
Последний Паладин. Том 13
13. Путь Паладина
Фантастика:
городское фэнтези
попаданцы
аниме
рейтинг книги
Монстр из прошлого тысячелетия
5. Соприкосновение миров
Фантастика:
попаданцы
аниме
фэнтези
рейтинг книги
Сокровище
9. Дирк Питт
Детективы:
боевики
рейтинг книги
Егерь. Системный зверолов
1. Зверолов
Фантастика:
рпг
уся
фэнтези
фантастика: прочее
попаданцы
рейтинг книги
Город гибели
Фантастика:
ужасы и мистика
мистика
рейтинг книги
Война магов
6. Князь
Фантастика:
фэнтези
альтернативная история
рейтинг книги
Я все еще царь. Книга XXXI
31. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
рейтинг книги
Чужой ребенок
1. Чужие люди
Любовные романы:
современные любовные романы
рейтинг книги
Властелин Севера
3. Саксонские хроники
Приключения:
исторические приключения
рейтинг книги
Егерь. Сердце стаи. Книга 5
5. Зверолов
Фантастика:
рпг
фэнтези
фантастика: прочее
попаданцы
рейтинг книги
Первый среди равных. Книга X
10. Первый среди Равных
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
рейтинг книги
Дело чести
12. Хонор Харрингтон
Фантастика:
космическая фантастика
рейтинг книги
Симфонии
Поэзия:
поэзия
рейтинг книги