Mar*_*tok 7 python pip setuptools
我正在尝试使用 pip 将我自己的包的源签出安装为可编辑包,但它没有在安装时被拾取。\n是的,有很多相关的问题,但它们是主要是关于非标准目录结构。这看起来应该“正常工作”,甚至部分有效。
\n# starting from an empty venv:\n(env) PS C:\\test> pip install -e C:\\path\\to\\my\\PySymCircuit\nObtaining file:///C:/path/to/my/PySymCircuit\n Preparing metadata (setup.py) ... done\nCollecting sympy\n Using cached sympy-1.9-py3-none-any.whl (6.2 MB)\nCollecting mpmath>=0.19\n Using cached mpmath-1.2.1-py3-none-any.whl (532 kB)\nInstalling collected packages: mpmath, sympy, SymCircuit\nRun Code Online (Sandbox Code Playgroud)\n看起来不错,但是:
\n(env) PS C:\\test> python -c \'import symcircuit\'\nTraceback (most recent call last):\n File "<string>", line 1, in <module>\nModuleNotFoundError: No module named \'symcircuit\'\n(env) PS C:\\test> pip show SymCircuit\nWARNING: Package(s) not found: SymCircuit\nRun Code Online (Sandbox Code Playgroud)\n创建的链接文件是正确的(以及源目录中的egg-info),当我尝试卸载该包时,突然它被识别了。只是不是在重要的时候...
\n(env) PS C:\\test> cat .\\env\\Lib\\site-packages\\SymCircuit.egg-link\nC:\\path\\to\\my\\PySymCircuit\n.\n(env) PS C:\\test> pip uninstall SymCircuit\nFound existing installation: SymCircuit 0.1.0\nUninstalling SymCircuit-0.1.0:\n Would remove:\n c:\\test\\env\\lib\\site-packages\\symcircuit.egg-link\nProceed (Y/n)? Y\n WARNING: Cannot remove entries from nonexistent file c:\\test\\env\\lib\\site-packages\\easy-install.pth\n Successfully uninstalled SymCircuit-0.1.0\nRun Code Online (Sandbox Code Playgroud)\nPlainsetup.py develop产生相同的链接,也无法使用。
我缺少什么?
\n来自同一源树的不可编辑安装按预期工作,所以我相信它与链接机制有关?
\n更新:显然该链接仅适用于 pip,重要的是 setuptools 应该将路径添加到easy-install.pth. 事实并非如此,因此卸载时会出现错误消息。\n现在的问题是,为什么...
按要求更新:
\n本地目录结构:git clone https://github.com/martok/py-symcircuit.git
py-symcircuit\n\xe2\x94\x82 LICENSE\n\xe2\x94\x82 README.md\n\xe2\x94\x82 setup.py\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80.git\n\xe2\x94\x9c ...\n\xe2\x94\x9c\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80symcircuit\n\xe2\x94\x82 __init__.py\n\xe2\x94\x82 bode.py\n\xe2\x94\x82 spice.py\n\xe2\x94\x82 system.py\n\xe2\x94\x94\xe2\x94\x80\xe2\x94\x80\xe2\x94\x80SymCircuit.egg-info\n dependency_links.txt\n PKG-INFO\n requires.txt\n SOURCES.txt\n top_level.txt\nRun Code Online (Sandbox Code Playgroud)\n设置.py:
\n#!/usr/bin/env python\n\nfrom setuptools import setup, find_packages\n\nsetup(\n name="SymCircuit",\n version="0.1.0",\n author="Martok",\n author_email="martok@martoks-place.de",\n description="Symbolic electronic circuit analysis",\n long_description=open("README.md","rt").read(),\n long_description_content_type="text/markdown",\n url="https://github.com/martok/py-symcircuit",\n project_urls={\n "Bug Tracker": "https://github.com/martok/py-symcircuit/issues",\n },\n license="MIT",\n classifiers=[...],\n packages=find_packages(),\n python_requires=\'>=3.6\',\n install_requires=[\n "sympy",\n ],\n extras_require={\n "EE": [\n "networkx",\n "numpy",\n "mplotkit"\n ],\n },\n)\nRun Code Online (Sandbox Code Playgroud)\nPython 3.6.8 (tags/v3.6.8:3c6b436a57, Dec 23 2018, 23:31:17) [MSC v.1916 32 bit (Intel)] on win32\nPackage Version \n---------------- ---------\npip 21.3.1\nsetuptools 59.4.0\nRun Code Online (Sandbox Code Playgroud)\n
| 归档时间: |
|
| 查看次数: |
4400 次 |
| 最近记录: |