Python PyInstall在Kali-Linux上不工作

Python PyInstall在Kali-Linux上不工作,python,linux,pyinstaller,Python,Linux,Pyinstaller,我试图在Kali Linux上使用pyinstaller来编译python程序,但当我运行它时,我遇到了一些问题: root@kali:/usr/bin# ./pyinstaller ~/Desktop/neighbourhood.py 14 INFO: wrote /usr/share/pyinstaller/neighbourhood/neighbourhood.spec 44 INFO: UPX is available. 520 INFO: checking Analysis 520

我试图在Kali Linux上使用pyinstaller来编译python程序,但当我运行它时,我遇到了一些问题:

root@kali:/usr/bin# ./pyinstaller ~/Desktop/neighbourhood.py 
14 INFO: wrote /usr/share/pyinstaller/neighbourhood/neighbourhood.spec
44 INFO: UPX is available.
520 INFO: checking Analysis
520 INFO: building Analysis because out00-Analysis.toc non existent
522 INFO: running Analysis out00-Analysis.toc
575 INFO: Analyzing /usr/share/pyinstaller/support/_pyi_bootstrap.py
1022 INFO: Analyzing /usr/share/pyinstaller/PyInstaller/loader/archive.py
1058 INFO: Analyzing /usr/share/pyinstaller/PyInstaller/loader/carchive.py
1107 INFO: Analyzing /usr/share/pyinstaller/PyInstaller/loader/iu.py
1121 INFO: Analyzing /root/Desktop/neighbourhood.py
2964 INFO: checking Tree
2964 INFO: building because out00-Tree.toc missing or bad
2964 INFO: building Tree out00-Tree.toc
2996 INFO: checking Tree
2996 INFO: building because out01-Tree.toc missing or bad
2996 INFO: building Tree out01-Tree.toc
Traceback (most recent call last):
  File "./pyinstaller.py", line 91, in <module>
    main()
  File "./pyinstaller.py", line 86, in main
    run_build(opts, spec_file)
  File "./pyinstaller.py", line 50, in run_build
    PyInstaller.build.main(spec_file, **opts.__dict__)
  File "/usr/share/pyinstaller/PyInstaller/build.py", line 1625, in main
    build(specfile, buildpath)
  File "/usr/share/pyinstaller/PyInstaller/build.py", line 1582, in build
    execfile(spec)
  File "/usr/share/pyinstaller/neighbourhood/neighbourhood.spec", line 5, in <module>
    hookspath=None)
  File "/usr/share/pyinstaller/PyInstaller/build.py", line 389, in __init__
    self.__postinit__()
  File "/usr/share/pyinstaller/PyInstaller/build.py", line 315, in __postinit__
    self.assemble()
  File "/usr/share/pyinstaller/PyInstaller/build.py", line 475, in assemble
    importTracker.analyze_script(script)
  File "/usr/share/pyinstaller/PyInstaller/depend/imptracker.py", line 205, in analyze_script
    return self.analyze_r('__main__')
  File "/usr/share/pyinstaller/PyInstaller/depend/imptracker.py", line 98, in analyze_r
    newnms = self.analyze_one(name, nm, imptyp, level)
  File "/usr/share/pyinstaller/PyInstaller/depend/imptracker.py", line 159, in analyze_one
    mod = self.doimport(nm, ctx, fqname)
  File "/usr/share/pyinstaller/PyInstaller/depend/imptracker.py", line 256, in doimport
    hooks = __import__('PyInstaller.hooks', globals(), locals(), [hookmodnm])
TypeError: Item in ``from list'' not a string
我遵循youtube上的教程,它运行以下命令:

./pyinstaller setup.py
但是我在pyinstaller的文件夹中找不到setup.py。 如果在没有点斜杠的情况下运行pyinstaller,我会得到以下结果:

root@kali:~# pyinstaller No handlers could be found for logger "PyInstaller.utils.misc"
有人知道怎么修吗? 谢谢你

如果Where is向您显示路径,则pyinstaller位于您的路径中。这意味着运行pyinstaller不需要点斜杠前缀。运行pyinstaller-version以查看它是否在没有./prefix的情况下工作

考虑到输出目录将在您当前所在的目录中创建。在您的案例中/usr/bin,这是一种奇怪的选择。另外,我也不太明白为什么要使用root用户来实现这一点

因此,最好先将目录更改为脚本所在的目录:

$ cd ~/Desktop/neighbourhood.py
然后编译程序:

$ pyinstaller neighbourhood.py
关于您遇到的错误。很难说发生了什么事。这可能是动态传递给python导入的模块名的问题。请参阅更多信息。如果您可以在python 2和python 3之间进行选择,请使用后者来避免此类问题


最后但并非最不重要的一点:我强烈建议您使用youtube教程,而不是youtube教程。

当我在没有点斜杠的情况下运行它时,我得到了以下信息:root@kali:~pyinstaller找不到记录器pyinstaller.utils的处理程序。misc@Syrion看起来您正在使用pyinstaller的旧版本。在旧版本中有一个bug,它阻止在根目录下使用pyinstaller。请使用./pyinstaller-version检查您的版本。目前稳定的版本是3.1。我不知道你是如何安装pyinstaller的,但建议你升级。如果您已经用pip安装了它,那么就用pip安装升级它-upgrade pyinstaller请参阅详细信息Kali linux是用于渗透测试的,它不是通用GNU/linux发行版。
$ pyinstaller neighbourhood.py