XCode:'ModuleNotFoundError:没有名为'psycopg2'的模块

时间:2019-12-30 21:58:10

标签: python xcode postgresql kivy psycopg2

我正在使用Mac OS Catalina版本10.15.2和Xcode版本11.3。 遇到一些问题后,我设法借助以下帖子安装了psycopg2:Python 3.7 psycopg2 - Xcode Error "error: command 'gcc' failed with exit status 1"

Psycopg2是必需的,因为我正在使用Python 3.7,Kivy和PostgreSQL(12)数据库开发一个应用程序,并且希望在我的iPhone上运行该数据库。使用PyCharm,预览/ GUI可以正常运行。数据库访问,查询和psycopg2的导入也可以正常工作。对于我的项目,我有2个.py文件(main.py和query.py)。

我使用pip3 install psycopg2==2.7.7pip3 install psycopg2-binary安装了psycopg2,因为我还在该项目中使用Python 3.7。我安装了2.7.7版,因为psycopg2的2.8.4版确实引起了其他一些问题,甚至使我无法在PyCharm中运行该项目。

当我现在尝试使用XCode生成应用程序时,它的确显示“构建成功”,但崩溃并显示错误代码'ModuleNotFoundError:没有名为'psycopg2'的模块。

如果我再次尝试安装psycopg2,它会告诉我它已经安装

Jans-MBP:~ jang$ pip3 install psycopg2==2.7.7
Requirement already satisfied: psycopg2==2.7.7 in /Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages (2.7.7)

1 个答案:

答案 0 :(得分:0)

必须使用kivy-ios包装的toolchain.py手动安装该库。

  1. 将目录设置为您的kivy-ios软件包,该软件包确实包含 toolchain.py

    $ cd /Users/jg/MainApp/kivy-ios

  2. 使用toolchain.py安装所需的软件包。

    $ python3 toolchain.py pip3 install psycopg2

现在,构建应该成功,并且Xcode应该找到所需的模块。如果在尝试安装库时遇到iPhone模拟器的位置问题,请尝试更改Xcode的路径:

$ sudo xcode-select --switch /Applications/Xcode.app

更改Xcode路径最终解决了该问题,这要归功于https://github.com/kivy/kivy-ios/issues/373