On Tue, Apr 10, 2012 at 05:50:53PM +0200, Edward d'Auvergne wrote:
Hi, I've now used the info and patch files for fink and rebuilt the wxPython fink package. Initially the MemoryError was still present on my remote build system. But this is now solved as I have managed to convince the sys admin to increase amount of RAM available to the remote virtual machine from ~850 Mb to ~960 Mb. I do not see the problem you are seeing, it's unfortunately not reproducible on my system. I have a fully maximised relax window. Do you see the same if you run: $ /sw/bin/python2.7 /sw/bin/relax --gui --debug This should set the window size to the default of 1000x600 pixels. Without the --debug flag, I use the wx.MAXIMIZE style for the main window (as well as a call to wx.Frame.Maximize() for the problematic MS Windows version), so this should be maximised twice on the Mac (the native Mac widgets ignore both of these!).
Edward, Using... /sw/bin/python2.7 /sw/bin/relax --gui --debug does produce the smaller window which is the correct size for the surrounding window frame. If I remove the --debug, I see to get the same 1000x600 pixel of content drawn into a much larger window frame. I've attached a screen capture of the window as a tiff file.
I do however see a little frameless window in the top left hand corner with the relax Ulysses butterfly icon in it. I'm guessing this is the failure of the dock icon described below, though this needs testing.
Are you always running relax on Mac OS X remotely? What happens if you log directly into the Mac where the fink relax package is installed and execute... /sw/bin/python2.7 /sw/bin/relax --gui
As for the test suite, once the GUI tests run I see the little frameless window with the relax butterfly icon in it, and a new one appears for each test!? However this completes successfully and these windows are all closed at the end. All tests pass (apart from the skipped scipy tests as scientific-python is installed by fink instead), and the segfault you saw is not present on my 10.6.8 Mac system. There are a few strange behaviours with this wxPython version (2.8.12.1) from fink. The first is that the relax menu bar is not integrated into the standard Mac toolbar at the top of the screen but is a normal GTK+ menubar in addition to the Mac toolbar. The second is that the relax icon in the dock is not set on the fink version, it should be the relax butterfly icon. Lastly, the fink version is running via X.
This should be expected as we are building relax against the X version of wxgtk. I don't believe either fink or macports has a native Mac interface gtk package (as far as I know everything goes through X11).
This is not the case if I use the Xcode python version. From the '/usr/bin/python2.6 relax -i' print out, I see: wxPython True 2.8.12.1 /usr/local/lib/wxPython-unicode-2.8.12.1/lib/python2.6/site-packages/wx-2.8-mac-unicode/wx I think this wxPython was manually installed using the wxPython2.8-osx-unicode-2.8.12.1-universal-py2.6.dmg file from http://wxpython.org/download.php on top of the fink Python2.6 install (I cannot remember exactly, as I have so many Python and wxPython installs and reinstalls on this system). From the fink version '/sw/bin/python2.7 relax -i', I see: wxPython True 2.8.12.1 /sw/lib/python2.7/site-packages/wx-2.8-gtk2-unicode/wx Using the first version, the menubar is integrated into the toolbar, the relax icon is set for the dock icon, and X is not being used. Though the maximize calls are ignored and the default 1000x600 is being used for the main window, and the test suite adds the relax icon to the dock when the GUI tests are run (this is currently unavoidable). So the wxPython from the official website is not using wxGTK for the widget set but is using the native Mac widgets. I will now fully test out the GUI under wxGTK from the fink install, but without being able to reproduce the main window problem or the segfault, I unfortunately cannot do much about that until I work out how to make this fail in my own hands. I'll play around and try to fix the wxGTK dock icon problem anyway. Is there a reason why the native Mac widgets are not being used with the fink version of wxPython? Cheers, Edward 2012/4/6 Jack Howarth <howarth@xxxxxxxxxxxxxxxx>:On Thu, Apr 05, 2012 at 03:22:47PM +0200, Edward d'Auvergne wrote:Hi, Ok, this is bad, the error is clearly here in fink: http://fink.cvs.sourceforge.net/fink/dists/10.4/stable/main/finkinfo/languages/wxgtk2.8-py.info?view=markup. Specifically the lines: ----- Package: wxgtk2.8-py%type_pkg[python] Version: 2.8.9.1 ----- and: ----- wxgtk2.8 (>=2.8.10-24), ----- This is wxPython 2.8.9.1 running with wxGTK 2.8.10-24 (or higher) - that cannot work. The versions need to match. Maybe fixing this wxPython/wxGTK problem within fink will eliminate the problems for the fink install of relax (but unfortunately not the relax Application in the DMG image file that others are seeing). Regards, EdwardEdward, Try the attached packaging in /sw/fink/10.6/local/main/finkinfo. It updates wxgtk2.8 to 2.8.12 (the latest 2.8) and wxgtk2.8-py to 2.8.12.1. I've also required wxgtk2.8-py >= 2.8.12.1 for relax-py-1.3.14-1. I still see the window viewport being drawn to small initially but I don't get the warnings from wxgtk any more. JackOn 5 April 2012 15:09, Edward d'Auvergne <edward@xxxxxxxxxxxxx> wrote:Hi Jack, I am having extreme difficulty in finding what is wrong here. I cannot avoid the memory error message! I can chase it to a wx Timer element in something called the relax controller, but that's it. This really looks like a broken wxPython install in fink. The starting message that we both see: /sw/lib/python2.7/site-packages/wx-2.8-gtk2-unicode/wx/_core.py:14448: UserWarning: wxPython/wxWidgets release number mismatch warnings.warn("wxPython/wxWidgets release number mismatch") might be indicating the failure point. wxPython and wxWidgets should both really be at the same version. I would guess that the http://pdb.finkproject.org/pdb/package.php/wxgtk2.8-py27 fink package (the 2.8.9.1-6 version) is broken. I am completely stuck and cannot move further with this problem. How do we get in contact with the maintainer of this package? Sorry, Edward On 3 April 2012 13:43, Edward d'Auvergne <edward@xxxxxxxxxxxxx> wrote:Hi, I think I'll have to do some more testing for this! Due to my very limited access to the Mac I am testing this on, progress will be slow. I will probably need some time to debug relax using the old Mac gtk+ version of the wx widgets, and will definitely release a new version (1.3.15) prior to that. So maybe it's safe to send out the newer relax versions to fink, as the prompt/scripting UI modes function perfectly anyway? Cheers, Edward On 2 April 2012 23:04, Jack Howarth <howarth@xxxxxxxxxxxxxxxx> wrote:On Mon, Apr 02, 2012 at 10:18:15PM +0200, Edward d'Auvergne wrote:Hi Jack, I've finally placed the relax-py.info and relax-py.patch files into /sw/fink/10.4/local/main/finkinfo and installed the 1.3.14 relax version via fink (with 'fink install relax-py27'). I have to be careful as I have three different relax installs (the fink one, an svn copy, and the DMG file version) as well as three different Python installs (2 from fink and a manual install with Mac framework). When I test the GUI with the fink version, my message is: $ /sw/bin/python2.7 /sw/bin/relax --gui /sw/lib/python2.7/site-packages/wx-2.8-gtk2-unicode/wx/_core.py:14448: UserWarning: wxPython/wxWidgets release number mismatch warnings.warn("wxPython/wxWidgets release number mismatch") ***MEMORY-ERROR***: python2.7[878]: GSlice: assertion failed: aligned_memory == (gpointer) addr Abort trap $ This is using the 2.8 version of wxPython which fink automatically installs and which appears to be fatal! How do I install wxPython 2.9 into the /sw directory without damaging the fink setup? For my testing and included in the DMG file, I has used wxPython 2.9.2.4. Cheers, EdwardEdward, I did a build against Xcode 4.2 on x86_64 fink for darwin10 and it didn't crash. I have... ii wxgtk2.8 2.8.10-30 Cross-platform GUI API - unix/gtk version ii wxgtk2.8-py27 2.8.9.1-6 Python bindings for the wxGTK library ii wxgtk2.8-shlibs 2.8.10-30 Shared libraries for wxgtk2.8-shlibs Did you do a 'fink selfupdate-cvs' and 'fink update-all' to make sure you are getting the lastest packaging? Jack ps I get... relax --gui /sw/lib/python2.7/site-packages/wx-2.8-gtk2-unicode/wx/_core.py:14448: UserWarning: wxPython/wxWidgets release number mismatch warnings.warn("wxPython/wxWidgets release number mismatch") Thank you for citing: relaxGUI ======== Bieri, M., d'Auvergne, E. J. and Gooley, P. R. (2011). relaxGUI: a new software for fast and simple NMR relaxation data analysis and calculation of ps-ns and micro-s motion of proteins J. Biomol. NMR, (http://dx.doi.org/10.1007/s10858-011-9509-1). relax ===== d'Auvergne, E. J. and Gooley, P. R. (2008). Optimisation of NMR dynamic models I. Minimisation algorithms and their performance within the model-free and Brownian rotational diffusion spaces. J. Biomol. NMR, 40(2), 107-119 (http://dx.doi.org/10.1007/s10858-007-9214-2). d'Auvergne, E. J. and Gooley, P. R. (2008). Optimisation of NMR dynamic models II. A new methodology for the dual optimisation of the model-free parameters and the Brownian rotational diffusion tensor. J. Biomol. NMR, 40(2), 121-133 (http://dx.doi.org/10.1007/s10858-007-9213-3).On 26 March 2012 19:54, Jack Howarth <howarth@xxxxxxxxxxxxxxxx> wrote:On Mon, Mar 26, 2012 at 07:16:31PM +0200, Edward d'Auvergne wrote:Hi Jack, Thank you for updating this! From memory, I did see a similar problem when I was using the fink versions of all the software required. Though I also had many problems with dependency clashes with Python, wxPython, numpy, and scipy (note this is different to Scientific Python which is no longer a dependency, see http://pdb.finkproject.org/pdb/package.php/scipy-py27) - I had to use the sources and these different relax dependencies had their own dependencies which were not compatible with each other. The problem, I think, was the dependance on different gcc versions, so each was taking a day or longer to build as fink kept rebuilding the full tool chain. Anyway, that's not completely related to this problem and might already be resolved in fink. The problem looks more like a wxPython issue. Would you be able to tell me the fink repository software and versions you used for this so I can try to replicate the problem? Do you use the binary distribution archive for the dependencies or have fink compile from the source archives? I am using XCode 3.2.2, but I don't think using 4.2 will change this problem. If you had the exact sequence of fink commnds to set the relax dependencies up, that would be appreciated as I could then be sure that I have close to the same setup as you. Then I could debug and find the exact xwgtk problem, and come up with a special work around. Cheers! EdwardEdward, Try the attached packaging placed in /sw/fink/10.4/local/main/finkinfo. I don't know how old your fink installation is. If it is rather old, you might want to consider a clean bootstrap following the instructions on http://www.finkproject.org/download/srcdist.php. You will want to move aside your current fink installation from /sw to /sw.old beforehand. Also make sure you do 'fink selfupdate-cvs' and 'fink update-all' to keep your trees and installation current. You should be able to just use 'fink install relax-py27' to install relax 1.3.14. I would also consider upgrading your Xcode to 3.2.6 which is the last release of the 3.2.x series. Oh, on darwin10, I used the gcc46 compilers for the build, when prompted, if that makes any difference. Jack ps I also have built relax 1.3.14 under fink but had to use the 2.9.3 release of wxPython because that is the only wxPython they have for python 2.7 in macports. Have you tested relax against the wxPython 2.9.3 release on linux or any other target?On 26 March 2012 18:14, Jack Howarth <howarth@xxxxxxxxxxxxxxxx> wrote:Edward, I am in the process of updating the relax-py and relax packages in fink and macports to the latest release. However I am seeing some oddities with the new gui interface. In both cases, relax 1.3.13 and 1.3.14 exhibits a bug when executed as 'relax --gui'. The gui interface window opens much larger than the displayed contents. Only if I refresh the window does the contents properly expand out to the actual size of the window (by clicking on the green zoom button in the window frame twice). If I move aside the window, I also see a small square with a butterfly icon left on the screen. This square can't be closed or moved. Running 'relax --test-suite' is even more problematic as it seems to be trapped in an endless loop of display the squares with the butterfly icon and segfaults on exiting... % relax --test-suite /sw/lib/python2.7/site-packages/wx-2.8-gtk2-unicode/wx/_core.py:14448: UserWarning: wxPython/wxWidgets release number mismatch warnings.warn("wxPython/wxWidgets release number mismatch") Echoing of user function calls has been enabled. ############################# # System / functional tests # ############################# ......................................................................................................................................................................................................................................... ---------------------------------------------------------------------- Ran 233 tests in 291.075s OK ############## # Unit tests # ############## ................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................................ ---------------------------------------------------------------------- Ran 1232 tests in 11.183s OK ############# # GUI tests # ############# (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type . (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type . (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type (python2.7:9037): Gtk-WARNING **: Unable to find default local directory monitor type .. ---------------------------------------------------------------------- Ran 4 tests in 70.926s OK ################################### # Summary of the relax test suite # ################################### # Optional packages/modules ########################### No tests skipped due to missing modules. # Synopsis ########## System/functional tests ......................................... [ OK ] Unit tests ...................................................... [ OK ] GUI tests ....................................................... [ OK ] Synopsis ........................................................ [ OK ] Segmentation fault It is odd that the GUI tests pass but that relax segfaults in the process. Jack ps This is on x86_64 fink under darwin10 using Xcode 4.2. _______________________________________________ relax (http://nmr-relax.com) This is the relax-users mailing list relax-users@xxxxxxx To unsubscribe from this list, get a password reminder, or change your subscription options, visit the list information page at https://mail.gna.org/listinfo/relax-users
Attachment:
relax_window.tiff
Description: TIFF image