gpt4 book ai didi

python - 在 Travis CI 上卡住 Python 应用程序

转载 作者:太空宇宙 更新时间:2023-11-04 03:51:00 30 4
gpt4 key购买 nike

我正在尝试通过 Github 项目卡住 Travis CI 中的 Python 应用程序。我设法通过 Travis 中的 pip 成功调用了 freeze.py 实用程序的安装,但是当我尝试卡住 Python 程序时,它会运行但不会生成必要的 C和构建可执行文件所需的 Makefile。

这是我的.travis.yml:

language: python
python:
- "2.7"

# Command to install dependencies
install: "pip install freeze"

# Command to build with `rake`
script: rake default

这是我的 Rakefile:

#
# Rakefile to build standalone `secho` Unix-like executable program on Travis CI.
# To build on your own system; please use `make` instead.
#
freeze = "python /home/travis/virtualenv/python2.7/lib/python2.7/site- packages/pip/commands/freeze.py"
io = "secho"

task :default => [:freeze, :compile]

task :freeze do
sh "python #{io}.py python test output - OK"
sh "#{freeze} #{io}.py" # This runs but there is no console output & nothing generated.
end

task :compile do
sh "ls"
sh "make -f Makefile"
sh "strip #{io}"
sh "rm -f Makefile *.o *.c"
sh "./#{io} compiled test output - OK"
end

task :clean do
sh "rm -f #{io}"
end

task :test do
puts "dummy test"
end

只有在第一个任务 :freeze 中使用 Python 运行脚本似乎才能成功完成。我做错了什么?

非常感谢,

山姆。

https://github.com/stpettersens/super-echo

最佳答案

我想我明白这里发生了什么。也许你读过this question它有一个答案表明 freeze.py 存在于 pip 的一个模块中,甚至不能直接作为脚本运行(您可以通过阅读它的源代码来确认这一点,它只包含一个类定义)。

但我认为您正在寻找的是 Python 源代码附带的 freeze.py 工具。据我所知,这不是正常安装的,只是源代码中包含的一个工具:http://hg.python.org/cpython/file/5f5e1d408c0c/Tools/freeze

如果您正在寻找一种工具来将您的脚本卡住为独立的可执行文件,您可能需要查看类似 cx_Freeze 的工具。或 PyInstaller . Python 中包含的 freeze 实用程序不再真正维护或使用,我不认为。除了最近的工作以使其与 Python 3 兼容。

关于python - 在 Travis CI 上卡住 Python 应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20541644/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com