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

Reply via email to