@demsee

Ошибка подключения заголовочного файла Си (в чем)?

Пытаюсь запустить файл copy.c (пример 4-1) из книги
Linux Programming Interface.

В главном файле copy.c подключается [написанный автором] файл "tlpi_hdr.h"
#include "tlpi_hdr.h"
в нём подключается [написанный автором] файл "error_functions.h"
#include "error_functions.h"

В файле "tlpi_hdr.h" нет функций - только макроопределения, а вот в самописном файле error_functions.с есть функции, которые используются в главном файле и при компиляции файла copy.c вылетают ошибки, связанные с использованием функций из файла "error_functions.h"

In function `main':
copy.c:(.text+0x67): undefined reference to `usageErr'
copy.c:(.text+0xb6): undefined reference to `errExit'
copy.c:(.text+0x122): undefined reference to `errExit'

Вопрос: как подключить заголовочный файл "error_functions.h" в главный файл copy.c

Ведь вроде заголовочные файлы должны использовать только функции из стандартной библиотеки, а файл error_functions.с не входит в стандартную библиотеку.
  • Вопрос задан
  • 1155 просмотров
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
при компиляции файла copy.c вылетают ошибки
In function `main':
copy.c:(.text+0x67): undefined reference to `usageErr'
copy.c:(.text+0xb6): undefined reference to `errExit'
copy.c:(.text+0x122): undefined reference to `errExit'

Это ошибки линковки а не компиляции. Файл copy.c скомпилировался нормально.
Чтобы слинковалось нужно линковать с error_functions.o:
gcc copy.c error_functions.c -o copy
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы