You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

macOS下C23多线程代码编译遇linker command failed exit code 1错误求助

解决macOS下C23编译pthread程序的链接错误

错误原因

你遇到的链接错误(clang: error: linker command failed with exit code 1)和未定义符号提示,核心原因是编译时未链接pthread库。macOS的Clang编译器不会自动关联pthread库,必须显式指定链接参数;同时你使用C23标准开发,也需要在编译命令中明确指定标准版本。

解决方案

使用以下命令编译你的代码:

clang -std=c23 -o sum_program main.c -lpthread

参数说明:

  • -std=c23:指定使用C23标准编译代码
  • -o sum_program:指定生成的可执行文件名为sum_program(可自定义)
  • -lpthread:告诉链接器链接pthread线程库,解决_runner符号未找到的问题

额外注意事项

  • 运行程序时必须传入一个整数参数,例如:
    ./sum_program 100
    
    否则argv[1]为空指针,atoi函数会导致未定义行为。
  • 你的代码中runner函数的声明与定义是匹配的,无需修改代码逻辑。

内容的提问来源于stack exchange,提问作者Dawid Janas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.24 16:18:34