Я пытаюсь установить библиотеку cs50 https://manual.cs50.net/library/#mac_os чтобы я мог скомпилировать c-код для класса в моей OS X 10.10.1. К сожалению, у меня есть некоторые проблемы.
Позвольте мне рассказать вам о том, что я сделал до сих пор. Как указано в приведенной выше ссылке, я ввел в терминал bash следующие команды:
$ ls
cs50.c cs50.h
$ gcc -c -ggdb -std=c99 cs50.c -o cs50.o
$ ar rcs libcs50.a cs50.o
$ rm -f cs50.o
$ chmod 0644 cs50.h libcs50.a
$ sudo mkdir -p /usr/local/include
$ sudo mv -f cs50.h /usr/local/include
$ sudo mkdir -p /usr/local/lib
$ sudo mv -f libcs50.a /usr/local/lib
$ cd ..
$ rm -rf library50-c-5
После, казалось бы, правильной установки библиотеки я запустил gcc generate.c -o generate
, чтобы скомпилировать файл. Я получил следующую ошибку:
$ pwd
home/Developer/pset3/find
$ ls
Makefile find.c generate.c helpers.c helpers.h
$ gcc generate.c -o generate
generate.c:17:10: fatal error: 'cs50.h' file not found
#include <cs50.h>
^
1 error generated.
$
У меня также была такая же ошибка, когда я запускал gcc generate.c -o generate -lcs50
Почему файл cs50.h не найден? Файл устанавливается правильно?
Я искал похожие вопросы, но другие, похоже, столкнулись с немного другой проблемой:
-I /usr/local/include
и-L /usr/local/lib
в командной строке (и-L
должно предшествовать-lcs50
). - person Jonathan Leffler   schedule 25.01.2015typedef char* string;
и не становится лучше. фу. - person WhozCraig   schedule 25.01.2015string
— это просто псевдоним дляchar*
, и начинает объяснять, что это значит. Честно говоря, я впечатлен тем, что они все еще используют C. Весь курс доступен бесплатно онлайн на edx.org. - person hashemi   schedule 13.07.2015