Обновление: у меня все заработало, проблема как-то связана с тем, что я запускал ее через emacs. Вместо этого я запустил make-файл из командной строки, и запустился pkg-config. После добавления пути к guile-2.0.pc с export PKG_CONFIG_PATH=/opt/local/lib/pkgconfig
все скомпилировалось и заработало нормально. Все еще не будет компилироваться через emacs, но я не хочу иметь с этим дело.
Я пытаюсь скомпилировать программу на C, но получаю сообщение об ошибке «pkg-config: command not found», но я почти уверен, что pkg-config установлен.
Ниже находится MAKEFILE
# Use GCC, if you have it installed.
CC=gcc
# Tell the C compiler where to find <libguile.h>
CFLAGS=`pkg-config --cflags guile-2.0`
# Tell the linker what libraries to use and where to find them.
LIBS=`pkg-config --libs guile-2.0`
simple-guile: simple-guile.o
${CC} simple-guile.o ${LIBS} -o simple-guile
simple-guile.o: test.c
${CC} -c ${CFLAGS} test.c
Ниже приведено сообщение об ошибке (re: вторая ошибка, я думаю, что если я смогу решить эту проблему, файл libguile.h будет найден)
make
gcc -c `pkg-config --cflags guile-2.0` test.c
/bin/sh: pkg-config: command not found
test.c:2:11: fatal error: 'libguile.h' file not found
#include <libguile.h>
^
1 error generated.
make: *** [simple-guile.o] Error 1
Я установил pkg-config с помощью
brew install pkg-config
Установка прошла успешно?...
Jeffs-iMac:~ Jeff$ which pkg-config
/opt/local/bin/pkg-config
Если это уместно, это должен быть тот же каталог, в котором находится guile:
Jeffs-iMac:~ Jeff$ which guile
/opt/local/bin/guile
Я использую OS X 10.11.3
Я попытался удалить и переустановить pkg-config по адресу: Не могу установить rmagick, pkg-config: команда не найдена
Я начинающий программист, буду признателен за любую помощь.
/opt/local/bin/pkg-config
) - person Daniel Jour   schedule 07.03.2016CC=gcc
выберет первый исполняемый файл, найденный с использованием переменной среды PATH. Это может быть не тот, который вас интересует. Предложение:CC := /usr/lib/gcc
Кстати: при использовании только оператора=
макрос будет переоцениваться каждый раз, когда на него ссылаются. Однако использование оператора:=
означает, что макрос будет оцениваться только один раз, независимо от того, сколько раз на него ссылаются. - person user3629249   schedule 07.03.2016pkg-config
должно быть в/usr/bin
. тот факт, что он находится в /opt/local/bin`, указывает на то, что установка была выполнена неправильно - person user3629249   schedule 07.03.2016/usr/bin
, и никто не должен пытаться копировать / связывать такие сторонние утилиты там в (ошибочном) смысле целесообразности. - person Brett Hale   schedule 08.03.2016