Patches and problems with OS X 10.6

9 views
Skip to first unread message

Eugene Seliverstov

unread,
Jan 3, 2011, 4:05:11 PM1/3/11
to nanoengi...@googlegroups.com
Hello!

I have some information, patches and questions about building/running NE1 on the OS X 10.6.
As I noticed this OS version is not supported by NE-1.

First of all, my environment:
Operating system - mac OS X 10.6.
Python 2.6 is installed and C compiler is 64-bit by default , but I've switched at every build to python2.5 and 32-bit build.
Python 2.3 and 2.4 are not available for OS X 10.6.

Depends:
python 2.5 (system framework)
qt-4.7 (system framework, latest)
sip-4.11.2 (latest)
pyqt-4.8.1 (latest)
pil-1.1.6 (exact match)
numeric 23.8 (exact match)
pyopengl-3.0.0a6 (exact match, pyopengl-3.0.1 doesn't work)
numarray-1.5.2 (exact match)
ctypes-1.0.3 (little jigher, bundled with python-2.5)
numpy-1.2.1 (little higher, bundled with python-2.5)
nose-0.10.0 (pulled by numpy)
berkeleydb and pybsddb are not used

I haven't tried to build ND-1 and GROMACS/babel stuff.
Here is a patch for building NE-1 on OS X 10.6 with autotools and custom packaging makefile. I can push it to the main repository if you want.

Observed problems:
1. building with non-latest (2.5) python version is hard :) Attached patches fixes some problems. Essential build commands are:
% ./configure PYTHON=python2.5 PKG_CONFIG_PATH=pkg-conf-osx106 CFLAGS="-arch i386" LDFLAGS="-arch i386"
% make CFLAGS="-arch i386" LDFLAGS="-arch i386"

2. building samevals.so with existing makefiles (even with patches) is not possible yet

3. app should be run at 32-bit mode via:
% export VERSIONER_PYTHON_PREFER_32_BIT=yes
% python2.5 main.py

4. several runtime bugs
At startup NE1 shows good default window. Opening existing model also succeeds, but moving cursor to the render window cause model to dissappear and appear a little later with a following error (see attached log): "exception in _paintGL_drawing ignored: <type 'exceptions.IndexError'>: invalid index to scalar variable.". Some other OpenGL artifacts are visible.
Should I reproduce these bugs or log is enough?

Log: http://pastie.org/private/qhzv9ybjzdp3l7ekg


patch_commit_d9f78d30d30f.patch

Bryan Bishop

unread,
Jan 8, 2011, 12:17:18 AM1/8/11
to nanoengi...@googlegroups.com, Eugene Seliverstov, Bryan Bishop
On Mon, Jan 3, 2011 at 3:05 PM, Eugene Seliverstov wrote:
Hello!

Hello Eugene, sorry for my delay in replying.
 
I have some information, patches and questions about building/running NE1 on the OS X 10.6.

Just in case anyone is keeping track at home, I am not presently setup to test on OSX at any version, so you'll have to bare with me. We probably need to deploy the testing environment on the server soon so that we can go through all of these platform checks systematically.
 
Here is a patch for building NE-1 on OS X 10.6 with autotools and custom packaging makefile. I can push it to the main repository if you want.

I'd prefer to pull from you, actually.

But the other issue is that I can't presently confirm/validate these changes, so I'm not exactly sure what the policy should be.

Does anyone have suggestions?

4. several runtime bugs
At startup NE1 shows good default window. Opening existing model also succeeds, but moving cursor to the render window cause model to dissappear and appear a little later with a following error (see attached log): "exception in _paintGL_drawing ignored: <type 'exceptions.IndexError'>: invalid index to scalar variable.". Some other OpenGL artifacts are visible.
Should I reproduce these bugs or log is enough?

Log: http://pastie.org/private/qhzv9ybjzdp3l7ekg

Hmm that's worrisome. The index error seems to be from a glRenderMode(GL_SELECT) call.

- Bryan
http://heybryan.org/
1 512 203 0507

Thomas Fitzsimmons

unread,
Jan 8, 2011, 4:03:49 AM1/8/11
to nanoengi...@googlegroups.com, Eugene Seliverstov, Bryan Bishop
Hi,

Bryan Bishop <kan...@gmail.com> writes:

> On Mon, Jan 3, 2011 at 3:05 PM, Eugene Seliverstov wrote:
>
> Hello!
>
> Hello Eugene, sorry for my delay in replying.
>  
>
> I have some information, patches and questions about building/running NE1 on the OS X 10.6.
>
> Just in case anyone is keeping track at home, I am not presently setup to test on OSX at any version, so you'll have to bare with me. We probably need to deploy
> the testing environment on the server soon so that we can go through all of these platform checks systematically.
>  
>
> Here is a patch for building NE-1 on OS X 10.6 with autotools and custom packaging makefile. I can push it to the main repository if you want.
>
> I'd prefer to pull from you, actually.
>
> But the other issue is that I can't presently confirm/validate these changes, so I'm not exactly sure what the policy should be.
>
> Does anyone have suggestions?

You could designate Eugene as the OS X maintainer, trust that OS
X-specific parts of his patches are fine, and test the
platform-independent parts on your own machine as he submits them.

Thomas

Eugene Seliverstov

unread,
Jan 11, 2011, 9:40:08 AM1/11/11
to nanoengi...@googlegroups.com, Bryan Bishop

On Jan 8, 2011, at 08:17, Bryan Bishop wrote:

> Just in case anyone is keeping track at home, I am not presently setup to test on OSX at any version, so you'll have to bare with me. We probably need to deploy the testing environment on the server soon so that we can go through all of these platform checks systematically.

I understand that. Maybe I will test new releases/features if current version would run without errors.

Which linux platforms do you use for developing and testing NE1? Does a wiki page http://nanoengineer-1.net/mediawiki/index.php?title=NE1_Build_and_Release_System_Overview reflect their environments? Using non-default Python versions makes bootstraping and even workng (as for OS X 10.6) complicated. I'm going to compare OS X build with any stable llnux version.

>
> I'd prefer to pull from you, actually.

I failed to push my new branch to the git repository. Git says 'fatal: The remote end hung up unexpectedly'.
I think it's because of authentification. Maybe you should add to allowed users (I can't use git+ssh repository url).

---
Best regards,
Eugene Seliverstov

Bryan Bishop

unread,
Jan 18, 2011, 2:14:28 PM1/18/11
to Eugene Seliverstov, Bryan Bishop, nanoengi...@googlegroups.com
On Tue, Jan 11, 2011 at 8:40 AM, Eugene Seliverstov <the...@gmail.com> wrote:
On Jan 8, 2011, at 08:17, Bryan Bishop wrote:
> Just in case anyone is keeping track at home, I am not presently setup to test on OSX at any version, so you'll have to bare with me. We probably need to deploy the testing environment on the server soon so that we can go through all of these platform checks systematically.

I understand that. Maybe I will test new releases/features if current version would run without errors.

Right, that's going to take a little effort to get to that point. As far as I can tell, NE1 is fine running with Python 2.5, 2.6 and 2.7. When running it out of the repo, the first set of problems that you probably hit is PyQt4-- NE1 was developed against an older version of PyQt4, so it needs to be upgraded first.

... or you can just break down and install an older version of PyQt4, as explained here:
http://diyhpl.us/~bryan/irc/nanoengineer/compile_nanoengineer
.. which is fine if you're already running Linux in a virtual machine, but in other cases, i.e. running on OSX/Linux, you probably have a more recent version of Qt and using an older version would in all likelihood significantly break your system.
 
Which linux platforms do you use for developing and testing NE1? Does a wiki page http://nanoengineer-1.net/mediawiki/index.php?title=NE1_Build_and_Release_System_Overview reflect their environments? Using non-default Python versions makes bootstraping and even workng  (as for OS X 10.6) complicated. I'm going to compare OS X build with any stable llnux version.

It should work with recent Python versions. I haven't been updating the wiki lately because I have nothing new/working to share, really.
 
> I'd prefer to pull from you, actually.

I failed to push my new branch to the git repository. Git says 'fatal: The remote end hung up unexpectedly'.
I think it's because of authentification. Maybe you should add to allowed users (I can't use git+ssh repository url).

I'd prefer not to do that.. can I pull from you instead, please?

Bryan Bishop

unread,
Jan 18, 2011, 2:17:40 PM1/18/11
to nanoengi...@googlegroups.com, Bryan Bishop
On Mon, Jan 3, 2011 at 3:05 PM, Eugene Seliverstov wrote:
qt-4.7 (system framework, latest)
sip-4.11.2 (latest)
pyqt-4.8.1 (latest)

Quick question-- does that mean you're getting a GUI (at some point), and you're using qt 4.7 and pyqt-4.8? I wonder if my qt segmentation faults are unrelated to NE1.

Eugene Seliverstov

unread,
Jan 18, 2011, 8:19:56 PM1/18/11
to Bryan Bishop, nanoengi...@googlegroups.com

First of all, here are my changes. Repository should be ok.

-----------
The following changes since commit 1fc57f14717c744fa179d6caf76850d90711daa9:

Make getExtensionButton a little more robust in FlyoutToolbar.py in UI (2010-12-16 00:43:09 -0600)

are available in the git repository at:
git://git.omniverse.ru/nanoengineer.git build-osx

theirix (1):
Fixed autotools build on OSX 10.6

ac_ctypes.m4 | 2 +-
ac_numarray.m4 | 2 +-
ac_numeric.m4 | 2 +-
ac_numpy.m4 | 2 +-
ac_pil.m4 | 2 +-
ac_pyopengl.m4 | 2 +-
ac_pyqt.m4 | 2 +-
bootstrap | 4 ++--
cad/src/Makefile | 23 ++++++++++++++++-------
configure.ac | 11 ++++++++---
packaging/MacOSX/SV_AB_Makefile | 20 +++++++++++++++-----
pkg-conf-osx106/QtCore.pc | 12 ++++++++++++
pkg-conf-osx106/QtGui.pc | 12 ++++++++++++
sim/src/Makefile.am | 2 +-
sim/src/bend.py | 2 +-
sim/src/distutils_compile_options.py | 7 +++++--
sim/src/stretch.py | 2 +-
17 files changed, 80 insertions(+), 29 deletions(-)
create mode 100644 pkg-conf-osx106/QtCore.pc
create mode 100644 pkg-conf-osx106/QtGui.pc
-----------

---
Best regards,
Eugene Seliverstov

Reply all
Reply to author
Forward
0 new messages