禁用Python基本优化(-O)
在给定的嵌入式Linux机器上,我安装了一个Python 3.3发行版,它似乎默认启用了优化选项禁用Python基本优化(-O),python,debugging,Python,Debugging,在给定的嵌入式Linux机器上,我安装了一个Python 3.3发行版,它似乎默认启用了优化选项-O。 这有以下影响: 正在生成.pyo文件(而不是.pyc) assert语句无效 \uuuu调试\uuuu设置为False 某些IDE似乎无法提供远程调试(请参阅) 有没有办法在命令行上禁用基本优化?我试图将PYTHONOPTIMIZE设置为空字符串,但这没有任何效果。我使用的Python发行版附带了Yocto,默认情况下基本优化在那里被激活(Py\u OptimizeFlag硬编码为1,而不
-O
。
这有以下影响:
- 正在生成
文件(而不是.pyo
).pyc
语句无效assert
设置为\uuuu调试\uuuu
False
- 某些IDE似乎无法提供远程调试(请参阅)
有没有办法在命令行上禁用基本优化?我试图将
PYTHONOPTIMIZE
设置为空字符串,但这没有任何效果。我使用的Python发行版附带了Yocto,默认情况下基本优化在那里被激活(Py\u OptimizeFlag
硬编码为1
,而不是0
)
该版本的Python还附带了一个额外的-N
标志(在通常的Python发行版中没有记录)
因此,我的问题的答案是要么设置
-N
命令行选项,要么对Yocto附带的Python源代码应用补丁并重新编译(正如Karoly Horvath所建议的那样)。作为一种解决方法,您可以安装自己的Python。这很奇怪,因为我在配置Python 3.3脚本中找不到这样的选项。您是否仔细检查了使用env
或printenv
的环境,并确保没有使用强制使用-O选项的包装器?我刚刚发现了一个应用于Python3.3.3源代码的补丁,以便在默认情况下激活优化。该发行版基于Yocto,并附带该补丁。