【问题标题】:Setting up <cs50> for CS50 Course on chromebook在 Chromebook 上为 CS50 课程设置 <cs50>
【发布时间】:2022-11-24 18:24:27
【问题描述】:

我正在尝试完成 cs50 课程,我发现他们使用

#include <cs50.h>

唯一的问题是我现在得到

cc     hello.c   -o hello
/usr/bin/ld: /tmp/ccMzSNr5.o: in function `main':
hello.c:(.text+0x1a): undefined reference to `get_string'
collect2: error: ld returned 1 exit status
make: *** [<builtin>: hello] Error 1

shell returned 2

Press ENTER or type command to continue

抱歉,如果这不是很具体或什么,我才刚刚开始,如果您需要任何额外信息,我很乐意提供帮助。(我还使用 vim 解释错误语法)

我试图让它工作,我在https://github.com/cs50/libcs50/releases 上安装了所有东西并解压缩,并从https://www.youtube.com/watch?v=RZ4p-saaQkc 安装了所有东西。

【问题讨论】:

  • 看起来您链接 cs50 库的设置一团糟。 cc hello.c -o hello 看起来你甚至都没有尝试过。如何正确地做到这一点应该是课程文档的一部分。

标签: c cs50 chromebook


【解决方案1】:

CS50 库分为两部分:

  1. 您需要包含的头文件;
  2. 以及您需要用于构建的cs50.c 源文件。

    源文件包含定义所有支持功能的(实现),而头文件仅包含声明的功能。

    要使用源文件构建,只需将其添加到命令中:

    cc hello.c cs50.c -o hello
    

    如果您阅读发布存档(README.md 文件)中的文档,那么它会向您展示如何构建一个实际的库以进行安装和链接。

    如果您创建这样的库,那么您需要关联使用它而不是使用源文件构建:

    cc hello.c -o hello -L/usr/local/lib -lcs50
    

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-04
    相关资源
    最近更新 更多