classification
Title: freeze.py fails to work.
Type: Stage: patch review
Components: Demos and Tools, Windows Versions: Python 3.8, Python 3.7, Python 3.6
process
Status: open Resolution:
Dependencies: Superseder:
Assigned To: Nosy List: Decorater, paul.moore, r.david.murray, steve.dower, tim.golden, zach.ware
Priority: normal Keywords: patch

Created on 2017-12-05 02:15 by Decorater, last changed 2017-12-10 22:31 by Decorater.

Pull Requests
URL Status Linked Edit
PR 4719 open Decorater, 2017-12-05 04:15
Messages (7)
msg307615 - (view) Author: Decorater (Decorater) * Date: 2017-12-05 02:15
It seems on my system installed python 3.6.0 when invoking python 3.6.3's freeze.py it seems to fail with this traceback:

python ..\externals\cpython\Tools\freeze\freeze.py pyeimport.py
Traceback (most recent call last):
  File "..\externals\cpython\Tools\freeze\freeze.py", line 491, in <module>
    main()
  File "..\externals\cpython\Tools\freeze\freeze.py", line 220, in main
    flagged_version = version + sys.abiflags
AttributeError: module 'sys' has no attribute 'abiflags'
msg307620 - (view) Author: R. David Murray (r.david.murray) * (Python committer) Date: 2017-12-05 02:39
Does the 3.6.0 freeze fail under 3.6.0, or the 3.6.3 freeze fail under 3.6.3?  If not, there's no bug to report.
msg307623 - (view) Author: Decorater (Decorater) * Date: 2017-12-05 03:02
It seems to also give the same traceback when using the build from the latest commit on branch 3.6 as well as 3.6.0 when using the freeze.py from the clone as well (The way I tested it was manually patching the binaries in my my 3.6 install).
msg307630 - (view) Author: Decorater (Decorater) * Date: 2017-12-05 03:47
Seems that freeze.py was not updated since 3.6.0b2 and also fails like this in master as well. (specifically commit 10108a7b9affa61719a1dc1863edb2bdb3402fd1) was last edit to the file in both the 3.6 and the master branch.

Could it be that ``sys.abiflags`` was removed from the sys module and so freeze stopped working due to that?
msg307639 - (view) Author: Decorater (Decorater) * Date: 2017-12-05 04:16
I have found an temporary fix for now after reading that abiflags is posix only.
msg307666 - (view) Author: Decorater (Decorater) * Date: 2017-12-05 15:36
python ..\externals\cpython\Tools\freeze\freeze.py pyeimport.py
Error: needed directory E:\python360\lib\python3.6\config-3.6 not found
Use ``..\externals\cpython\Tools\freeze\freeze.py -h'' for help

Seems like freeze works now with no traceback. However on Windows I need to figure out how to make it actually work without ``make install`` because lack of ``make install`` on Windows.

:thinking: how can it know on Windows what the config to python could be?
msg307998 - (view) Author: Decorater (Decorater) * Date: 2017-12-10 22:31
After thinking about this, maybe a better aproach is to somehow make freeze when used on windows somehow read pyconfig.h
History
Date User Action Args
2017-12-10 22:31:44Decoratersetmessages: + msg307998
2017-12-05 15:36:47Decoratersetmessages: + msg307666
2017-12-05 04:16:25Decoratersetmessages: + msg307639
2017-12-05 04:15:58Decoratersetkeywords: + patch
stage: patch review
pull_requests: + pull_request4628
2017-12-05 03:47:48Decoratersetversions: + Python 3.7, Python 3.8
2017-12-05 03:47:26Decoratersetmessages: + msg307630
2017-12-05 03:02:01Decoratersetmessages: + msg307623
2017-12-05 02:39:47r.david.murraysetnosy: + r.david.murray
messages: + msg307620
2017-12-05 02:15:01Decoratercreate