On 27 October 2010 14:37, Tam Tam <[email protected]> wrote: > $ grep AP_MPM_WANT_SET_ACCEPT_LOCK_MECH /si/usr/me/sys/apache/include/mpm.h > #define AP_MPM_WANT_SET_ACCEPT_LOCK_MECH > -------------------------------------------------------------------------- > $ pwd > /si/usr/me/sys/apache/bin > $ nm httpd | grep ap_accept_lock_mech > ap_accept_lock_mech D 536877968 > ap_accept_lock_mech d 536891340 4 > ap_accept_lock_mech:G897 - 0 > > $ nm httpd | grep ap_cleanup_scoreboard > .ap_cleanup_scoreboard T 268614096 228 > ap_cleanup_scoreboard D 536883304 > ap_cleanup_scoreboard d 536883304 12 > ap_cleanup_scoreboard d 536890680 4 > ap_cleanup_scoreboard:F401 - 2976
Which suggests the symbols are there, albeit that they seem to exist marked as both global and local symbols. AIX has always been an odd platform and I haven't used it for over 20 years so haven't got any ideas. I would suggest you ask about the problem on: http://serverfault.com/ to see if can get a wider audience of people who may know about AIX. Post the 'nm' output when you do so in case someone can decipher the multiple entries and why still those variables aren't found. I'll keep an eye on any ServerFault discussion. Graham > -------------------------------------------------------------------------- > $ pwd > /si/usr/me/setup/mod_wsgi-3.3 > $ echo $LIBPATH > .:/lib:/usr/lib:/si/usr/me/sys/lib:/si/usr/me/sys/apache/lib > > $ make clean > rm -rf .libs > rm -f mod_wsgi.o mod_wsgi.la mod_wsgi.lo mod_wsgi.slo mod_wsgi.loT > rm -f config.log config.status > rm -rf autom4te.cache > $ make > /si/usr/me/sys/apache/bin/apxs -c -I/si/usr/me/sys/include/python2.6 > -DNDEBUG mod_wsgi.c -L/si/usr/me/sys/lib > -L/si/usr/me/sys/lib/python2.6/config -lpython2.6 -ldl -lm > /si/usr/me/sys/apache/build/libtool --silent --mode=compile gcc > -prefer-pic -U__STR__ -D_THREAD_SAFE -D_USE_IRS -D_LARGEFILE64_SOURCE -g > -O2 -pthread -I/si/usr/me/sys/apache/include > -I/si/usr/me/sys/apache/include -I/si/usr/me/sys/apache/include > -I/si/usr/me/sys/include/python2.6 -DNDEBUG -c -o mod_wsgi.lo mod_wsgi.c && > touch mod_wsgi.slo > /si/usr/me/sys/apache/build/libtool --silent --mode=link gcc -o mod_wsgi.la > -rpath /si/usr/me/sys/apache/modules -module -avoid-version -Wl,-brtl > mod_wsgi.lo -L/si/usr/me/sys/lib -L/si/usr/me/sys/lib/python2.6/config > -lpython2.6 -ldl -lm > Target "all" is up to date. > $ make install > /si/usr/me/sys/apache/bin/apxs -i -S > LIBEXECDIR=/si/usr/me/sys/apache/modules -n 'mod_wsgi' mod_wsgi.la > /si/usr/me/sys/apache/build/instdso.sh > SH_LIBTOOL='/si/usr/me/sys/apache/build/libtool' mod_wsgi.la > /si/usr/me/sys/apache/modules > rm -f /si/usr/me/sys/apache/modules/mod_wsgi.so > /si/usr/me/sys/apache/build/libtool --mode=install cp mod_wsgi.la > /si/usr/me/sys/apache/modules/ > cp .libs/mod_wsgi.so /si/usr/me/sys/apache/modules/mod_wsgi.so > cp .libs/mod_wsgi.lai /si/usr/me/sys/apache/modules/mod_wsgi.la > cp .libs/mod_wsgi.a /si/usr/me/sys/apache/modules/mod_wsgi.a > chmod 644 /si/usr/me/sys/apache/modules/mod_wsgi.a > ranlib /si/usr/me/sys/apache/modules/mod_wsgi.a > ---------------------------------------------------------------------- > Libraries have been installed in: > /si/usr/me/sys/apache/modules > If you ever happen to want to link against installed libraries > in a given directory, LIBDIR, you must either use libtool, and > specify the full pathname of the library, or use the `-LLIBDIR' > flag during linking and do at least one of the following: > - add LIBDIR to the `LIBPATH' environment variable > during execution > - use the > `-Wl,-blibpath:LIBDIR:/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0:/opt/freeware/lib/gcc/powerpc-ibm-aix5.3.0.0/4.2.0/../../..:/usr/lib:/lib > ' linker flag > See any operating system documentation about shared libraries for > more information, such as the ld(1) and ld.so(8) manual pages. > ---------------------------------------------------------------------- > chmod 755 /si/usr/me/sys/apache/modules/mod_wsgi.so > -------------------------------------------------------------------------- > $ pwd > /si/usr/me/sys/apache/bin > $ httpd -t > httpd: Syntax error on line 462 of /si/usr/me/sys/apache/conf/httpd.conf: > Cannot load /si/usr/me/sys/apache/modules/mod_wsgi.so into server: rtld: > 0712-001 Symbol ap_cleanup_scoreboard was referenced\n from module > /si/usr/me/sys/apache/modules/mod_wsgi.so(), but a runtime definition\n\t > of the symbol was not found.\nrtld: 0712-001 Symbol ap_accept_lock_mech was > referenced\n from module /si/usr/me/sys/apache/modules/mod_wsgi.so(), > but a runtime definition\n\t of the symbol was not found. > > 2010/10/27 Graham Dumpleton <[email protected]> >> >> On 27 October 2010 14:09, Tam Tam <[email protected]> wrote: >> > What steps will reproduce the problem? >> > 1.download Apache/2.2.17 (Unix),install to '/si/usr/me/sys/apache',and >> > then >> > run 'bin/httpd -t', it words. >> > 2.download mod_wsgi-3.3, configure/make/make install, yes, everything is >> > fine, a so had created: /si/usr/me/sys/apache/modules/mod_wsgi.so'. >> > 3.append 'LoadModule wsgi_module modules/mod_wsgi.so' to >> > 'conf/httpd.conf', >> > and then run 'bin/httpd -t', i got error msg follow: >> > >> > httpd: Syntax error on line 414 of >> > /si/usr/me/sys/apache2/conf/httpd.conf: >> > Cannot load /si/usr/me/sys/apache2/modules/mod_wsgi.so into >> > server: >> > rtld: 0712-001 Symbol ap_cleanup_scoreboard was referenced >> > from module /si/usr/me/sys/apache2/modules/mod_wsgi.so(), but a >> > runtime definition >> > of the symbol was not found. >> > rtld: 0712-001 Symbol ap_accept_lock_mech was referenced >> > from module /si/usr/me/sys/apache2/modules/mod_wsgi.so(), but a >> > runtime definition >> > of the symbol was not found. >> > >> > there are many mod_xxx.so in 'modules/', all of them works well, why >> > 'mod_wsgi.so' not work? >> > i had google this for three days, but it seens that i can fix my >> > problems, >> > can somebody help me? >> > >> > aix 5.3.0.0 + gcc 4.2.0 >> > >> > $ pwd >> > /si/usr/me/sys/apache/bin >> > $ httpd -V >> > Server version: Apache/2.2.17 (Unix) >> > Server built: Oct 26 2010 12:11:42 >> > Server's Module Magic Number: 20051115:25 >> > Server loaded: APR 1.4.2, APR-Util 1.3.10 >> > Compiled using: APR 1.4.2, APR-Util 1.3.10 >> > Architecture: 32-bit >> > Server MPM: Worker >> > threaded: yes (fixed thread count) >> > forked: yes (variable process count) >> > Server compiled with.... >> > -D APACHE_MPM_DIR="server/mpm/worker" >> > -D APR_HAS_SENDFILE >> > -D APR_HAS_MMAP >> > -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled) >> > -D APR_USE_SYSVSEM_SERIALIZE >> > -D APR_USE_PTHREAD_SERIALIZE >> > -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT >> > -D APR_HAS_OTHER_CHILD >> > -D AP_HAVE_RELIABLE_PIPED_LOGS >> > -D DYNAMIC_MODULE_LIMIT=128 >> > -D HTTPD_ROOT="/si/usr/me/sys/apache" >> > -D SUEXEC_BIN="/si/usr/me/sys/apache/bin/suexec" >> > -D DEFAULT_SCOREBOARD="logs/apache_runtime_status" >> > -D DEFAULT_ERRORLOG="logs/error_log" >> > -D AP_TYPES_CONFIG_FILE="conf/mime.types" >> > -D SERVER_CONFIG_FILE="conf/httpd.conf" >> > $ httpd -l >> > Compiled in modules: >> > core.c >> > worker.c >> > http_core.c >> > mod_so.c >> >> Grep through Apache mpm.h include file from installation area for >> 'AP_MPM_WANT_SET_ACCEPT_LOCK_MECH'. Eg. >> >> $ grep AP_MPM_WANT_SET_ACCEPT_LOCK_MECH /usr/include/apache2/mpm.h >> #define AP_MPM_WANT_SET_ACCEPT_LOCK_MECH >> >> Is it specified in the header file. >> >> Run nm on Apache executable to see if symbols defined. >> >> $ nm /usr/sbin/httpd | grep ap_accept_lock_mech >> 000000010004e388 D _ap_accept_lock_mech >> >> $ nm /usr/sbin/httpd | grep ap_cleanup_scoreboard >> 0000000100018149 T _ap_cleanup_scoreboard >> >> In mod_wsgi source code, run: >> >> make clean >> make >> >> Capture all the output from latter make and post it here. >> >> Graham >> >> -- >> You received this message because you are subscribed to the Google Groups >> "modwsgi" group. >> To post to this group, send email to [email protected]. >> To unsubscribe from this group, send email to >> [email protected]. >> For more options, visit this group at >> http://groups.google.com/group/modwsgi?hl=en. >> > > -- > You received this message because you are subscribed to the Google Groups > "modwsgi" group. > To post to this group, send email to [email protected]. > To unsubscribe from this group, send email to > [email protected]. > For more options, visit this group at > http://groups.google.com/group/modwsgi?hl=en. > -- You received this message because you are subscribed to the Google Groups "modwsgi" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/modwsgi?hl=en.
