I just bought the new programming course from The Teaching Company and am setting up to play with Python. It looks to be a painless way to learn Python and review familiar programming concepts. Fun stuff for me but, with non-existant to minimal unix skills, I need some help getting started.
I am running 10.11.6 on CMP 5,1 and just installed Python 3.5.2 64 bit (python-3.5.3-macos10.6.pkg). Per Python.org recommendation I also installed Tcl/Tk from ActiveState (ActiveTcl8.6.4.1.299124-macosx10.5-i386-x86_64-threaded.dmg). The information I was going on is here at:
https://www.python.org/download/mac/tcltk/
I first installed Python 3.5.2 and then the Tcl/Tk package, but after re-reading the above linked page I am wondering if the installation order is critical and should have been reversed. The excerpt below (specifically the parts I highlighted in red) is what gave me pause. My concern is that the Python installer could have linked Python to the pre-existing Tcl/Tk (I think Apple 8.5.9) rather than the recommended version from ActiveState. Do the Apple native and the ActiveState Tcl/Tk frameworks now coexist on my system in different locations, and is the behavior of the dynamic linker determined only at run time, or does it point to the Tcl/Tk framework to be used when Python is installed?
------------------------python.org excerpt begins---------------------
How Python Chooses Which Tk Library To Use
Note
While Tcl and Tk are separate frameworks and libraries, they are closely related and are normally installed or updated simultaneously. You should not attempt to mix-and-match Tcl and Tk versions. References to a specific version of Tk assume the corresponding version of Tcl is installed as well.
The Python for Mac OS X installers downloaded from this website dynamically link at runtime to Tcl/Tk Mac OS X frameworks. The Tcl/Tk major version is determined when the installer is created and cannot be overridden. The Python 64-bit/32-bit Mac OS X installers for Python 3.5.x, 3.4.x, 3.3.x, 3.2.x, and 2.7.x dynamically link to Tcl/Tk 8.5 frameworks. 32-bit-only Python installers for Mac OS X dynamically link to Tcl/Tk 8.4 frameworks.
In either case, the dynamically linking occurs when tkinter (Python 3) or Tkinter (Python 2) is first imported (specifically, the internal _tkinter C extension module). By default, the Mac OS X dynamic linker looks first in /Library/Frameworks for Tcl and Tk frameworks with the proper major version. This is the standard location for third-party or built from source frameworks, including the ActiveTcl releases. If frameworks of the proper major version are not found there, the dynamic linker looks for the same version in /System/Library/Frameworks, the location for Apple-supplied frameworks shipped with Mac OS X. (Note, you should normally not modify or delete files in /System/Library.)
------------------------python.org excerpt ends-----------------------
[doublepost=1474021004][/doublepost]Seems like my concerns are real, so I now need get Python to use the recommended version. I just tested the installation by opening IDLE and, although able to print a line, it gave the following message immediately:
---------IDLE message begins----------
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "copyright", "credits" or "license()" for more information.
>>> WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable.
Visit http://www.python.org/download/mac/tcltk/ for current information.
print ("oi, veh!")
oi, veh!
>>>
---------IDLE message ends-----------
Interestingly, the Tcl/Tk (8.5.9) that was the subject of the warning IS, as far as I can tell, the Apple-supplied standard OS equipment. Could the problem be with the Python installation? Thanks in advance for any help.
I am running 10.11.6 on CMP 5,1 and just installed Python 3.5.2 64 bit (python-3.5.3-macos10.6.pkg). Per Python.org recommendation I also installed Tcl/Tk from ActiveState (ActiveTcl8.6.4.1.299124-macosx10.5-i386-x86_64-threaded.dmg). The information I was going on is here at:
https://www.python.org/download/mac/tcltk/
I first installed Python 3.5.2 and then the Tcl/Tk package, but after re-reading the above linked page I am wondering if the installation order is critical and should have been reversed. The excerpt below (specifically the parts I highlighted in red) is what gave me pause. My concern is that the Python installer could have linked Python to the pre-existing Tcl/Tk (I think Apple 8.5.9) rather than the recommended version from ActiveState. Do the Apple native and the ActiveState Tcl/Tk frameworks now coexist on my system in different locations, and is the behavior of the dynamic linker determined only at run time, or does it point to the Tcl/Tk framework to be used when Python is installed?
------------------------python.org excerpt begins---------------------
How Python Chooses Which Tk Library To Use
Note
While Tcl and Tk are separate frameworks and libraries, they are closely related and are normally installed or updated simultaneously. You should not attempt to mix-and-match Tcl and Tk versions. References to a specific version of Tk assume the corresponding version of Tcl is installed as well.
The Python for Mac OS X installers downloaded from this website dynamically link at runtime to Tcl/Tk Mac OS X frameworks. The Tcl/Tk major version is determined when the installer is created and cannot be overridden. The Python 64-bit/32-bit Mac OS X installers for Python 3.5.x, 3.4.x, 3.3.x, 3.2.x, and 2.7.x dynamically link to Tcl/Tk 8.5 frameworks. 32-bit-only Python installers for Mac OS X dynamically link to Tcl/Tk 8.4 frameworks.
In either case, the dynamically linking occurs when tkinter (Python 3) or Tkinter (Python 2) is first imported (specifically, the internal _tkinter C extension module). By default, the Mac OS X dynamic linker looks first in /Library/Frameworks for Tcl and Tk frameworks with the proper major version. This is the standard location for third-party or built from source frameworks, including the ActiveTcl releases. If frameworks of the proper major version are not found there, the dynamic linker looks for the same version in /System/Library/Frameworks, the location for Apple-supplied frameworks shipped with Mac OS X. (Note, you should normally not modify or delete files in /System/Library.)
------------------------python.org excerpt ends-----------------------
[doublepost=1474021004][/doublepost]Seems like my concerns are real, so I now need get Python to use the recommended version. I just tested the installation by opening IDLE and, although able to print a line, it gave the following message immediately:
---------IDLE message begins----------
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "copyright", "credits" or "license()" for more information.
>>> WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable.
Visit http://www.python.org/download/mac/tcltk/ for current information.
print ("oi, veh!")
oi, veh!
>>>
---------IDLE message ends-----------
Interestingly, the Tcl/Tk (8.5.9) that was the subject of the warning IS, as far as I can tell, the Apple-supplied standard OS equipment. Could the problem be with the Python installation? Thanks in advance for any help.