首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ld:框架未找到libpq

ld:框架未找到libpq
EN

Stack Overflow用户
提问于 2017-11-27 14:33:31
回答 1查看 212关注 0票数 1

我正在制作一个iOS应用程序,并且必须连接到没有web服务的PostgreSQL数据库(直接与数据库连接)。我从这里开始我的旅程:如何从ios9连接postgresql

简单地说,要遵循以下步骤:

  1. 去找一个libpq.framework。
  2. 您必须创建一个C类型文件(因为libpq不是Obj)。作为C连接libpq。
  3. 之后,创建一个桥接头来连接它。(桥接不会生成自己的桥接)
  4. 返回到您创建的C类型文件
  5. 遵循这个"PostgreSQL C语言API“教程,本教程为我节省了很多时间。(C离我很远。)
  6. 如果需要,转到>>启用Bitcode >>是
  7. 一定要在设备上测试。

最后,导致了我试图遵循的在GitHub上的这个项目女巫,但我仍然坚持这个错误"ld: framework没有找到libpq“

这就是我已经做过的,试图让它发挥作用:

  • 从GitHub下载整个项目
  • 将"libpq.framework“从下载的项目中复制到”MyProject/Content/Framework/“
  • 将"testPostgreSqlAPI.c“和"testPostgreSqlAPI.h”复制到我在Xcode中的项目中(Xcode自动生成“myProject-桥接-Header.h”)
  • 在Xcode的General选项卡中添加了“链接框架和库”上的"libpq.framework“
  • 编辑“生成设置”选项卡中到"$(PROJECT_DIR)/Contents/Frameworks/libpq.framework/Versions/A/Headers“的标题搜索路径
  • 将“生成设置”选项卡中的库搜索路径编辑为"$(PROJECT_DIR)递归“
  • 最后,将"libpq.framework“复制到/Library/Frameworks/

在所有这些之后,我的应用程序在尝试构建之前不会在Xcode中显示任何erro,但是当我尝试构建时,我会得到错误":Linker命令失败,退出代码1(使用-v查看调用)“,并在日志中显示错误"ld: framework not”

PS

这是我的第一个iOS应用程序,也是我第一次使用Mac,所以我可能做了很多错误的事情,我想在这种情况下寻求任何帮助,比如“真的有必要将'libpq.framework‘复制到/Library/Framework/或者这很荒谬吗?”

EN

回答 1

Stack Overflow用户

发布于 2017-11-28 17:47:20

最后,在阅读了大量关于框架和共享库的内容之后,我能够理解为什么我的应用程序不能工作。根据这个链接"[...] You create a framework by building a normal dynamic shared library into a folder with the same name and the .framework extension. For example, to create a framework named Chaos, place a dynamic shared library named Chaos in a folder called Chaos.framework. [...] ".查看我下载的框架,目录结构如下所示:

代码语言:javascript
复制
libpq.framework
    |_ Versions /
        |_ A /
            |_ libpq
            |_ Headers /
                |_ libpq-fe.h
                |_ pg_config_ext.h
                |_ postgres_ext.h

因此,我只是将libpq文件复制到与版本文件夹相同的级别。我的框架如下所示:

代码语言:javascript
复制
libpq.framework
    |_ libpq
    |_ Versions /
        |_ A /
            |_ libpq
            |_ Headers /
                |_ libpq-fe.h
                |_ pg_config_ext.h
                |_ postgres_ext.h

现在我不再收到标题中描述的错误,我可以继续我的测试。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47513396

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档