I a running Fedora Core 2, which uses gcc version 3.3.3 20040412 (Red Hat Linux 3.3.3-7). I have FreeRADIUS 1.0.0-pre1 installed. When I compile FreeRADIUS 1.0.0-pre2, the compiler picks up the old libeap-1.0.0-pre1.so rather than the new libeap-1.0.0-pre2. As a result, when I remove pre1 and install pre2, pre2 will not run.

Looking at the Makefile.in files, I found that src/main, src/modules/rlm_eap, src/modules/rlm_eap/types/rlm_eap_peap, src/modules/rlm_eap/types/rlm_eap_sim and src/modules/rlm_eap/types/rlm_eap_ttls find the libraries by using a -L option to point to the directory and a -l option to point to the library. Therefore, I assume that the compiler is searching path provided by the -L option after /usr/lib which contains libeap-1.0.0-pre2.so.

In order to solve the problem, I modified the 4 Makefile.in files so that they point directly to the new libeap file rather than searching for libeap in the library path.

Is this a bug in my gcc version/configuration or a bug in the FreeRADIUS make files? If it is a bug in my gcc version/configuration, then could someone point me in the direction to fix it? If it is a bug in the FreeRAIDUS make files, then let me know and I will file a bug report with my patch file.

- List info/subscribe/unsubscribe? See http://www.freeradius.org/list/users.html

Reply via email to