This may have been covered before, but I cannot seem to find it when
searching the archives. I am new to FreeRadius, but not new to Linux. I
tried configuring FreeRadius, when checking for "checking for
asn1.h,snmp.h,snmp_impl.h..." it would not find the NetSNMP installation.
The location of the installation is /usr/local. It is looking in all the
places but /usr/local/include/net-snmp/. I editied out the configure
script to work, by changing the includes. It also could not find the
correct library in th next step. So i had to edit again to include the
correct library "-lnetsnmp". then edit the code so it will look for the
headers in the right place net-snmp. I dunno if this is a flaw in the
autoconf not being updated or what.
On to OpenSSL, OpenSSL was compiled and installed in /usr/local/ssl
and it cannot be found by the configure script. I added the usual
LDFLAGS, etc to get it to find it, but there was more mess. In the end I
just bypassed the checks altogether and told it it was okay to go ahead
and include that.
In the config.log I get lots of undefinded references like these
configure:1029: checking for SSL_new in -lssl
configure:1044: gcc -o conftest -g -O2 -I/usr/local/ssl/include
-I/usr/local/pgsql/include
-I/usr/local/include/net-snmp/library -L/usr/local/ssl/lib
-L/usr/local/pgsql/lib -L/usr/lo
cal/lib conftest.c -lnsl -lresolv -lpthread -lcrypto -lssl 1>&5
/usr/local/ssl/lib/libssl.a(ssl_lib.o)(.text+0x3c): In function
`SSL_clear':
: undefined reference to `ERR_put_error'
Then I checked the confdefs.h file, it is 100% empty, something is
getting stomped on here. no included ssl headers. when I change that to
add in the ssl headers like below. I get the next bad result.
--
echo "configure:1029: checking for SSL_new in -lssl" >&5
smart_lib=
smart_lib_dir=
old_LIBS="$LIBS"
LIBS="$LIBS -lssl"
cat > conftest.$ac_ext <<EOF
#line 1037 "configure"
#include "confdefs.h"
#include <openssl/ssl.h>
extern char SSL_new();
int main() {
SSL_new()
; return 0; }
EOF
--
Now we get this in the config.log file.
--
configure:1029: checking for SSL_new in -lssl
configure:1044: gcc -o conftest -g -O2 -I/usr/local/ssl/include
-I/usr/local/pgsql/include
-I/usr/local/include/net-snmp/library -L/usr/local/ssl/lib
-L/usr/local/pgsql/lib -L/usr/lo
cal/lib conftest.c -lnsl -lresolv -lpthread -lcrypto -lssl 1>&5
configure:1039: conflicting types for `SSL_new'
/usr/local/ssl/include/openssl/ssl.h:1304: previous declaration of
`SSL_new'
configure: failed program was:
#line 1037 "configure"
#include "confdefs.h"
#include <openssl/ssl.h>
extern char SSL_new();
int main() {
SSL_new()
; return 0; }
--
FreeRadius is the only one which does not seem to get a hold of
OpenSSL easy. I dunno what is going on, but I had to hand edit the
configure script to get it all to work. Maybe this is all worth a good
looking over. As for all of my code I write I use my own home-made
configure scripts so I dunno how to fit it all up with autoconf.
If you need anything further than this feel free to email me.
-M
(the above examples are for the rlm_eap_tls directory, but is
represenative of all of the looking for SSL_new in all the parts of the
configure script)
-
List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html