Thank you for the very fast response—excuse my slowness, caused by not 
setting up email alerts properly.

Starting with last question first, the Python library/executable files:

1. Python / 'libpython2.7.so'
======================

*$ find /Applications/Canopy.app -name Python -print*

   1. /Applications/Canopy.app/Contents/Python
   2. 
   /Applications/Canopy.app/Contents/Resources/Python.app/Contents/MacOS/Python
   3. 
   
/Applications/Canopy.app/Contents/Resources/PythonNoDock.app/Contents/MacOS/Python
   4. 
   
/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/Python
   5. 
   
/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/Resources/Python.app/Contents/MacOS/Python
   6. 
   
/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/Resources/PythonNoDock.app/Contents/MacOS/Python

*items 1,4: Mach-O 64-bit dynamically linked shared library x86_64
*items 2,3,5,6: Mach-O 64-bit executable x86_64

Item 1 is the source file for the following symlinks:

   -     ~/Library/Enthought//Canopy_64bit/User/Python
   -     ~/Library/Enthought//Canopy_64bit/System/Python
   -     ~/Library/Enthought//Canopy_64bit/User/lib/libpython2.7.dylib
   -     ~/Library/Enthought//Canopy_64bit/System/lib/libpython2.7.dylib
   

Item 1 otool output:
    Mach header
          magic cputype cpusubtype  caps    filetype ncmds sizeofcmds     
 flags
    MH_MAGIC_64  X86_64        ALL  0x00       DYLIB    12       1656   
NOUNDEFS DYLDLINK TWOLEVEL NO_REEXPORTED_DYLIBS

4 additional 'Python' executables in ~
--------------------------------------------------

   - 
   
~/Library/Enthought//Canopy_64bit/User/Resources/Python.app/Contents/MacOS/Python
   - 
   
~/Library/Enthought//Canopy_64bit/System/Resources/Python.app/Contents/MacOS/Python
   - 
   
~/Library/Enthought//Canopy_64bit/User/Resources/PythonNoDock.app/Contents/MacOS/Python
   - 
   
~/Library/Enthought//Canopy_64bit/System/Resources/PythonNoDock.app/Contents/MacOS/Python
   
* all Mach-O 64-bit executable x86_64


2. SDKs
=======

My mac (OSX 10.11) has 3 SDKs installed after multiple OS X and XCode 
updates:

   - /Developer/SDKs/MacOSX10.5.sdk/
   - /Developer/SDKs/MacOSX10.6.sdk.hide/
   - 
   
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/bin/apr-1-config
   
Note the '.hide' appended to the 10.6 SDK. Compilation of mod_wsgi-express 
didn't work until I did that. 10.6 is only there in response to an earlier 
Canopy issue. I installed it in Mavericks after seeing this Canopy support 
post 
<https://support.enthought.com/hc/en-us/articles/204469410-OS-X-GCC-Clang-and-Cython-in-10-9-Mavericks>
.


3. Canopy lib folders
================

$ tree /Applications/Canopy.app/Contents/lib/
/Applications/Canopy.app/Contents/lib/
└── python2.7
    ├── config
    │   ├── Makefile
    │   ├── Setup
    │   ├── Setup.config
    │   ├── Setup.local
    │   ├── config.c
    │   ├── config.c.in
    │   ├── enthought.dat
    │   ├── install-sh
    │   ├── libpython2.7.a
    │   ├── libpython2.7.dylib
    │   ├── makesetup
    │   └── python.o
    ├── lib-dynload
    │   └── fcntl.so
    ├── os.py
    └── site.py


Other lib directories in Canopy default virtual environments.

   - ~/Library/Enthought/Canopy_64bit//System/lib
   - ~/Library/Enthought/Canopy_64bit//User/lib
   

4. httpd
======

$ file /usr/sbin/httpd
/usr/sbin/httpd: Mach-O 64-bit executable x86_64


5. mod-wsgi-py27.so
=================

   - path: 
   
~/Library/Enthought/Canopy_64bit/User//lib/python2.7/site-packages/mod_wsgi-4.5.1-py2.7-macosx-10.6-x86_64.egg/mod_wsgi/server/mod_wsgi-py27.so
   - size: 241Kb
   - file: Mach-O 64-bit bundle x86_64
   - otool:
   
      magic cputype cpusubtype  caps    filetype ncmds sizeofcmds      flags
MH_MAGIC_64  X86_64        ALL  0x00      BUNDLE    13       1672   
NOUNDEFS DYLDLINK TWOLEVEL


6. *-config files
===========

python2.7-config
----------------------

   - /usr/bin/python2.7-config
   - 
   /System/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config
   - 
   
/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/bin/python2.7-config
   - ~/Library/Enthought/Canopy_64bit/System/bin/python2.7-config
   - ~/Library/Enthought/Canopy_64bit/User/bin/python2.7-config


apr-1-config
----------------

   - 
   
/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.11.sdk/usr/bin/apr-1-config
   - /Developer/SDKs/MacOSX10.5.sdk/usr/bin/apr-1-config
   - /Developer/SDKs/MacOSX10.6.sdk.hide/usr/bin/apr-1-config
   - /usr/bin/apr-1-config
   - /usr/local/Library/ENV/4.3/apr-1-config
   

Thanks for your time and for any further pointers,

Stephen



On Wednesday, April 13, 2016 at 11:43:32 AM UTC+1, Graham Dumpleton wrote:
>
> Actually this could just be it not even finding the Python framework. On 
> older MacOS X versions it wasn’t uncommon for third party Python 
> installations to screw things up so that it wasn’t actually possible to 
> link to their framework from a separate application.
>
> All the LD_RUN_PATH is not used on MacOS X. That is Linux or Solaris.
>
> I can’t remember how to you fix up the framework reference in mod_wsgi.so 
> if it is broken.
>
> I don’t think you can simply set the environment variable:
>
>
>   
> DYLD_LIBRARY_PATH=/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/lib
>
> when running mod_wsgi-express.
>
> That doesn’t seem to be the correct directory for where the framework 
> library might be installed anyway.
>
> What do you get for:
>
>     find /Applications/Canopy.app -name Python -print
>
> Graham
>
> On 13 Apr 2016, at 8:34 PM, Graham Dumpleton <[email protected] 
> <javascript:>> wrote:
>
> Are you really running MacOS X 10.6?
>
> This issue used to come up in old MacOS X versions.
>
> The problem is that one of Apache, mod_wsgi or the Python library doesn’t 
> have a binary image in it for the required architecture. That is, 32 bit or 
> 64 bit.
>
> What do you get when you run:
>
>     file mod_wsgi-py27.so
>
>     file /usr/sbin/httpd
>
>     file 
> /Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/lib/
> libpython2.7.so
>
> You may have to work out the correct path for each of these.
>
> There was some notes about related issue in really old documentation on 
> old Google Code site about things like this.
>
>     
> https://code.google.com/archive/p/modwsgi/wikis/InstallationOnMacOSX.wiki
>
> Graham
>
> On 13 Apr 2016, at 8:25 PM, SGaffney <[email protected] <javascript:>> 
> wrote:
>
> Hello,
>
> I'm struggling with installation of mod_wsgi-express in my Canopy 
> distribution. Compilation works fine (output from python setup.py install 
> is attached), but when I run `mod_wsgi-express start-server`, I get the 
> error "Library not loaded: @rpath/Python" (follows email).
>
> From related support posts, I see that setting the LD_RUN_PATH at 
> compilation is crucial, but the setup.py file seems to get mine right:
> *[from debugger inspection in setup.py before "# Now finally run 
> distutils."]*
> >> *LD_RUN_PATH*
>
> '/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/lib:/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/config'
> >> *PYTHON_LDFLAGS*
> ['-L/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/lib',
>  
> '-L/Applications/Canopy.app/appdata/canopy-1.6.2.3262.macosx-x86_64/Canopy.app/Contents/lib/python2.7/config']
> >> *PYTHON_LDLIBS*
> ['-lpython2.7']
>
> And here's the output of ldd on the .so file:
> > ldd mod_wsgi-py27.so
> @rpath/Python (compatibility version 2.7.0, current version 2.7.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 
> 1226.10.1)
>
> I'd be very grateful for any suggestions.
>
> Thank you,
>
> Stephen
>
> -------
>
> $ mod_wsgi-express start-server
> Server URL         : http://localhost:8000/
> Server Root        : /tmp/mod_wsgi-localhost:8000:502
> Server Conf        : /tmp/mod_wsgi-localhost:8000:502/httpd.conf
> Error Log File     : /tmp/mod_wsgi-localhost:8000:502/error_log (warn)
> Request Capacity   : 5 (1 process * 5 threads)
> Request Timeout    : 60 (seconds)
> Queue Backlog      : 100 (connections)
> Queue Timeout      : 45 (seconds)
> Server Capacity    : 20 (event/worker), 20 (prefork)
> Server Backlog     : 500 (connections)
> Locale Setting     : en_GB.UTF-8
> httpd (mod_wsgi-express) : Syntax error on line 151 of 
> /tmp/mod_wsgi-localhost:8000:502/httpd.conf: Cannot load 
> /Users/sgg/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/mod_wsgi-4.5.1-py2.7-macosx-10.6-x86_64.egg/mod_wsgi/server/mod_wsgi-py27.so
>  
> into server: 
> dlopen(/Users/sgg/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/mod_wsgi-4.5.1-py2.7-macosx-10.6-x86_64.egg/mod_wsgi/server/mod_wsgi-py27.so,
>  
> 10): *Library not loaded: @rpath/Python*\n  Referenced from: 
> /Users/sgg/Library/Enthought/Canopy_64bit/User/lib/python2.7/site-packages/mod_wsgi-4.5.1-py2.7-macosx-10.6-x86_64.egg/mod_wsgi/server/mod_wsgi-py27.so\n
>  
>  Reason: image not found
>
>
> -- 
> You received this message because you are subscribed to the Google Groups 
> "modwsgi" group.
> To unsubscribe from this group and stop receiving emails from it, send an 
> email to [email protected] <javascript:>.
> To post to this group, send email to [email protected] <javascript:>
> .
> Visit this group at https://groups.google.com/group/modwsgi.
> For more options, visit https://groups.google.com/d/optout.
> <setup.py_install_output.txt>
>
>
>
>

-- 
You received this message because you are subscribed to the Google Groups 
"modwsgi" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Reply via email to