Python-Modul wird nicht installiert

Dies ist meine setup.py Datei

 #!/usr/bin/env python from setuptools import setup from sys import path setup(name= 'conundrum', version= '0.1.0', author= 'elssar', author_email= 'elssar@altrawcode.com', py_modules= ['conundrum'], url= 'https://github.com/elssar/conundrum', license= 'MIT', description= 'A framework agnostic blog generator.', long_description= open(path[0]+'/README.md', 'r').read(), install_requires= [ 'PyYAML >= 3.0.9', 'Markdown >= 2.2.0', 'requests >= 1.0.4', ], ) 

Ich habe versucht, sowohl setuptools und distutils , aber das wird nicht installieren mein Modul. Stattdessen bekomme ich

 file module.py (for module module) not found 

Das ist meine Verzeichnisstruktur

 /module |--/test |--README.md |--license.txt |--module.py |--setup.py 

Nur um klar zu sein, Modul ist das Wurzelverzeichnis.

Kann mir jemand sagen was ich falsch mache?

Dies ist die Ausgabe, wenn ich versuche zu installieren

 elssar@elssar-laptop:/usr/local/src/conundrum$ sudo python /home/elssar/code/conundrum/setup.py install /usr/lib/python2.6/distutils/dist.py:250: UserWarning: 'licence' distribution option is deprecated; use 'license' warnings.warn(msg) running install running bdist_egg running egg_info writing requirements to conundrum.egg-info/requires.txt writing conundrum.egg-info/PKG-INFO writing top-level names to conundrum.egg-info/top_level.txt writing dependency_links to conundrum.egg-info/dependency_links.txt warning: manifest_maker: standard file 'setup.py' not found file conundrum.py (for module conundrum) not found reading manifest file 'conundrum.egg-info/SOURCES.txt' writing manifest file 'conundrum.egg-info/SOURCES.txt' installing library code to build/bdist.linux-x86_64/egg running install_lib running build_py file conundrum.py (for module conundrum) not found file conundrum.py (for module conundrum) not found warning: install_lib: 'build/lib.linux-x86_64-2.6' does not exist -- no Python modules to install creating build/bdist.linux-x86_64/egg creating build/bdist.linux-x86_64/egg/EGG-INFO copying conundrum.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO copying conundrum.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO copying conundrum.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO copying conundrum.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO copying conundrum.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO zip_safe flag not set; analyzing archive contents... creating 'dist/conundrum-0.1.0-py2.6.egg' and adding 'build/bdist.linux-x86_64/egg' to it removing 'build/bdist.linux-x86_64/egg' (and everything under it) Processing conundrum-0.1.0-py2.6.egg removing '/usr/local/lib/python2.6/dist-packages/conundrum-0.1.0-py2.6.egg' (and everything under it) creating /usr/local/lib/python2.6/dist-packages/conundrum-0.1.0-py2.6.egg Extracting conundrum-0.1.0-py2.6.egg to /usr/local/lib/python2.6/dist-packages conundrum 0.1.0 is already the active version in easy-install.pth Installed /usr/local/lib/python2.6/dist-packages/conundrum-0.1.0-py2.6.egg Processing dependencies for conundrum==0.1.0 Searching for requests==1.0.4 Best match: requests 1.0.4 Adding requests 1.0.4 to easy-install.pth file Using /usr/local/lib/python2.6/dist-packages Searching for Markdown==2.2.0 Best match: Markdown 2.2.0 Processing Markdown-2.2.0-py2.6.egg Markdown 2.2.0 is already the active version in easy-install.pth Installing markdown_py script to /usr/local/bin Using /usr/local/lib/python2.6/dist-packages/Markdown-2.2.0-py2.6.egg Searching for PyYAML==3.10 Best match: PyYAML 3.10 Adding PyYAML 3.10 to easy-install.pth file Using /usr/local/lib/python2.6/dist-packages Finished processing dependencies for conundrum==0.1.0 

Nur um sicher zu sein, dass es nicht etwas falsches mein mein System gibt, habe ich zwei Pakete von github mit einem ähnlichen setup.py und installiert. Installiert ohne Probleme.

2 Solutions collect form web for “Python-Modul wird nicht installiert”

Ich kann setup.py aus einem anderen Verzeichnis setup.py . Es muss aus dem Verzeichnis laufen, in dem es sich befindet. Das war das Problem hier.

Fest.

Wenn ich dein Layout verstehe, ist das Problem, dass du das Standardpaket_dir package_dir , was bedeutet, dass Top-Level-Module wie module im Stammverzeichnis als module.py , nicht als module/module.py .

Also fügen Sie hinzu:

 package_dir = {'': 'module'} 

Jetzt wird es nach module als module/module.py .

(PS, das wäre alles viel weniger verwirrend zu diskutieren, ob dein Modul oder sein Unterverzeichnis oder idealerweise beide etwas anderes als "Modul" genannt wurden. Auch wenn du ein normaleres Format zum Zeichnen deines Verzeichnisbaumes benutzt hast.)

Dies wird in Listing ganze Pakete erklärt . (Ich merke, dass Sie einzelne Module auflisten, nicht ganze Pakete, aber die docs für diesen Abschnitt sagen nur "wieder, können Sie die Paket- / Verzeichnis-Korrespondenz mit der Option package_dir überschreiben", bezogen auf den Abschnitt, den ich verknüpft habe Für package_dir ist noch weniger hilfreich, es sagt einfach "Eine Mapping von Paket zu Verzeichnisnamen".)

  • Python - Paket, das mit easy_install installiert ist, wird nicht erkannt (PIL 1.1.7)
  • Beste Weg, um Code über mehrere setup.py Skripte zu teilen?
  • Post-Install-Skript mit Python-Setup-Tools
  • Inkonsistentes Verhalten von bdist vs sdist bei der Verteilung eines Python-Pakets
  • Ausschliessen eines Top-Level-Verzeichnisses aus einem Setuptools-Paket
  • Warum macht setup.py den Inhalt des Namespaces vor der Installation?
  • Numpy als Abhängigkeit mit Setuptools installieren
  • Installiere pyopencv mit Pip auf Mac OS X
  • Wie schreibe ich setup.py, um einen Git Repo als Abhängigkeit einzuschließen
  • Kann ich setuptools ohne berechtigungen zu / usr / local etc benutzen
  • Warum braucht 'Pip' "setuptools> = 0.8", obwohl ich 2.1 installiert habe?
  • Python ist die beste Programmiersprache der Welt.