..oder hab ich mittlerweile was vergessen?
Ich habe das Problem das ich auf einem bockbeinalten FreeBSD 4.11 Firewall das ich mal gebaut habe einen neueren Squid basteln muß,
weil irgend eine BehördenIT Hals über Kopf das Transferprotokoll Irgend einer Applikation auf http 1.1 geändert hat. Der ganze Laden wird
demnächst zwangsweise sowieso an das Behördennetz angeschlossen...das ist also ein Provisorium.
Einen aktuellen Squid kann man nicht bauen, die Sourcen verlangen einen c11 kompatibeln Compiler, das letzte as ich als Pakackagfe habe auftreiben können ist ein gcc4.0 und damit läßt sich auch nur ein squid 3.5.27 übersetzen..wenn es denn funktioniert.
Ich stoße allerdings beim bauen auf dieses Problem:
# make
/bin/sh ../../../libtool --tag=CXX --mode=link /usr/local/bin/c++40 -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Werror -pipe -D_REENTRANT -g -O2 -I/usr/local/include -g -L/usr/local/lib -Wl,-R/usr/local/lib -pthread -o basic_pam_auth basic_pam_auth.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lpam -lm
libtool: link: /usr/local/bin/c++40 -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Werror -pipe -D_REENTRANT -g -O2 -I/usr/local/include -g -Wl,-R/usr/local/lib -pthread -o basic_pam_auth basic_pam_auth.o -L/usr/local/lib ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lpam -lm -pthread
basic_pam_auth.o: In function `main':
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:257: undefined reference to `pam_end(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:264: undefined reference to `pam_start(char const*, char const*, pam_conv const*, pam_handle**)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:296: undefined reference to `pam_end(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:305: undefined reference to `pam_end(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:292: undefined reference to `pam_set_item(pam_handle*, int, void const*)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:249: undefined reference to `pam_start(char const*, char const*, pam_conv const*, pam_handle**)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:274: undefined reference to `pam_set_item(pam_handle*, int, void const*)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:276: undefined reference to `pam_set_item(pam_handle*, int, void const*)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:279: undefined reference to `pam_authenticate(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:281: undefined reference to `pam_acct_mgmt(pam_handle*, int)'
collect2: ld returned 1 exit status
*** Error code 1
# nm --dynamic /lib/libpam.so.1|grep "T pam"
00003544 T pam_acct_mgmt
0000345c T pam_authenticate
00003098 T pam_authenticate_secondary
000030f4 T pam_chauthtok
000038a4 T pam_clear_option
00003050 T pam_close_session
000031c8 T pam_end
00004730 T pam_fail_delay
00004884 T pam_get_data
00006678 T pam_get_item
00002084 T pam_get_pass
00006788 T pam_get_user
00003ec8 T pam_getenv
00004068 T pam_getenvlist
00002b0c T pam_misc_copy_env
00002b30 T pam_misc_drop_env
00002ba0 T pam_misc_paste_env
00002bec T pam_misc_setenv
00003008 T pam_open_session
000038c4 T pam_prompt
00003b9c T pam_putenv
0000478c T pam_set_data
00006254 T pam_set_item
00003884 T pam_set_option
000034ec T pam_setcred
00002cc0 T pam_start
00003630 T pam_std_option
00005a18 T pam_strerror
00006a0c T pam_system_log
00003858 T pam_test_option
000069e0 T pam_vsystem_log
#
Warum kann der Linker meine libpam.so.1 nicht leiden? Hab ich irgendwas Wesentliches vergessen?
Gruß,
Holm
Ich habe das Problem das ich auf einem bockbeinalten FreeBSD 4.11 Firewall das ich mal gebaut habe einen neueren Squid basteln muß,
weil irgend eine BehördenIT Hals über Kopf das Transferprotokoll Irgend einer Applikation auf http 1.1 geändert hat. Der ganze Laden wird
demnächst zwangsweise sowieso an das Behördennetz angeschlossen...das ist also ein Provisorium.
Einen aktuellen Squid kann man nicht bauen, die Sourcen verlangen einen c11 kompatibeln Compiler, das letzte as ich als Pakackagfe habe auftreiben können ist ein gcc4.0 und damit läßt sich auch nur ein squid 3.5.27 übersetzen..wenn es denn funktioniert.
Ich stoße allerdings beim bauen auf dieses Problem:
# make
/bin/sh ../../../libtool --tag=CXX --mode=link /usr/local/bin/c++40 -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Werror -pipe -D_REENTRANT -g -O2 -I/usr/local/include -g -L/usr/local/lib -Wl,-R/usr/local/lib -pthread -o basic_pam_auth basic_pam_auth.o ../../../lib/libmiscencoding.la ../../../compat/libcompat-squid.la -lpam -lm
libtool: link: /usr/local/bin/c++40 -Wall -Wpointer-arith -Wwrite-strings -Wcomments -Wshadow -Woverloaded-virtual -Werror -pipe -D_REENTRANT -g -O2 -I/usr/local/include -g -Wl,-R/usr/local/lib -pthread -o basic_pam_auth basic_pam_auth.o -L/usr/local/lib ../../../lib/.libs/libmiscencoding.a ../../../compat/.libs/libcompat-squid.a -lpam -lm -pthread
basic_pam_auth.o: In function `main':
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:257: undefined reference to `pam_end(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:264: undefined reference to `pam_start(char const*, char const*, pam_conv const*, pam_handle**)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:296: undefined reference to `pam_end(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:305: undefined reference to `pam_end(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:292: undefined reference to `pam_set_item(pam_handle*, int, void const*)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:249: undefined reference to `pam_start(char const*, char const*, pam_conv const*, pam_handle**)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:274: undefined reference to `pam_set_item(pam_handle*, int, void const*)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:276: undefined reference to `pam_set_item(pam_handle*, int, void const*)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:279: undefined reference to `pam_authenticate(pam_handle*, int)'
/usr/home/wheel/holm/src/squid-3.5.27/helpers/basic_auth/PAM/basic_pam_auth.cc:281: undefined reference to `pam_acct_mgmt(pam_handle*, int)'
collect2: ld returned 1 exit status
*** Error code 1
# nm --dynamic /lib/libpam.so.1|grep "T pam"
00003544 T pam_acct_mgmt
0000345c T pam_authenticate
00003098 T pam_authenticate_secondary
000030f4 T pam_chauthtok
000038a4 T pam_clear_option
00003050 T pam_close_session
000031c8 T pam_end
00004730 T pam_fail_delay
00004884 T pam_get_data
00006678 T pam_get_item
00002084 T pam_get_pass
00006788 T pam_get_user
00003ec8 T pam_getenv
00004068 T pam_getenvlist
00002b0c T pam_misc_copy_env
00002b30 T pam_misc_drop_env
00002ba0 T pam_misc_paste_env
00002bec T pam_misc_setenv
00003008 T pam_open_session
000038c4 T pam_prompt
00003b9c T pam_putenv
0000478c T pam_set_data
00006254 T pam_set_item
00003884 T pam_set_option
000034ec T pam_setcred
00002cc0 T pam_start
00003630 T pam_std_option
00005a18 T pam_strerror
00006a0c T pam_system_log
00003858 T pam_test_option
000069e0 T pam_vsystem_log
#
Warum kann der Linker meine libpam.so.1 nicht leiden? Hab ich irgendwas Wesentliches vergessen?
Gruß,
Holm