hi guys,
i want to install mod_auth_sql on an "ancient" machine in my lan.
i downloaded the latest release and gave it a try.
first the details:
OS: suse8.2
mysql:
mysql is in /usr/local/mysql (which is a symlink to the original binary-distribution of mysql 4.0.17)
the includes and libs are available thereunder.
apache (compiled myself and runs quite well for a while):
/var/apache/std/bin/apachectl -V
Server version: Apache/2.0.50
I already installed additionally libgcrypt, cos i thougt that would be missing.
so i got version 2.8.0 (earlier versions had even more probs to build)
and compiled (and installed in one go):
----------------------------------------------------------------------
Libraries have been installed in:
/var/apache/std/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 `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,--rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /var/apache/std/modules/mod_auth_mysql.so
so no errors here.
I added the line to the httpd.conf and gave it a test:
/var/apache/std/bin/apachectl -t
Syntax error on line 55 of /var/apache/std/conf/httpd.conf:
Cannot load /var/apache/std/modules/mod_auth_mysql.so into server: /var/apache/std/modules/mod_auth_mysql.so: undefined symbol: my_aes_encrypt
has anyone a clue for me?
Greets,
holgi
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
hi guys,
i want to install mod_auth_sql on an "ancient" machine in my lan.
i downloaded the latest release and gave it a try.
first the details:
OS: suse8.2
mysql:
mysql is in /usr/local/mysql (which is a symlink to the original binary-distribution of mysql 4.0.17)
the includes and libs are available thereunder.
apache (compiled myself and runs quite well for a while):
/var/apache/std/bin/apachectl -V
Server version: Apache/2.0.50
I already installed additionally libgcrypt, cos i thougt that would be missing.
so i got version 2.8.0 (earlier versions had even more probs to build)
and compiled (and installed in one go):
/var/apache/std/bin/apxs -ci -I/usr/local/mysql/include -L/usr/local/mysql/lib -lmysqlclient mod_auth_mysql.c
everything looks fine in the output,
here it comes:
/var/apache/std/build/libtool --silent --mode=compile gcc -prefer-pic -DAP_HAVE_DESIGNATED_INITIALIZER -DLINUX=2 -D_REENTRANT -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -D_SVID_SOURCE -D_GNU_SOURCE -g -O2 -pthread -I/var/apache/std/include -I/var/apache/std/include -I/var/apache/std/include -I/usr/local/include/mysql -DAPACHE2 -c -o mod_auth_mysql.lo mod_auth_mysql.c && touch mod_auth_mysql.slo
/var/apache/std/build/libtool --silent --mode=link gcc -o mod_auth_mysql.la -I/usr/local/include/mysql -DAPACHE2 -L/usr/local/lib/mysql -lmysqlclient -lm-lz -rpath /var/apache/std/modules -module -avoid-version mod_auth_mysql.lo
/var/apache/std/build/instdso.sh SH_LIBTOOL='/var/apache/std/build/libtool' mod_auth_mysql.la /var/apache/std/modules
/var/apache/std/build/libtool --mode=install cp mod_auth_mysql.la /var/apache/std/modules/
cp .libs/mod_auth_mysql.so /var/apache/std/modules/mod_auth_mysql.so
cp .libs/mod_auth_mysql.lai /var/apache/std/modules/mod_auth_mysql.la
cp .libs/mod_auth_mysql.a /var/apache/std/modules/mod_auth_mysql.a
ranlib /var/apache/std/modules/mod_auth_mysql.a
chmod 644 /var/apache/std/modules/mod_auth_mysql.a
PATH="$PATH:/sbin" ldconfig -n /var/apache/std/modules
ldconfig: /var/apache/std/modules/libphp4.so is not a symbolic link
----------------------------------------------------------------------
Libraries have been installed in:
/var/apache/std/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 `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,--rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
See any operating system documentation about shared libraries for
more information, such as the ld(1) and ld.so(8) manual pages.
----------------------------------------------------------------------
chmod 755 /var/apache/std/modules/mod_auth_mysql.so
so no errors here.
I added the line to the httpd.conf and gave it a test:
/var/apache/std/bin/apachectl -t
Syntax error on line 55 of /var/apache/std/conf/httpd.conf:
Cannot load /var/apache/std/modules/mod_auth_mysql.so into server: /var/apache/std/modules/mod_auth_mysql.so: undefined symbol: my_aes_encrypt
has anyone a clue for me?
Greets,
holgi
forgot:
adding
-lm -lz
didnt help eather...simply forgot to mention above
holgi
Holgi,
Hmmm, looks like you need to also add -lmysys to the list of libraries (this one was linked in automatically on my system).
See if that doesn't help, and sorry for the problem.
Jerry
I added it,
now it complains about the api.
Can't locate API module structure `auth_mysql_module' in file /var/apache/std/modules/mod_auth_mysql.so: /var/apache/std/lib/libapr-0.so.0: undefined symbol: auth_mysql_module
could it be i have to build apache again?
holgi
Holgi,
It should be mysql_auth_module, not auth_mysql_module. Please see the CONFIGURE file.
Jerry
Sorry Jerry,
of cource you were right.
silly me.
I previously testet "another" mod_auth_mysql and i didn't recocnize the change of that line...eyes wide shut ;-)
thanks a lot,
now works just as i expected.
you just made another little idiot happy.
Holgi