Opened 13 months ago
Closed 12 months ago
#68550 closed defect (worksforme)
tk @ 8.6.13: KERN_PROTECTION_FAILURE on 10.5 (Intel)
Reported by: | Jazzzny | Owned by: | MarcusCalhoun-Lopez (Marcus Calhoun-Lopez) |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.8.1 |
Keywords: | Cc: | chrstphrchvz (Christopher Chavez) | |
Port: | tk |
Description
When attempting to render a tk widget via X11 on 10.5 (Intel), the tk window will forcibly resize and crash, with the specified widget never rendering.
I have observed this behaviour in every application utilizing tk, including wish (https://wiki.tcl-lang.org/page/Hello%2C+Widgets%21+%28a+rock-bottom+basic+tutorial+in+Tcl+and+Tk%29 for a demo, window renders fine until a window is packed), a simple tkinter application, and the Python IDLE editor.
Attachments (1)
Change History (9)
Changed 13 months ago by Jazzzny
comment:1 Changed 13 months ago by jmroot (Joshua Root)
Milestone: | MacPorts Future |
---|---|
Owner: | set to MarcusCalhoun-Lopez |
Status: | new → assigned |
comment:2 Changed 13 months ago by chrstphrchvz (Christopher Chavez)
Cc: | chrstphrchvz added |
---|
comment:3 Changed 13 months ago by chrstphrchvz (Christopher Chavez)
The crash log is for XQuartz rather than Tk, and for an old version of XQuartz from Apple, so MacPorts cannot fix any issues it has. I doubt that this crash is due to some intentional incompatibility between Tk and older X11 servers.
MacPorts offers relatively newer of versions XQuartz. For 10.5 Leopard, there is xorg-server-1.18 and xorg-server-legacy; I believe the latter is recommended.
comment:4 follow-up: 5 Changed 13 months ago by Jazzzny
Installing xorg-server-legacy and running tk programs through its X11.app now works properly. However, running applications directly still launches the Apple XQuartz. Can I override the default X11 server?
Thanks
comment:5 Changed 13 months ago by chrstphrchvz (Christopher Chavez)
Replying to Jazzzny:
Installing xorg-server-legacy and running tk programs through its X11.app now works properly. However, running applications directly still launches the Apple XQuartz. Can I override the default X11 server?
The notes for the xinit port say to log out and log back in to have MacPorts’ XQuartz be the default. If you want or need to try removing Apple XQuartz, however, maybe try the commands at https://www.xquartz.org/FAQs.html#messed-it-up-got-confused-want-to-start-over-leopard:
- Delete pretty much all X11 from you system, and let it forget its receipts
sudo rm -rf /usr/X11* /System/Library/Launch*/org.x.* /Applications/Utilities/X11.app /etc/*paths.d/X11 sudo pkgutil --forget com.apple.pkg.X11DocumentationLeo sudo pkgutil --forget com.apple.pkg.X11User sudo pkgutil --forget com.apple.pkg.X11SDKLeo sudo pkgutil --forget org.x.X11
comment:6 Changed 13 months ago by ryandesign (Ryan Carsten Schmidt)
Unloading Xquartz's launchd plist before deleting it would be a good idea.
comment:7 Changed 13 months ago by Jazzzny
After a bit of tinkering, I've figured out the process:
- Follow comment 5 to remove XQuartz
- This will uninstall Xterm, so reinstall it with MacPorts
- Load the MacPorts startx with sudo launchctl load -w /Library/LaunchAgents/org.macports.startx.plist
- Reboot
With these steps, all X11 apps are now using xorg-server-legacy.
Thanks for the help, everyone
comment:8 Changed 12 months ago by neverpanic (Clemens Lang)
Resolution: | → worksforme |
---|---|
Status: | assigned → closed |
Crash log