gpt4 book ai didi

objective-c - 如何包含静态库并使其#import路径仍然有效?

转载 作者:行者123 更新时间:2023-12-02 10:47:18 27 4
gpt4 key购买 nike

假设我有一个使用以下文件结构创建的静态库:

  • Folder1
  • File1.h
  • Folder2
  • File2.h

  • 现在在 File1.h内部,它引用的是不带路径的 File2.h(例如 #import File2.h)。库成功构建。 (它不需要完整路径(即 #import Folder2/File2.h),因为两个文件都是同一个项目的一部分。)

    现在,当我将此库包含在另一个项目中时,该 #import File2.h语句将不再编译,而我必须将其更改为 #import Folder2/File2.h(或类似名称)。这意味着我必须修改原始库,这不好。

    我收到的特定错误消息是:

    File2.h: No such file or directory



    似乎没有办法让这两个文件成为该新项目的一部分,因为在包含库之后,我看到的仅有两个文件是 MyLib.xcodeprojlixMyLib.a

    我在新项目中包含静态库的方式是执行以下操作:
  • MyLib.xcodeproj拖到我的新项目中。
  • libMyLib.a文件添加到新项目的目标中。
  • 添加到页眉搜索路径中我库的主目录(包含Folder1Folder2的文件夹)的相对路径。

  • 有什么办法可以让它自动知道在哪里可以找到这些文件,就像它可以在库本身中一样?我意识到我可以将 Folder1Folder2路径添加到新项目的Header Search Paths中,但是我正在寻找一种更好的方法,因为这两个文件夹只是一个示例,它很容易就是50个文件夹我需要包括在内。我正在寻找一种解决方案,如果可能的话,该解决方案不需要我键入所有50个文件夹的路径。

    最佳答案

    尝试选中所有这些 header 的父文件夹路径旁边的“递归”复选框。

    关于objective-c - 如何包含静态库并使其#import路径仍然有效?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4074871/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com