[HOME] > PC-UNIX Tips > fetchmail-6.3.26 on Plamo Linux 7.1
Created: 2019.05.17
PC-UNIX Tips
fetchmail-6.3.26を Plamo-7.1でソースコンパイル&インストールしようとしたのですが、コンパイルエラー 発生(>_<) POP3Sが要件なので、TLS付きでコンパイル。
% cd fetchmail_6.3.26/
% ./configure --with-ssl=/usr
...
% make |& tee make.log
...
gcc -g -O2 -I/usr/kerberos/include -L/usr/lib -o fetchmail socket.o getpass.o fetchmail.o env.o idle.o options.o daemon.o driver.o transact.o sink.o smtp.o idlist.o uid.o mxget.o md5ify.o cram.o gssapi.o opie.o interface.o netrc.o unmime.o conf.o checkalias.o lock.o rcfile_l.o rcfile_y.o norm_charmap.o pop3.o imap.o etrn.o odmr.o libfm.a strlcpy.o strlcat.o -lcrypt -lresolv -lssl -lcrypto
socket.o: In function `SSLOpen':
/usr/local/src/fetchmail-6.3.26/socket.c:917: undefined reference to `SSLv3_client_method'
collect2: error: ld returned 1 exit status
make[2]: *** [Makefile:700: fetchmail] Error 1
make[2]: Leaving directory '/usr/local/src/fetchmail-6.3.26'
make[1]: *** [Makefile:1176: all-recursive] Error 1
make[1]: Leaving directory '/usr/local/src/fetchmail-6.3.26'
make: *** [Makefile:591: all] Error 2
ググって原因が判明。fetchmailのバグです(@_@)
fetchmail: FTBFS: undefined reference to `SSLv3_client_method'
debianでパッチが作成されている模様なので、fetchmail-6.3.26-3に含まれるパッチ をゲットして適用。
% cd fetchmail_6.3.26/
% patch -p1 < ../fetchmail_6.3.26-3.debian/patches/02_remove_SSLv3.patch
patching file Makefile.am
patching file Makefile.in
patching file NEWS
patching file README.SSL
patching file config.h.in
patching file configure
patching file configure.ac
patching file fetchmail-FAQ.html
patching file fetchmail.c
patching file fetchmail.h
patching file fetchmail.man
patching file imap.c
patching file po/Makevars
patching file pop3.c
patching file socket.c
patching file starttls.c
% ./configure --with-ssl=/usr
...
% make |& tee make.log
...
# make install |& tee make-install.log
...
無事動作しました :-)
調査の過程で、このバグがfetchmail-6.4.0.beta4で修正されている情報があり インストールしてみました。
Fetchmail - the mail-retrieval daemon - Browse /branch_6.4 at SourceForge.net
fetchmail-6.4.0 (not yet released):
...
* Fix SSL-enabled build on systems that do not declare SSLv3_client_method(), or that
#define OPENSSL_NO_SSL3 inside #include <openssl/ssl.h> Related to Debian Bug#775255. Fixes Debian Bug #804604.
しかし、何故だかPOP3サーバにもPOP3S接続しようとする上に、POP3Sサーバに接続でき ません。さらに調査すると、sslprotoを空値で設定するとよさげな情報を発見。
[~/.fetchmailrc]
poll pop3.example.com protocol pop3 timeout 120:
username "hoihoi" password "hogehoge" sslproto ""
実際に設定すると、Segmentaion faultで落ちたので断念(>_<)
PC-UNIX Tips
Written by kabada