Я пытаюсь скомпилировать программу, использующую библиотеки HDF4. Я установил HDF4 на свой компьютер в /usr/local/ и убедился, что все необходимые скрипты, включаемые файлы и библиотеки установлены и все переменные среды установлены правильно. Я создал Makefile, который компилирует два моих C-файла в объектные файлы, а затем связывает их вместе. Когда я компилирую первый файл C, «readHDFfuncs.c», компилятор сообщает мне, что все вызываемые функции HDF4 не были объявлены. Этого не должно происходить, потому что мой компилятор h4cc правильно включает правильный каталог.
Я установил для команд h4cc значение -echo и отследил выполнение компиляции. Вроде все правильно, но объявления функций почему-то не проходят. h4cc — это оболочка gcc, ее основная функция — обрабатывать включаемые пути.
Я создал github, чтобы показать вам файлы.
https://github.com/LandonClipp/HDFhelp/tree/master
Включены выходные данные моей команды make (которая, как вы помните, включает опцию -echo для h4cc), сам Makefile, два моих C-файла, заголовочный файл и содержимое моей директории include. Я действительно ненавижу сбрасывать все это на людей и просить о решении, но я потратил много времени, пытаясь понять это, и я был бы очень признателен, если бы кто-нибудь мог указать на что-нибудь, что они видят. Спасибо!