【问题标题】:ld: building for macOS-x86_64 but attempting to link with file built for macOS-x86_64ld:为 macOS-x86_64 构建,但尝试链接为 macOS-x86_64 构建的文件
【发布时间】:2022-01-04 15:35:52
【问题描述】:

我有一个奇怪的问题,在我的 Ubuntu VM 上创建/使用静态库可以工作,但在 macOS 上却不行:

ld: warning: ignoring file ./dist/libXXXX.a, building for macOS-x86_64 but attempting to link with file built for macOS-x86_64

创建静态库的命令是:

ar rcs libtest.a obj1.o obj2.o ...

编译器调用:

gcc -g -Wall -Wextra main.c -L./dist -lXXXX -o main

在 google 上搜索并没有产生任何可用的结果,除了这个(可能)与 SO 相关的问题:

Possible related question

【问题讨论】:

    标签: gcc ld


    【解决方案1】:

    查看自动创建静态库的脚本后,我找到了罪魁祸首:

    出于某种原因,我的工具为头文件创建了目标文件(导致像 header.h.o 这样的文件)。

    删除那些修复了问题。

    【讨论】:

      猜你喜欢
      • 2021-04-24
      • 1970-01-01
      • 2021-09-24
      • 2022-07-21
      • 2022-06-23
      • 2022-08-24
      • 1970-01-01
      • 2022-01-19
      • 2021-01-17
      相关资源
      最近更新 更多