Running 'python setup.py install' with APXS environment variable set should 
also work.

> On 9 Nov 2017, at 11:03 am, O haya <jim...@gmail.com> wrote:
> 
> YES!!  That did it and I was able to start Apache 2.4.29 after I added:
> 
> LoadModule wsgi_module 
> "/apps/python-3.6.3/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so"
> 
> to the httpd.conf, and this was even without needing to export 
> LD_LIBRARY_PATH!
> 
> 
> Now that I was able to do that, do you think that if I had exported the APXS 
> that I could've used:
> 
> python3.6 setup.py install
> 
> instead of the "pip3.6 install mod_wsgi"?
> 
> The reason I ask is that, at work, I don't think I'll be able to use pip3.6 
> since it looks like it needs to connect out.
> 
> Thanks!
> 
> Jim
> 
> 
> 
> On Wednesday, November 8, 2017 at 6:38:40 PM UTC-5, Graham Dumpleton wrote:
> 
>> On 9 Nov 2017, at 10:37 am, O haya <jim...@ <>gmail.com <http://gmail.com/>> 
>> wrote:
>> 
>> Hi,
>> 
>> I got this when I ran that:
>> 
>> export AXPS=/apps/httpd-2.4.29/bin/apxs
>> 
>> pip3.6 install --no-cache-dir mod_wsgi
>> Requirement already satisfied: mod_wsgi in 
>> /apps/python-3.6.3/lib/python3.6/site-packages
> 
> Run:
> 
>     pip uninstall mod_wsgi
> 
> first, or use:
> 
>     pip3.6 install --no-cache-dir --update mod_wsgi
> 
>> 
>> 
>> On Wednesday, November 8, 2017 at 6:10:12 AM UTC-5, Graham Dumpleton wrote:
>> Do not use code.google.com <http://code.google.com/> site for docs. The docs 
>> can be found by going to www.modwsgi.org <http://www.modwsgi.org/>.
>> 
>> For creating a working Python installation read:
>> 
>>     
>> http://blog.dscpl.com.au/2015/06/installing-custom-python-version-into.html 
>> <http://blog.dscpl.com.au/2015/06/installing-custom-python-version-into.html>
>> 
>> Ignore that it talks about Docker. Information still relevant.
>> 
>> Your 'ap_accept_lock_mech' issue is then likely due to using the wrong apxs 
>> program for the Apache install you want to use.
>> 
>> Find the 'apxs' program for the Apache you want to use and then run 'pip' as:
>> 
>>     APXS=/some/path/apxs pip install --no-cache-dir mod_wsgi 
>> 
>> You likely have a broken mod_wsgi compiled version cached and need for it to 
>> be skipped.
>> 
>> Graham
>> 
>>> On 8 Nov 2017, at 5:17 pm, O haya <jim...@ <>gmail.com <http://gmail.com/>> 
>>> wrote:
>>> 
>>> Oh oh, problem :(....
>>> 
>>> I added:
>>> 
>>> LoadModule wsgi_module 
>>> "/apps/python-3.6.3/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so
>>>  <http://mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so/>"
>>> 
>>> to the new Apache 2.4.29 httpd.conf and then tried to start the Apache and 
>>> I think that I am back to the same error from before:
>>> 
>>> [oracle@apache1 bin]$ /apps/httpd-2.4.29/bin/apachectl start
>>> httpd: Syntax error on line 168 of /apps/httpd-2.4.29/conf/httpd.conf: 
>>> Cannot load 
>>> /apps/python-3.6.3/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so
>>>  <http://mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so/> into server: 
>>> /apps/python-3.6.3/lib/python3.6/site-packages/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so
>>>  <http://mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so/>: undefined symbol: 
>>> ap_accept_lock_mech
>>> 
>>> 
>>> :(  ???
>>> 
>>> Jim
>>> 
>>> 
>>> 
>>> 
>>> On Wednesday, November 8, 2017 at 1:08:53 AM UTC-5, O haya wrote:
>>> Ok, I am re-reading your page:
>>> 
>>> https://code.google.com/archive/p/modwsgi/wikis/InstallationIssues.wiki 
>>> <https://code.google.com/archive/p/modwsgi/wikis/InstallationIssues.wiki>
>>> 
>>> When I read before, I couldn't find any "config" directory under my new 
>>> python dir, but I think that you mean this directory?
>>> 
>>> [root@apache1 config-3.6m-x86_64-linux-gnu]# pwd
>>> /apps/python-3.6.3/lib/python3.6/config-3.6m-x86_64-linux-gnu
>>> [root@apache1 config-3.6m-x86_64-linux-gnu]# ls -al
>>> total 15644
>>> drwxr-xr-x  2 root root     4096 Nov  8 00:43 .
>>> drwxr-xr-x 35 root root     4096 Nov  8 00:33 ..
>>> -rw-r--r--  1 root root     3302 Nov  8 00:33 config.c
>>> -rw-r--r--  1 root root     1621 Nov  8 00:33 config.c.in 
>>> <http://config.c.in/>
>>> -rwxr-xr-x  1 root root     7122 Nov  8 00:33 install-sh
>>> -rw-r--r--  1 root root 15874060 Nov  8 00:33 libpython3.6m.a
>>> lrwxrwxrwx  1 root root       19 Nov  8 00:43 libpython3.so -> 
>>> ../../libpython3.so
>>> -rw-r--r--  1 root root    67977 Nov  8 00:33 Makefile
>>> -rwxr-xr-x  1 root root     7521 Nov  8 00:33 makesetup
>>> -rwxr-xr-x  1 root root     2050 Nov  8 00:33 python-config.py
>>> -rw-r--r--  1 root root    10096 Nov  8 00:33 python.o
>>> -rw-r--r--  1 root root    15322 Nov  8 00:33 Setup
>>> -rw-r--r--  1 root root      327 Nov  8 00:33 Setup.config
>>> -rw-r--r--  1 root root       41 Nov  8 00:33 Setup.local
>>> 
>>> So I re-built Python 3.6.3, with the "--enable-shared" and I think I 
>>> figured out where the 'config' dir you were referring to (above).
>>> 
>>> As you can see, I have now added a softlink for libpython3.so but now I am 
>>> still getting an error, even if run just "python3.6 -V":
>>> 
>>> [root@apache1 config-3.6m-x86_64-linux-gnu]# python3.6 -V
>>> python3.6: error while loading shared libraries: libpython3.6m.so.1.0: 
>>> cannot open shared object file: No such file or directory
>>> 
>>> So I added another softlink to "libpython3.6m.so.1.0":
>>> 
>>> 
>>> [root@apache1 config-3.6m-x86_64-linux-gnu]# ls -al
>>> total 15644
>>> drwxr-xr-x  2 root root     4096 Nov  8 00:56 .
>>> drwxr-xr-x 35 root root     4096 Nov  8 00:33 ..
>>> -rw-r--r--  1 root root     3302 Nov  8 00:33 config.c
>>> -rw-r--r--  1 root root     1621 Nov  8 00:33 config.c.in 
>>> <http://config.c.in/>
>>> -rwxr-xr-x  1 root root     7122 Nov  8 00:33 install-sh
>>> -rw-r--r--  1 root root 15874060 Nov  8 00:33 libpython3.6m.a
>>> lrwxrwxrwx  1 root root       26 Nov  8 00:56 libpython3.6m.so.1.0 -> 
>>> ../../libpython3.6m.so.1.0
>>> lrwxrwxrwx  1 root root       19 Nov  8 00:43 libpython3.so -> 
>>> ../../libpython3.so
>>> -rw-r--r--  1 root root    67977 Nov  8 00:33 Makefile
>>> -rwxr-xr-x  1 root root     7521 Nov  8 00:33 makesetup
>>> -rwxr-xr-x  1 root root     2050 Nov  8 00:33 python-config.py
>>> -rw-r--r--  1 root root    10096 Nov  8 00:33 python.o
>>> -rw-r--r--  1 root root    15322 Nov  8 00:33 Setup
>>> -rw-r--r--  1 root root      327 Nov  8 00:33 Setup.config
>>> -rw-r--r--  1 root root       41 Nov  8 00:33 Setup.local
>>> [root@apache1 config-3.6m-x86_64-linux-gnu]#
>>> 
>>> 
>>> but I still get an error:
>>> 
>>> [root@apache1 config-3.6m-x86_64-linux-gnu]# python3.6 -V
>>> python3.6: error while loading shared libraries: libpython3.6m.so.1.0: 
>>> cannot open shared object file: No such file or directory
>>> 
>>> I also added a softlink for libpython3.6m.so <http://libpython3.6m.so/> but 
>>> same error??
>>> 
>>> Then I added "export LD_LIBRARY_PATH=/apps/python-3.6.3/lib/" and then 
>>> "python3.6 -V" worked.
>>> 
>>> 
>>> Is THAT (adding the LD_LIBRARY_PATH necessary)?  
>>> 
>>> Or, putting that another way, what did I do wrong that caused adding the 
>>> LD_LIBRARY_PATH to be a necessity?
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> On Wednesday, November 8, 2017 at 12:21:05 AM UTC-5, O haya wrote:
>>> Correcting my memory... the "python3.6 setup.py" had the same problem (now 
>>> I cannot recall how I got the "mod_wsgi-express start-server"  to work):
>>> 
>>> r/wsgi_apache.o build/temp.linux-x86_64-3.6/src/server/wsgi_metrics.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_thread.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_memory.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_interp.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_server.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_stream.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_daemon.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_restrict.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_validate.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_buckets.o 
>>> build/temp.linux-x86_64-3.6/src/server/wsgi_logger.o -o 
>>> build/lib.linux-x86_64-3.6/mod_wsgi/server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so
>>>  <http://mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so/> 
>>> -L/apps/python-3.6.3/lib -L/apps/python-3.6.3/lib/python3.6/config-3.6m 
>>> -lpython3.6m
>>> /usr/bin/ld: /apps/python-3.6.3/lib/libpython3.6m.a(abstract.o): relocation 
>>> R_X86_64_32S against `_PyObject_NextNotImplemented' can not be used when 
>>> making a shared object; recompile with -fPIC
>>> /apps/python-3.6.3/lib/libpython3.6m.a: could not read symbols: Bad value
>>> collect2: ld returned 1 exit status
>>> error: command 'gcc' failed with exit status 1
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> 
>>> On Wednesday, November 8, 2017 at 12:17:06 AM UTC-5, O haya wrote:
>>> Now I remember, this is what happened when I tried to run "pip3.6 install 
>>> mod_wsgi":
>>> 
>>> server/mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so 
>>> <http://mod_wsgi-py36.cpython-36m-x86_64-linux-gnu.so/> 
>>> -L/apps/python-3.6.3/lib -L/apps/python-3.6.3/lib/python3.6/config-3.6m 
>>> -lpython3.6m
>>>     /usr/bin/ld: /apps/python-3.6.3/lib/libpython3.6m.a(abstract.o): 
>>> relocation R_X86_64_32S against `_PyObject_NextNotImplemented' can not be 
>>> used when making a shared object; recompile with -fPIC
>>>     /apps/python-3.6.3/lib/libpython3.6m.a: could not read symbols: Bad 
>>> value
>>>     collect2: ld returned 1 exit status
>>>     error: command 'gcc' failed with exit status 1
>>> 
>>>     ----------------------------------------
>>> Command "/apps/python-3.6.3/bin/python3.6 -u -c "import setuptools, 
>>> tokenize;__file__='/tmp/pip-build-lsdntr6f/mod-wsgi/setup.py';f=getattr(tokenize,
>>>  'open', open)(__file__);code=f.read().replace('\r\n', 
>>> '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record 
>>> /tmp/pip-ltr8j01f-record/install-record.txt 
>>> --single-version-externally-managed --compile" failed with error code 1 in 
>>> /tmp/pip-build-lsdntr6f/mod-wsgi/
>>> 
>>> 
>>> I will try the setup.py next... I think that was the one that worked 
>>> better...
>>> 
>>> 
>>> 
>>> 
>>> 
>>> On Wednesday, November 8, 2017 at 12:05:49 AM UTC-5, O haya wrote:
>>> Hi,
>>> 
>>> Ok thanks for that info.
>>> 
>>> I didn't get into detail earlier, but among the attempts that I tried to 
>>> build mod-wsgi earlier, I actually DID get the "mod_wsgi-express 
>>> start-server" to work, but then when I tried to add the LoadModule to my 
>>> Apache 2.4.25, the Apache still failed again, for the same error (the one 
>>> with "mech" in the error message).  The configuration is now gone (I 
>>> restored a snapshot).
>>> 
>>> I have to think about this some more :(...
>>> 
>>> Jim
>>> 
>>> 
>>> On Tuesday, November 7, 2017 at 11:28:13 PM UTC-5, Graham Dumpleton wrote:
>>> Short answer is you cannot use a mod_wsgi.so from a yum package against 
>>> anything but the binary distribution of Apache it was built for. You cannot 
>>> use it with a separate Apache you compiled from source code as how it was 
>>> built would likely be incompatible.
>>> 
>>> I can only recommend you start out with the pip method for installation as 
>>> described in the issue at:
>>> 
>>> * https://github.com/GrahamDumpleton/mod_wsgi 
>>> <https://github.com/GrahamDumpleton/mod_wsgi>
>>> 
>>> as the easiest way to move forward.
>>> 
>>> If you cannot get that working as I described such that 'mod_wsgi-express 
>>> start-server' does something, you need to provide the details of what 
>>> errors you are getting and what you were doing at that point. I can't guess 
>>> why you can't install it without seeing the errors.
>>> 
>>> Also use either the mailing list or the issue, and not both.
>>> 
>>> Graham
>>> 
>>>> On 8 Nov 2017, at 3:22 PM, O haya <jim...@gmail.com <>> wrote:
>>>> 
>>>> Hi,
>>>> 
>>>> Re. why I was copying the mod_wsgi.so - that was mainly because I was 
>>>> trying to get it into the Apache modules directory.  FYI, I also tried 
>>>> just using the path+file to the mod_wsgi.so in the LoadModule, with same 
>>>> symptoms.
>>>> 
>>>> Re. was Apache installed by yum - no, it was built from the Apache 2.4.25 
>>>> source (originally from a tar.gz from apache.org <http://apache.org/>).
>>>> 
>>>> Re. "Are you also trying to install mod_wsgi using pip?" - I am not sure 
>>>> what you mean by that, but as I mentioned on the issues (which I assume 
>>>> you saw), after I failed trying to get the built-mod_wsgi.so (from yum 
>>>> install) working I tried building the mod_wsgi a number of times, 
>>>> including using the system.py approach, the pip install and also the 
>>>> configure/make/make altinstall - all failed.
>>>> 
>>>> Re. "the Apache installation you are using is much older than the version 
>>>> the mod_wsgi module was compiled for." - The Apache I was trying was built 
>>>> from the 2.4.25 source.  Current Apache source on apache.org 
>>>> <http://apache.org/> is 2.4.29, so it's not terribly old :).  So are you 
>>>> saying that you think that if I went to say build Apache 2.4.29 that the 
>>>> mod_wsgi from yum would work? 
>>>> 
>>>> If so, I would try that, but FYI, our Apaches at work are even older that 
>>>> the 2.4.25, so if we want mod_wsgi for those would an older mod_wsgi 
>>>> (either rpm maybe or source) work with the older Apache?
>>>> 
>>>> Thanks,
>>>> Jim
>>>> 
>>>> 
>>>> On Tuesday, November 7, 2017 at 6:51:38 PM UTC-5, Graham Dumpleton wrote:
>>>> I am confused about why you are copying the mod_wsgi.so file anywhere. 
>>>> When you install mod_wsgi using yum, it should put everything in the 
>>>> correct place to start with.
>>>> 
>>>> Are you also using Apache install by yum?
>>>> 
>>>> Are you also trying to install mod_wsgi using pip?
>>>> 
>>>> That error indicates that the Apache installation you are using is much 
>>>> older than the version the mod_wsgi module was compiled for.
>>>> 
>>>> Graham
>>>> 
>>>>> On 8 Nov 2017, at 10:37 AM, O haya <jim...@ <>gmail.com 
>>>>> <http://gmail.com/>> wrote:
>>>>> 
>>>>> Hi,
>>>>> 
>>>>> I am trying to use WSGI on Apache 2.4.x on CENTOS.
>>>>> 
>>>>> I installed mod_wsgi using yum (yum install mod_wsgi), then I copied the 
>>>>> mod_wsgi.so to the Apache modules dir and added a Load Module for 
>>>>> mod_wsgi.
>>>>> 
>>>>> However, when I try to start Apache I am getting this:
>>>>> 
>>>>> /apps/apache/bin/apachectl start
>>>>> 
>>>>> httpd: Syntax error on line 152 of /apps/apache/conf/httpd.conf: Cannot 
>>>>> load modules/mod_wsgi.so into server: /apps/apache/modules/mod_wsgi.so: 
>>>>> undefined symbol: ap_accept_lock_mech
>>>>> 
>>>>> Can anyone tell me why this error is occurring and also, how can I get 
>>>>> mod_wsgi to work?
>>>>> 
>>>>> Thanks,
>>>>> Jim
>>>>> 
>>>>> -- 
>>>>> 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.com <http://googlegroups.com/>.
>>>>> To post to this group, send email to mod...@ <>googlegroups.com 
>>>>> <http://googlegroups.com/>.
>>>>> Visit this group at https://groups.google.com/group/modwsgi 
>>>>> <https://groups.google.com/group/modwsgi>.
>>>>> For more options, visit https://groups.google.com/d/optout 
>>>>> <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 modwsgi+u...@googlegroups.com <>.
>>>> To post to this group, send email to mod...@googlegroups.com <>.
>>>> Visit this group at https://groups.google.com/group/modwsgi 
>>>> <https://groups.google.com/group/modwsgi>.
>>>> For more options, visit https://groups.google.com/d/optout 
>>>> <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 modwsgi+u...@googlegroups.com <>.
>>> To post to this group, send email to mod...@googlegroups.com <>.
>>> Visit this group at https://groups.google.com/group/modwsgi 
>>> <https://groups.google.com/group/modwsgi>.
>>> For more options, visit https://groups.google.com/d/optout 
>>> <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 modwsgi+u...@googlegroups.com <>.
>> To post to this group, send email to mod...@googlegroups.com <>.
>> Visit this group at https://groups.google.com/group/modwsgi 
>> <https://groups.google.com/group/modwsgi>.
>> For more options, visit https://groups.google.com/d/optout 
>> <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 modwsgi+unsubscr...@googlegroups.com 
> <mailto:modwsgi+unsubscr...@googlegroups.com>.
> To post to this group, send email to modwsgi@googlegroups.com 
> <mailto:modwsgi@googlegroups.com>.
> Visit this group at https://groups.google.com/group/modwsgi 
> <https://groups.google.com/group/modwsgi>.
> For more options, visit https://groups.google.com/d/optout 
> <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 modwsgi+unsubscr...@googlegroups.com.
To post to this group, send email to modwsgi@googlegroups.com.
Visit this group at https://groups.google.com/group/modwsgi.
For more options, visit https://groups.google.com/d/optout.

Reply via email to