标签: nuitka

如何在 virtualenv 中使用 nuitka

我正在为我的项目使用 nuitka。它有一些 3rd 方模块作为依赖项,我使用的是 virtualenv。

如何在 virtualenv 中使用 nuitka?

python python-3.x nuitka

5
推荐指数
1
解决办法
1775
查看次数

如何以编程方式检测代码是否以nuitka编译或python解释模式运行

谁能说出如何检测代码是否在Nuitka创建的exe或正常的python解释器中运行?

我认为我理想上希望一个“ is_nuitka ”标志在编译时设置为True,并且在不编译时根本不存在。

然后可以使用如下代码:

if '__is_nuitka__' in locals() or '__is_nuitka__' in globals():
    print('debug info: running in nuitka mode')
Run Code Online (Sandbox Code Playgroud)

有什么建议么?有这样的东西吗?还有其他方法吗?

python nuitka

5
推荐指数
2
解决办法
189
查看次数

Nuumpka与Numpy失败"ImportError:LoadLibraryEx多阵列失败"

我正在尝试使用Nuitka构建一个可执行文件,用于以下简单代码:

from numpy import abs

var = raw_input("Please enter something: ")
print "you entered", var    
print abs(-43.2)

var2 = raw_input("Secundo: ")    
print var2
Run Code Online (Sandbox Code Playgroud)

我编译的Nuitka代码是:

nuitka --standalone --show-scons FILENAME
Run Code Online (Sandbox Code Playgroud)

这显然是我的问题的简化.我尝试编译没有numpy并且不使用"abs",并且exectuable执行完美.但是,当我使用numpy代码编译时,我尝试执行生成的.exe,我收到以下错误:

Traceback (most recent call last): File "...\__init__.dist\__init__.py", line 1, in <module>
  File "...\__init__.dist\numpy\__init__.py", line 142, in numpy
  File "...\__init__.dist\numpy\add_newdocs.py", line 13, in add_newdocs
  File "...\__init__.dist\numpy\lib\__init__.py", line 8, in lib
  File "...\__init__.dist\numpy\lib\type_check.py", line 11, in type_check
  File "...\__init__.dist\numpy\core\__init__.py", line 14, in core
ImportError: LoadLibraryEx '...\__init__.dist\numpy\core\multiarray.pyd' failed
Run Code Online (Sandbox Code Playgroud)

我使用的是Python 2.7.8 64bit,Numpy 1.11.3 64bit,Nuitka 0.5.24.4 …

numpy nuitka

5
推荐指数
1
解决办法
476
查看次数

我可以使用nuitka创建单个文件可执行文件吗?

如标题所述,我可以使用nuitka创建单个文件可执行文件吗?我尝试--portable--standalone选择,但它们似乎不起作用。谁能解释一下这个--recurse-all选项吗?如果您还有其他建议,请告诉我。我不想使用pyinstaller,因为它启动我的应用程序太慢。感谢您的任何回复。

python windows executable compilation nuitka

5
推荐指数
1
解决办法
2116
查看次数

如何在 Mac 上使用 Nuitka 从 python 创建“.app”

第一次在 macOS (10.14) 上尝试 Nuitka。

我做了python3 -m nuitka --standalone hello.py(也试过--clang

结果是一个奇怪的hello.dist文件夹——它甚至没有在 Finder 中显示为文件夹——它包含一堆.so文件,Python以及我的可执行文件hello.

我以为它会创建一个.app捆绑包?还有一步吗?

(我也试过https://sveinbjorn.org/platypus但这并不能真正编译 python。)

python software-distribution nuitka

5
推荐指数
1
解决办法
442
查看次数

使用 Nuitka for Python 应用程序时出错,该应用程序使用 Numpy、Pandas 和 Plotly

我开发了一个 PyQT5 应用程序,它也使用 Numpy、Pandas 和 Plotly。为了将其打包,我决定使用 Nuitka,但是由于该产品面向不熟悉 Python 的最终用户,我想确保解释器与应用程序一起打包为单个二进制文件(类似于 PyInstaller) 。

我正在运行以下命令,但是遇到了错误,我正在努力找出如何修复:

$ python -m nuitka --standalone --show-progress --recurse-all --plugin-enable=numpy main.py
Run Code Online (Sandbox Code Playgroud)

我正在使用 PyCharm,所有库都位于项目目录的虚拟环境中。我使用的Python版本是3.9。

在 Windows 中生成了可执行二进制文件,但是在运行时我收到以下错误消息:

C:\Users\user\PycharmProjects\PlotlyExample\main.dist>main
Traceback (most recent call last):
  File "C:\Users\user\PYCHAR~1\PLOTLY~1\MAIN~1.DIS\numpy\core\__init__.py", line 22, in <module numpy.core>
  File "C:\Users\user\PYCHAR~1\PLOTLY~1\MAIN~1.DIS\numpy\core\multiarray.py", line 12, in <module numpy.core.multiarray>
  File "C:\Users\user\PYCHAR~1\PLOTLY~1\MAIN~1.DIS\numpy\core\overrides.py", line 7, in <module numpy.core.overrides>
ImportError: LoadLibraryExW 'C:\Users\user\PYCHAR~1\PLOTLY~1\MAIN~1.DIS\numpy\core\_multiarray_umath.pyd' failed: The specified module could not be found.

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "C:\Users\user\PYCHAR~1\PLOTLY~1\MAIN~1.DIS\main.py", …
Run Code Online (Sandbox Code Playgroud)

windows numpy python-3.x mingw-w64 nuitka

5
推荐指数
0
解决办法
1556
查看次数

如何将Python编译为DLL或替代方案?

如何编译Python项目?

我有一个大型 Python 项目,其中包含多个脚本并导入一些重型库(例如 PyTorch)。
我需要使用这个项目作为 .NET 中最终解决方案的一部分。
此外,它应该是独立的可分发的,因为在客户端设置Python环境不是一种选择。
最好的方法是能够制作DLL静态库,但任何替代方法(例如可执行文件)都可以。


我已经尝试过了。

编译器

PyInstaller,Nuitka。
在这两种情况下,我都遇到了一个或多个软件包的一些死胡同问题。例如 Nuitka 使用 PyTorch 失败

远程过程调用

最终解决方案的原型依赖于正在运行的 Python 和 .NET 程序之间的 RPC 通信。
但分发和源代码保护是该架构无法解决的问题。


更新: 目标平台是Windows

python dll compilation pyinstaller nuitka

5
推荐指数
1
解决办法
3313
查看次数

PyPy与Nuitka

在过去的几天里,我一直在玩Nuitka,这是一个将Python编译成可执行C/C++程序的工具.

我没有发现Nuitka的任何速度优势(与PyPy相比).那么Nuitka是什么意思?我错过了什么吗?

pypy nuitka

4
推荐指数
2
解决办法
2463
查看次数

如何运行Nuitka编译的Python可执行文件

我正在Ubuntu 14.04上试验Nuitka并尝试创建并运行可执行文件.我有一个hello.py包含内容的文件

print("Hello please")
Run Code Online (Sandbox Code Playgroud)

我转而hello.exe使用该命令nuitka hello.py.但是,当我尝试使用Wine 1.7运行它时,我得到以下错误:

$ wine hello.exe
wine: Bad EXE format for Z:\home\crclayton\hello.exe.
Run Code Online (Sandbox Code Playgroud)

我认为这是Nuitka的问题,而不是Wine,因为我可以使用Wine来运行我在C#中创建的helloworld.exe.有谁知道如何修理它?

编辑:

我在Ubuntu上没有运气,所以我测试了我的Windows 7分区上的hello.exe(Ubuntu和Windows都是64位),我收到以下错误:

此文件的版本与您正在运行的Windows版本不兼容.检查计算机的系统信息,以查看是否需要该程序的x86(32位)或x64(64位)版本,然后与软件发行商联系.

问题是Nuitka正在创建一个32位的exe并且我试图在64位操作系统上运行它吗?如果是这样,任何人都知道如何解决它?

python ubuntu wine nuitka

3
推荐指数
1
解决办法
4075
查看次数

Python 3.5 + PyQt5到独立的exe

我是编码的新手,我需要将我的py文件转换为exe.我试过py2exe,它不适用于python 3.5.然后我尝试了pyinstaller它工作,但当我将PyQt5添加到程序时,pyinstaller也失败了.我尝试了nuitka,它构建了exe,但是当我点击exe文件时,它会显示一个控制台几秒钟并关闭.我需要一个在激活后显示gui的exe.以下是我在程序中使用的模块:

import P4
import time
from datetime import datetime,date
import traceback
import os
import sys
import threading
from PyQt5 import QtCore
from PyQt5 import QtGui
from PyQt5.QtWidgets import *
from PyQt5.QtCore import QCoreApplication, QTimer
Run Code Online (Sandbox Code Playgroud)

我从nuitka exe文件得到的错误: error_0ne

我从pyinstaller exe文件获得错误:

ER2

Dll是pyinstaller需要的: dll

python py2exe pyinstaller pyqt5 nuitka

2
推荐指数
1
解决办法
4483
查看次数

如何使用 Nuitka 从 Python 获取已编译二进制文件的当前路径?

Nuitka 擅长将 Python 编译为可执行的二进制文件。\n但是编译后的二进制文件会从原始绝对路径中找到其他资源文件。\n因此,要移动到另一台计算机,需要制作目录树原始目录树相同

\n\n

例如,如果我编译一个这样的项目:

\n\n
/home/me/myproj/\n\xe2\x95\xa0\xe2\x95\x90 myprog.py\n\xe2\x95\x9a\xe2\x95\x90 resource\n   \xe2\x95\x9a\xe2\x95\x90 foo.data\n
Run Code Online (Sandbox Code Playgroud)\n\n

我应该将生成的二进制文件和资源放到另一台计算机的同一位置。\n如何解决此问题?

\n\n

我更简单的尖峰是:

\n\n
# /home/me/myproj/spike.py\nimport os\nprint(os.path.dirname(__file__))\n
Run Code Online (Sandbox Code Playgroud)\n\n

编译后,移动到任何其他位置,我总是得到以下结果/home/me/myproj.

\n\n

我需要一个结果,就像/another/path我将编译myproj.bin/another/path.

\n

python nuitka

2
推荐指数
1
解决办法
1975
查看次数