Я новичок в программировании и прохожу онлайн-курс по CS50.
На лекции 2 Дэвид представил IDE CS50, который я впервые использую для Задачи 2 - Читаемость. Тем не менее, я сталкиваюсь с некоторыми сообщениями об ошибках при попытке запустить простую программу «Здравствуй, мир».
Вот шаги, которые я делаю по порядку:
- Откройте CS50 IDE
- Войдите в систему под своим логином GitHub
- Выполните
cd
, чтобы убедиться, что я нахожусь в домашнем каталоге - Выполните
mkdir hello
, чтобы создать новый каталог в моей домашней папке - Выполнить
cd hello
для перехода в новый каталог - Выполнить
open hello.c
для создания нового файла в новом каталоге
На данный момент все выглядит мне знакомо поэтому я тестирую его с помощью простой программы "hello, world":
#include <cs50.h>
#include <stdio.h>
int main(void)
{
printf("hello, world\n");
}
, затем я запускаю make hello
и получаю следующее сообщение об ошибке:
make: *** No rule to make target 'hello'. Stop.
Затем я заметил, что даже если раньше я запускал open hello. c, на самом деле в каталоге hello слева нет файла hello. c. Поэтому я вручную щелкнул правой кнопкой мыши каталог hello, выбрал «Новый файл» и создал hello. c и попытался запустить его снова. Затем я получаю следующее сообщение об ошибке:
clang -ggdb3 -O0 -std=c11 -Wall -Werror -Wextra -Wno-sign-compare -Wno-unused-parameter -Wno-unused-variable -Wshadow hello.c -lcrypt -lcs50 -lm -o hello
/usr/bin/../lib/gcc/x86_64-linux-gnu/7.4.0/../../../x86_64-linux-gnu/crt1.o: In function `_start':
(.text+0x20): undefined reference to `main'
clang-7: error: linker command failed with exit code 1 (use -v to see invocation)
<builtin>: recipe for target 'hello' failed
make: *** [hello] Error 1
Кто-нибудь знает, что я здесь не так делаю? Я нашел несколько разных ответов на похожие вопросы, но не могу решить эту проблему. Я немного сбит с толку, поэтому любая помощь будет принята с благодарностью.
Я также прилагаю несколько скриншотов своего окна, если это будет полезно.