Mercurial > public > pelican-blog
view content/Coding/012-windows-trac-upgrade-2.rst @ 4:7ce6393e6d30
Adding converted blog posts from old blog.
author | Brian Neal <bgneal@gmail.com> |
---|---|
date | Thu, 30 Jan 2014 21:45:03 -0600 |
parents | |
children |
line wrap: on
line source
Upgrading Trac on Windows Gotcha - Part 2 ######################################### :date: 2012-03-21 20:10 :tags: Python, Trac, Subversion, Windows :slug: upgrading-trac-on-windows-gotcha-part-2 :author: Brian Neal I have `previously reported`_ on some problems I had when upgrading our Trac_ install at work. Today I attempted another upgrade to Subversion_ 1.7.4 and Trac 0.12.3 on Windows. I upgraded to Python_ 2.7.2 along the way. I ran into another problem with the Python bindings to Subversion which took a while to figure out. I had no problems upgrading Subversion, but Trac could not see our repository. The symptoms were that the Trac "timeline" and "browse source" features were missing. Following the `Trac troubleshooting advice`_, I opened an interactive Python session and tried this: :: E:\Trac_Data>python Python 2.7.2 (default, Jun 12 2011, 15:08:59) [MSC v.1500 32 bit (Intel)] on win 32 Type "help", "copyright", "credits" or "license" for more information. >>> from svn import client Traceback (most recent call last): File "<stdin>", line 1, in <module> File "C:\Python27\lib\site-packages\svn\client.py", line 26, in <module> from libsvn.client import * File "C:\Python27\lib\site-packages\libsvn\client.py", line 25, in <module> _client = swig_import_helper() File "C:\Python27\lib\site-packages\libsvn\client.py", line 21, in swig_import _helper _mod = imp.load_module('_client', fp, pathname, description) ImportError: DLL load failed: The operating system cannot run %1 After some head scratching and googling I finally found the problem. I had used the Windows .msi installer, `graciously provided by Alagazam`_, aka David Darj, to install Subversion. This placed the Subversion binaries and DLL's in ``C:\Program Files\Subversion\bin``. I then unzipped the Python 2.7 bindings to the ``C:\Python27\Lib\site-packages`` folder. The bindings depend on the DLL's in the ``Subversion\bin`` folder. But unfortunately for me, there were already two older versions of the DLL's, ``libeay32.dll`` and ``ssleay32.dll`` on my path. So when the bindings went looking for those two DLL's, instead of finding them in ``Subversion\bin``, it found the older versions somewhere else. To fix this, you can either rearrange your path, or copy those two DLL's to your ``Python27\Lib\site-packages\libsvn`` folder. In the future, I am going to just copy all the DLL's from ``Subversion\bin`` to the ``libsvn`` folder. I examined the pre-built Subversion packages from Bitnami_ and CollabNet_. They had packaged all of the Subversion DLL's with the Python bindings together in the same directory, so this seems reasonable. Later, on the Subversion users' mailing list, Alagazam gave the nod to this approach. A big thank you to Alagazam for the help and for the Windows binaries. And of course thanks to the Apache_, Subversion_, Trac_, & Python_ teams for making great tools. .. _previously reported: /2011/09/12/upgrading-trac-on-windows-gotchas .. _Trac: http://trac.edgewall.org/ .. _Subversion: http://subversion.apache.org/ .. _Trac troubleshooting advice: http://trac.edgewall.org/wiki/TracSubversion#Checklist .. _graciously provided by Alagazam: http://sourceforge.net/projects/win32svn/ .. _Bitnami: http://bitnami.org/ .. _CollabNet: http://www.collab.net/ .. _Python: http://www.python.org/ .. _Apache: http://subversion.apache.org/