<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=Windows-1252">
</head>
<body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
Here is a report on this effort, including identifying several items that will need to be changed by others for this to be successful.
<div class=""><br class="">
</div>
<div class="">I've successfully compiled GRASS 7 64bit, with wxPython 3.0.2.0 under the current OS (Sierra = OS X 10.12.x). I'm using the most current Kyngesburye frameworks for GDAL, Numpy, and MatPlotLib. </div>
<div class=""><br class="">
</div>
<div class="">No binaries or bundled dependencies yet. </div>
<div class=""><br class="">
</div>
<div class="">Issues that need to be resolved. </div>
<div class=""><br class="">
</div>
<div class="">1. the 'python_wrapper' bash script in ../macosx/app needs to be updated to allow for full 64bit compiling with wxPython. It currently tries to force 32bit Python if wxPython is present. I've done a hack but it is probably not the right thing
 for the long term.</div>
<div class=""><br class="">
</div>
<div class=""> 2. wxGUI needs a several fixes to run correctly with wxPython 3.</div>
<div class=""><br class="">
</div>
<div class="">2.1 When switching from 3D to 2D, the 'rotate 3D' and 'airplane' buttons are not destroyed. They overprint the zoom to map extents button of 2D mode and will crash the GUI if pressed. </div>
<div class=""><br class="">
</div>
<div class="">2.2 A custom control needs to be updated or replaced because it does not recognize mouse clicks. It is used in a number of different places, including in the bivariate histogram tool where it is used to select pairs of maps for histogramming.
 You can navigate this control (a pulldown) with arrow keys but not a mouse. </div>
<div class=""><br class="">
</div>
<div class="">2.3 selecting g.gui.iclass will crash the GUI. I cannot get any error to come up on the console before the crash, and there is nothing in the terminal. </div>
<div class=""><br class="">
</div>
<div class="">That's all I've hit so far. I hope to start working on bundling for a binary next week. </div>
<div class=""><br class="">
</div>
<div class="">Michael<br class="">
<div class="">
<div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div class="">
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-stroke-width: 0px;" class="">
____________________</div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">C. Michael Barton</font></div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">Director, Center for Social Dynamics & Complexity </font></div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">Professor of Anthropology, School of Human Evolution & Social Change</font></div>
<div class=""><font face="Helvetica" size="3" class="">Head, Graduate Faculty in Complex Adaptive Systems Science</font></div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">Arizona State University</font></div>
<div style="color: rgb(0, 0, 0); font-family: Helvetica; font-size: 12px; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-stroke-width: 0px;" class="">
<br class="">
</div>
<font face="Helvetica" size="3" class=""><font class="">voice:  </font><font class="">480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)</font><br class="">
<font class="">fax: 480-965-7671 (SHESC),  480-727-0709 (CSDC)</font><br class="">
</font>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">www: <a href="http://www.public.asu.edu/~cmbarton" class="">
http://www.public.asu.edu/~cmbarton</a>, <a href="http://csdc.asu.edu" class="">http://csdc.asu.edu</a></font></div>
<br class="">
</div>
<br class="">
</div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</div>
</div>
<br class="Apple-interchange-newline">
</div>
<br class="">
<div>
<blockquote type="cite" class="">
<div class="">On Jul 18, 2017, at 2:26 PM, Michael Barton <<a href="mailto:michael.barton@asu.edu" class="">michael.barton@asu.edu</a>> wrote:</div>
<br class="Apple-interchange-newline">
<div class="">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div class="">Yesterday, I sent this message off-list to Anna and Vaclav. Anna asked if I could repost to the dev list. So I'm doing so here. </div>
<div class=""><br class="">
</div>
I have some time (I hope) on an upcoming research trip to NCAR, along with some promised help of software engineers at the CSDMS NSF facility. So I'm going to try again to come up with a new GRASS compiling and binary creation protocol. 
<div class=""><br class="">
</div>
<div class="">I think this will involve the following components:</div>
<div class=""><br class="">
</div>
<div class="">1. Switch from the outdated PackageMaker.app to the current way of making Mac packages. This requires changes to the current binary bundling scripts.<br class="">
<br class="">
2. Bundle all dependencies (including the current, separate frameworks) into the new package distribution so that everything needed is in the grass7.app Can this be done with binary "framework" installations of dependencies or is it necessary to compile all
 from scratch to do this?<br class="">
<br class="">
3. As part of 2, make sure that all dependencies are compiled outside of the /usr folders on the Mac to avoid SIP conflicts<br class="">
<br class="">
4. To accomplish #2 and #3 for wxPython, we probably need to switch to wxPython 3 (or the new wxPython Phoenix if it is working correctly). This would also permit compiling ALL GRASS 64 bit, alleviating additional issues. <br class="">
<br class="">
5. Because of recent change to GRASS GUI and a bug in Mac system Python 2.7.10, it may be necessary to also bundle an updated Python (2.7.11 or higher) with the new grass7.app. This (and #2) would make the installation package significantly larger, but would
 avoid mismatched versions of Python and wxPython. It would also avoid potential conflicts between Mac system Python and other versions a user might have installed (e.g., with Anaconda). </div>
<div class=""><br class="">
</div>
<div class="">Last fall, I was stuck on gettext. I will try again with bundline it, but this may not be solvable by me because it involves a hard-coded path in the build files that point to gettext files in /usr/local and no way to send an alternate path (e.g.,
 a configure argument like '--with_gettext_libs='. This will need to be fixed by whoever manages the build system. Otherwise, I'll have to drop internationalization support for the Mac, which would be a shame. </div>
<div class=""><br class="">
</div>
<div class="">An additional thing to note. While it may be possible for some to get GRASS compiled on the Mac using Homebrew, Macports, etc., the goal here is to create a normal DMG binary that any Mac user can download and install, without having to compile
 GRASS--or to install Linux like package managers first. </div>
<div class=""><br class="">
</div>
<div class="">If anyone has experience in creating Mac DMGs, with bundled dependencies, I'd love to hear from you. Any other suggestions are welcome too. </div>
<div class=""><br class="">
</div>
<div class=""><br class="">
</div>
<div class="">Cheers</div>
<div class="">Michael</div>
<div class="">
<div class="">
<div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div style="letter-spacing: normal; orphans: auto; text-align: start; text-indent: 0px; text-transform: none; white-space: normal; widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div style="orphans: 2; text-align: -webkit-auto; text-indent: 0px; widows: 2; word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<span class="Apple-style-span" style="border-collapse: separate; orphans: 2; text-indent: 0px; widows: 2; border-spacing: 0px;">
<div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;" class="">
<div class="">
<div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-position: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-stroke-width: 0px;" class="">
____________________</div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">C. Michael Barton</font></div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">Director, Center for Social Dynamics & Complexity </font></div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">Professor of Anthropology, School of Human Evolution & Social Change</font></div>
<div class=""><font face="Helvetica" size="3" class="">Head, Graduate Faculty in Complex Adaptive Systems Science</font></div>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">Arizona State University</font></div>
<div style="font-family: Helvetica; font-size: 12px; font-style: normal; font-variant-ligatures: normal; font-variant-caps: normal; font-variant-east-asian: normal; font-variant-position: normal; font-weight: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-stroke-width: 0px;" class="">
<br class="">
</div>
<font face="Helvetica" size="3" class=""><font class="">voice:  </font><font class="">480-965-6262 (SHESC), 480-965-8130/727-9746 (CSDC)</font><br class="">
<font class="">fax: 480-965-7671 (SHESC),  480-727-0709 (CSDC)</font><br class="">
</font>
<div style="font-variant: normal; letter-spacing: normal; line-height: normal; text-transform: none; white-space: normal; word-spacing: 0px; -webkit-text-stroke-width: 0px;" class="">
<font face="Helvetica" size="3" class="">www: <a href="http://www.public.asu.edu/~cmbarton" class="">
http://www.public.asu.edu/~cmbarton</a>, <a href="http://csdc.asu.edu/" class="">
http://csdc.asu.edu</a></font></div>
</div>
</div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</span></div>
</div>
</div>
</div>
<br class="">
</div>
</div>
</div>
</blockquote>
</div>
<br class="">
</div>
</body>
</html>