错误消息:在 crt1.10.6.ol 开始 ld:找不到符号 collect2:ld 返回 1 个退出状态

Posted

技术标签:

【中文标题】错误消息:在 crt1.10.6.ol 开始 ld:找不到符号 collect2:ld 返回 1 个退出状态【英文标题】:Error message: start in crt1.10.6.o ld: symbol(s) not found collect2: ld returned 1 exit status 【发布时间】:2010-10-02 03:33:10 【问题描述】:

我是 C++ 编程的初学者,我不断收到此错误消息。我不知道这意味着什么......我正在使用 XCode for Macs 版本 3.2.4,64 位。谁能告诉我这是什么意思?

错误信息是:

start in crt1.10.6.o
ld: symbol(s) not found
collect2: ld returned 1 exit status

如果你需要看看我的程序,这里是:

using namespace std;

float area (float x0, float y0, float x1, float y1, float x2, float y2) 


    float a;
    float m1;
    float m2;

    cin >> x0 >> y0 >> x1 >> y1 >> x2 >> y2;

    a = ((x1 - x0) * (y2 - y0) - (x2 - x0) * (y1 - y0)) / 2;

    m1 = (y1 - y0) / (x1 - x0);
    m2 - (y2 - y1) / (x2 - x1);

    if (m1 = m2)
        a = 0;
    if (m2 > m1 && x2 >= x1)
        a = a;
    if (m2 > m1 && x1 >= x2)
        a = -a;
    if (m1 > m2 && x2 > x1)
        a = -a;
    if (m1 > m2 && x1 > x2)
        a = a;

    return (a);

【问题讨论】:

我认为您可能正在切断错误消息,这实际上与 [ Compiling JVMTI agent (using GCC, on OSX Snow Leopard) ](***.com/questions/1420602/…) 相同的问题,缺少 main 函数. 【参考方案1】:

它只是告诉你没有main 函数吗?

【讨论】:

【参考方案2】:

给定的函数没有问题。错误可能取决于:-

    您在何处以及如何调用此函数 正确包含标题

【讨论】:

【参考方案3】:

Mach-O 类型将此设置为动态库

【讨论】:

【参考方案4】:

我遇到了这个错误,因为我删除了项目的主文件

【讨论】:

以上是关于错误消息:在 crt1.10.6.ol 开始 ld:找不到符号 collect2:ld 返回 1 个退出状态的主要内容,如果未能解决你的问题,请参考以下文章

ld:找不到FirebaseFirestore框架

C++ 库编程错误:ld:未找到架构 x86_64 的符号

/usr/bin/ld: 无法打开输出文件 bin/genericMatching: 没有这样的文件或目录

/usr/bin/ld: 找不到 -lfreetype qt

尝试在程序集程序中打印变量时,GDB显示错误消息

[ERR] collect2: fatal error: cannot find 'ld'