I've done that and nothing changes.  Also, if I export DYLD_LIBRARY_PATH 
right before running mod_wsgi-express, I still don't see it listed in the 
envvar output?  

This is confusing me!

On Wednesday, August 24, 2016 at 7:58:38 PM UTC-4, Graham Dumpleton wrote:
>
> Crap, gave you wrong URL for test app. I meant:
>
>
> https://raw.githubusercontent.com/GrahamDumpleton/mod_wsgi/develop/tests/environ.wsgi
>
> Doesn’t matter.
>
> If the directory /ade/b/3071542110/oracle/rdbms/lib doesn’t exist, then 
> output form ‘otool -L’ isn’t what I expect. You had:
>
> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so:
>
> /ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1 (compatibility 
> version 0.0.0, current version 0.0.0)
> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current version 
> 1226.10.1)
>
> Based on that, the directory '/ade/b/3071542110/oracle/rdbms/lib’ should 
> exist and should contain the file 'libclntsh.dylib.11.1’.
>
> If it doesn’t, fine where 'libclntsh.dylib.11.1’ is located and set 
> DYLD_LIBRARY_PATH to the directory it is in.
>
> Graham
>
> On 25 Aug 2016, at 9:54 AM, Teemu Korpijaakko <[email protected] 
> <javascript:>> wrote:
>
> Oh, right!  The browser window...there I see Hello World!
>
> That folder doesn't exist on the machine, but if I export first, I get the 
> same result. 500 Internal Server Error and the same error in error_log.
>
>
>
> On Wed, Aug 24, 2016 at 7:32 PM, Graham Dumpleton <[email protected] 
> <javascript:>> wrote:
>
>> For the environ WSGI script. The values of DYLD variables was interested 
>> in was what was shown in the browser window, not console. But then that 
>> wasn’t in console anyway, means shouldn’t be in browser either.
>>
>> I don’t understand why it would be required, but try setting:
>>
>>     export DYLD_LIBRARY_PATH=/ade/b/3071542110/oracle/rdbms/lib
>>
>> before running mod_wsgi-express.
>>
>> This would normally be the solution, but don’t understand why would if 
>> ‘otool -L’ resolves properly.
>>
>> Graham
>>
>> On 25 Aug 2016, at 9:23 AM, Teemu Korpijaakko <[email protected] 
>> <javascript:>> wrote:
>>
>> I'm nearly 100% certain that I unset it when I ran 'otool -L'
>>
>> Anyway, so the apachectl script is as expected.
>>
>> Here's the output after adding env to envvars:
>>
>> Server URL         : http://localhost:8000/
>>
>> Server Root        : /tmp/mod_wsgi-localhost:8000:501
>>
>> Server Conf        : /tmp/mod_wsgi-localhost:8000:501/httpd.conf
>>
>> Error Log File     : /tmp/mod_wsgi-localhost:8000:501/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_US.UTF-8
>>
>> MOD_WSGI_MODULES_DIRECTORY=/usr/libexec/apache2
>>
>> MOD_WSGI_SERVER_ROOT=/tmp/mod_wsgi-localhost:8000:501
>>
>> SHELL=/bin/bash
>>
>> TERM=xterm-256color
>>
>> SSH_CLIENT=192.168.254.106 56498 22
>>
>> TMPDIR=/var/folders/wd/kg12dkg908n42nzf75w6pr540000gn/T/
>>
>> SSH_TTY=/dev/ttys003
>>
>> LC_ALL=en_US.UTF-8
>>
>> USER=teemu
>>
>> MOD_WSGI_LISTENER_HOST=localhost
>>
>> __CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0
>>
>> PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
>>
>> MAIL=/var/mail/teemu
>>
>> MOD_WSGI_HTTPS_PORT=None
>>
>> VERSIONER_PYTHON_VERSION=2.7
>>
>> PWD=/Users/teemu/edge_tools
>>
>> LANG=en_US.UTF-8
>>
>> MOD_WSGI_HTTP_PORT=8000
>>
>> HOME=/Users/teemu
>>
>> SHLVL=2
>>
>> MOD_WSGI_GROUP=staff
>>
>> MOD_WSGI_USER=teemu
>>
>> LOGNAME=teemu
>>
>> MOD_WSGI_WORKING_DIRECTORY=/Users/teemu/edge_tools
>>
>> VERSIONER_PYTHON_PREFER_32_BIT=no
>>
>> SSH_CONNECTION=192.168.254.106 56498 192.168.101.61 22
>>
>> _=/usr/bin/env
>>
>> I don't see DYLD_LIBRARY_PATH there.
>>
>> When I run you test application, I see the following output:
>>
>> Teemus-Mac-mini:edge_tools teemu$ flask/bin/mod_wsgi-express start-server 
>> events.wsgi
>>
>> Server URL         : http://localhost:8000/
>>
>> Server Root        : /tmp/mod_wsgi-localhost:8000:501
>>
>> Server Conf        : /tmp/mod_wsgi-localhost:8000:501/httpd.conf
>>
>> Error Log File     : /tmp/mod_wsgi-localhost:8000:501/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_US.UTF-8
>>
>> MOD_WSGI_MODULES_DIRECTORY=/usr/libexec/apache2
>>
>> MOD_WSGI_SERVER_ROOT=/tmp/mod_wsgi-localhost:8000:501
>>
>> SHELL=/bin/bash
>>
>> TERM=xterm-256color
>>
>> SSH_CLIENT=192.168.254.106 56498 22
>>
>> TMPDIR=/var/folders/wd/kg12dkg908n42nzf75w6pr540000gn/T/
>>
>> SSH_TTY=/dev/ttys003
>>
>> LC_ALL=en_US.UTF-8
>>
>> USER=teemu
>>
>> MOD_WSGI_LISTENER_HOST=localhost
>>
>> __CF_USER_TEXT_ENCODING=0x1F5:0x0:0x0
>>
>> PATH=/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin
>>
>> MAIL=/var/mail/teemu
>>
>> MOD_WSGI_HTTPS_PORT=None
>>
>> VERSIONER_PYTHON_VERSION=2.7
>>
>> PWD=/Users/teemu/edge_tools
>>
>> LANG=en_US.UTF-8
>>
>> MOD_WSGI_HTTP_PORT=8000
>>
>> HOME=/Users/teemu
>>
>> SHLVL=2
>>
>> MOD_WSGI_GROUP=staff
>>
>> MOD_WSGI_USER=teemu
>>
>> LOGNAME=teemu
>>
>> MOD_WSGI_WORKING_DIRECTORY=/Users/teemu/edge_tools
>>
>> VERSIONER_PYTHON_PREFER_32_BIT=no
>>
>> SSH_CONNECTION=192.168.254.106 56498 192.168.101.61 22
>>
>> _=/usr/bin/env
>>
>>
>> Again, no DYLD_LIBRARY_PATH set
>>
>>
>> FWIW,  I have the Oracle file in /Users/teemu/edge_tools/oracle.  This 
>> seems to work fine for simply import cx_Oracle in the interpreter.  Setting 
>> DYLD_LIBRARY_PATH to whatever you end up configuring as ORACLE_HOME appears 
>> to be SOP for the installation.  In order to get cx_Oracle to install 
>> properly, I had to set ORACLE_HOME and DYLD_LIBRARY_PATH to 
>> /Users/teemu/edge_tools/oracle
>>
>>
>>
>>
>> On Wednesday, August 24, 2016 at 6:44:11 PM UTC-4, Graham Dumpleton wrote:
>>>
>>> Okay, this is confusing.
>>>
>>> This specific problem is usually caused because Oracle libraries are not 
>>> in a standard directory location. It is therefore necessary to 
>>> set DYLD_LIBRARY_PATH environment variable to say where they reside.
>>>
>>> When I did the ‘otool -L’ test on cx_Oracle.so I asked you to ensure you 
>>> had unset the DYLD_LIBRARY_PATH environment variable. With that not set, if 
>>> DYLD_LIBRARY_PATH was required I would have expected ‘otool -L’ to not be 
>>> able to resolve the Oracle library, yet it was.
>>>
>>> Even if you hadn’t unset it, it means it was in your environment either 
>>> way. This means that when you ran mod_wsgi-express it should have inherited 
>>> DYLD_LIBRARY_PATH and it still should find the Oracle libraries when 
>>> loading cx_Oracle.so.
>>>
>>> Few more things to check.
>>>
>>> Find the ‘apachectl’ script that is generated by mod_wsgi-express. 
>>> Usually it would be at:
>>>
>>>     /tmp/mod_wsgi-localhost\:8000\:502/apachectl
>>>
>>> What does it have for:
>>>
>>> SHLIBPATH=""
>>>
>>> if [ "x$SHLIBPATH" != "x" ]; then
>>>     DYLD_LIBRARY_PATH="$SHLIBPATH:$DYLD_LIBRARY_PATH"
>>>     export DYLD_LIBRARY_PATH
>>> fi
>>>
>>> It should probably be the same, but want to check.
>>>
>>> Also edit:
>>>
>>>     /tmp/mod_wsgi-localhost\:8000\:502/envvars
>>>
>>> and add to it:
>>>
>>>    env
>>>
>>> This will output to console when running mod_wsgi-express all the 
>>> environment variables set.
>>>
>>> What does DYLD_LIBRARY_PATH show in that? Are there any other DYLD 
>>> environment variables set?
>>>
>>> Also trying running mod_wsgi-express with this test WSGI application:
>>>
>>>     
>>> https://raw.githubusercontent.com/GrahamDumpleton/mod_wsgi/develop/tests/events.wsgi
>>>
>>> What DYLD environment variables get through to the WSGI application.
>>>
>>> Graham
>>>
>>> On 24 Aug 2016, at 11:44 PM, Teemu Korpijaakko <[email protected]> wrote:
>>>
>>> I'm sorry.  I forgot to run the virtualenv interpreter...
>>>
>>> ('HTTPD', '/usr/sbin/httpd')
>>>
>>> ('WITH_TARBALL_PACKAGE', False)
>>>
>>> ('ROTATELOGS', '/usr/sbin/rotatelogs')
>>>
>>> ('WITH_HTTPD_PACKAGE', False)
>>>
>>> ('__file__', 
>>> '/Users/teemu/edge_tools/flask/lib/python2.7/site-packages/mod_wsgi/server/apxs_config.pyc')
>>>
>>> ('PROGNAME', 'httpd')
>>>
>>> ('__package__', 'mod_wsgi.server')
>>>
>>> ('SBINDIR', '/usr/sbin')
>>>
>>> ('MPM_NAME', '')
>>>
>>> ('LIBEXECDIR', '/usr/libexec/apache2')
>>>
>>> ('SHLIBPATH_VAR', 'DYLD_LIBRARY_PATH')
>>>
>>> ('__name__', 'mod_wsgi.server.apxs_config')
>>>
>>> ('SHLIBPATH', '')
>>>
>>> ('os', <module 'os' from 
>>> '/Users/teemu/edge_tools/flask/lib/python2.7/os.pyc'>)
>>>
>>> ('__doc__', None)
>>>
>>> ('BINDIR', '/usr/bin')
>>>
>>>
>>>
>>> On Wednesday, August 24, 2016 at 9:39:20 AM UTC-4, Teemu Korpijaakko 
>>> wrote:
>>>>
>>>> I'm getting ImportError:  No module name mod_wsgi.server.apxs_config
>>>>
>>>> On Tuesday, August 23, 2016 at 11:36:55 PM UTC-4, Graham Dumpleton 
>>>> wrote:
>>>>>
>>>>> What do you get if you fire up the command line Python interpreter and 
>>>>> enter:
>>>>>
>>>>> import mod_wsgi.server.apxs_config as config
>>>>> for k,v in config.__dict__.items():
>>>>>     if k != '__builtins__': print(k, v))
>>>>>
>>>>> Graham
>>>>>
>>>>> On 24 Aug 2016, at 6:50 AM, Teemu Korpijaakko <[email protected]> 
>>>>> wrote:
>>>>>
>>>>> Thank you for the quick reply!  I've run the commands you listed and 
>>>>> the output is as follows:
>>>>>
>>>>>
>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so: 
>>>>> Mach-O universal binary with 2 architectures
>>>>>
>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so 
>>>>> (for architecture i386): Mach-O bundle i386
>>>>>
>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so 
>>>>> (for architecture x86_64): Mach-O 64-bit bundle x86_64
>>>>>
>>>>>
>>>>> and
>>>>>
>>>>>
>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so:
>>>>>
>>>>> /ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1 (compatibility 
>>>>> version 0.0.0, current version 0.0.0)
>>>>>
>>>>> /usr/lib/libSystem.B.dylib (compatibility version 1.0.0, current 
>>>>> version 1226.10.1)
>>>>>
>>>>> On Tuesday, August 23, 2016 at 4:34:54 PM UTC-4, Graham Dumpleton 
>>>>> wrote:
>>>>>>
>>>>>> What do you get one when you run:
>>>>>>
>>>>>>     
>>>>>> file 
>>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so
>>>>>>
>>>>>> and:
>>>>>>
>>>>>>     otool -L 
>>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so
>>>>>>
>>>>>> When doing the latter make sure that you don’t have 
>>>>>> ‘DYLD_LIBRARY_PATH’ environment variable set.
>>>>>>
>>>>>> On MacOS X that error generally means that the shared library hasn’t 
>>>>>> been compiled as a fat binary. That is, doesn’t supply all architectures 
>>>>>> and it  more specifically doesn’t supply the architecture for what the 
>>>>>> Apache web server is running as. This issue though hasn’t generally 
>>>>>> existed 
>>>>>> for ages though as everything should be 64bit in MacOS X now.
>>>>>>
>>>>>> Graham
>>>>>>
>>>>>> On 24 Aug 2016, at 5:52 AM, Teemu Korpijaakko <[email protected]> 
>>>>>> wrote:
>>>>>>
>>>>>> So mod_wsgi-express seems like a lovely way to quickly deploy a 
>>>>>> fairly simple Flask application that I have, but I've run into an issue 
>>>>>> that I can't seem to solve.  It's probably pretty simple though...my 
>>>>>> Flask 
>>>>>> application runs fine with the dev server included with Flask.  When I 
>>>>>> attempt to run the same application using mod_wsgi-express start-server, 
>>>>>> it 
>>>>>> fails.  Looking at the error log, I can see that i fails because the 
>>>>>> Oracle 
>>>>>> Instant client fails to load.  How can I fix this?  Python and Flask are 
>>>>>> all installed in a virtualenv.
>>>>>>
>>>>>> OS X El Capitan 10.11.6
>>>>>>
>>>>>> wsgi.py:
>>>>>> from app import app as application
>>>>>>
>>>>>> snippet of error_log:
>>>>>>
>>>>>> [Tue Aug 23 12:47:05.771184 2016] [wsgi:error] [pid 1508]   File 
>>>>>> "/Users/teemu/edge_tools/app/__init__.py", line 1, in <module>
>>>>>>
>>>>>> [Tue Aug 23 12:47:05.771210 2016] [wsgi:error] [pid 1508]     import 
>>>>>> cx_Oracle
>>>>>>
>>>>>> [Tue Aug 23 12:47:05.771225 2016] [wsgi:error] [pid 1508] 
>>>>>> ImportError: 
>>>>>> dlopen(/Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so,
>>>>>>  
>>>>>> 2): Library not loaded: 
>>>>>> /ade/b/3071542110/oracle/rdbms/lib/libclntsh.dylib.11.1
>>>>>>
>>>>>> [Tue Aug 23 12:47:05.771229 2016] [wsgi:error] [pid 1508]   
>>>>>> Referenced from: 
>>>>>> /Users/teemu/edge_tools/flask/lib/python2.7/site-packages/cx_Oracle.so
>>>>>>
>>>>>> [Tue Aug 23 12:47:05.771231 2016] [wsgi:error] [pid 1508]   Reason: 
>>>>>> image not found
>>>>>>
>>>>>> [Tue Aug 23 12:47:46.005206 2016] [mpm_prefork:notice] [pid 1506] 
>>>>>> AH00169: caught SIGTERM, shutting down
>>>>>>
>>>>>>
>>>>>>
>>>>> -- 
>>>>> 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 modwsgi+u...@googlegroups. <http://googlegroups.com/>com 
>>>>> <http://googlegroups.com/>.
>>>>> 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.
>>>>>
>>>>>
>>>>>
>>> -- 
>>> 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.
>>>
>>>
>>>
>> -- 
>> 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.
>>
>>
>>
>> -- 
>> You received this message because you are subscribed to a topic in the 
>> Google Groups "modwsgi" group.
>> To unsubscribe from this topic, visit 
>> https://groups.google.com/d/topic/modwsgi/DjR37hyY6Q4/unsubscribe.
>> To unsubscribe from this group and all its topics, 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.
>>
>
>
> -- 
> 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.
>
>
>

-- 
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