FileZillaをCentOSにインストールした時のメモ
Linuxの方がVimの親和性が高い(gfで/usr/include以下のヘッダも読みに行ってくれるとか)ので、
そろそろ開発環境はLinuxに移行したいと思った。
Vimの設定ファイルとかはGithubで管理してるからいいとして、
問題はどのFTPクライアントがいいかなーということ。
あと、CLI(未だにCUIとの区別が付かない単語)のソフトウェアはなるべく避けたい。
前はCLIの方がかっこいいじゃんとか考えてたんだけど、
VimよりgVimだとか、yumはyumexのほうが効率いい(yum shellって手もあるけど、やっぱ自分はyumexの方がやりやすい)
といった理由から段々とGUIな環境を使うことが増えてきた。
そんな理由から見つけたのがこの「FileZilla」というソフト。
クロスプラットフォームで設定もXMLを出力させるだけで済むらしいので早速インストールしてみた。
(ダウンロードページはここ)
Windowsの場合
インストーラで一発。便利。
自分の場合は、まずWindowsでFFFTPに登録してたホストを移した後、
設定ファイルを吐き出させてLinuxに持ってくことにした。
FFFTP長年使ってきたけどこれでお別れだと思うとちょっと寂しい。なんてことはない。
Linux(CentOS)の場合
まずrpmは無いのでソースを持ってくる。
(間違えてLinux用バイナリ持ってこないように)
./configure && makeしたらエラーが出た。
wxWidgetsが入ってないらしい。
のでyumでwxGTKとwxGTK-develをインストール。
再度./configure && make。
checking for libgnutls - version >= 2.0.4... no *** The libgnutls-config script installed by LIBGNUTLS could not be found *** If LIBGNUTLS was installed in PREFIX, make sure PREFIX/bin is in *** your path, or set the LIBGNUTLS_CONFIG environment variable to the *** full path to libgnutls-config. configure: error: *** *** libgnutls 2.0.4 or greater was not found. You may want to get it from *** ftp://ftp.gnutls.org/pub/gnutls/
またもエラー。
なんかlibgnutlsが無いとか宣ってらっしゃるんだけどご親切にftpサイトへのリンクが示してある。
ftpで接続しようにも今自分はftpクライアントをインストールしてるところなのでしょうがなくftpコマンドで接続。
$ ftp ftp://ftp.gnutls.org/pub/gnutls ftp: ftp://ftp.gnutls.org/pub/gnutls: unknown host
うぇ?なんで?と思ってman ftp。お前は何を言ってるんだ。
でも、hostってもしかしたら・・・
$ ftp ftp.gnutls.org/pub/gnutls Connected to igloo.linux.gr.
いけた!
なんかどうやらftpコマンドはURLのプロトコル部分は理解してくれないらしい。
ncftp使ってたから知らなかったorz
Linux初心者なんでこんなことがいちいち新鮮・・・でもncftpあったらそっち使うけどね^q^
その後の作業は下のような感じ。
ftp>
から始まる行は自分。
Name (ftp.gnutls.org:root): anonymous 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> cd pub/gnutls 250-More information on GnuTLS can be found at http://www.gnu.org/software/gnutls 250-and at http://www.gnutls.org . 250- 250 Directory successfully changed. ftp> pwd 257 "/pub/crypto/gnutls" ftp> ls 227 Entering Passive Mode (62,1,205,36,195,112). 150 Here comes the directory listing. -rw-rw-r-- 1 1124 1027 1324 Apr 30 10:34 CHECKSUMS -rw-rw-r-- 1 1124 1027 111 Mar 03 2002 README drwxrwsr-x 2 1124 1027 15992 Jan 06 2008 attic drwxrwsr-x 2 1124 1027 2928 May 03 19:12 devel -rw-rw-r-- 1 1124 1027 1557142 May 08 2005 gnutls-1.0.25.tar.gz -rw-rw-r-- 1 1124 1027 184 May 08 2005 gnutls-1.0.25.tar.gz.sig -rw-rw-r-- 1 1124 1027 2756620 May 11 2006 gnutls-1.2.11.tar.bz2 -rw-rw-r-- 1 1124 1027 236 May 11 2006 gnutls-1.2.11.tar.bz2.sig -rw-r--r-- 1 1124 1027 4045874 Nov 06 2006 gnutls-1.4.5.tar.bz2 -rw-r--r-- 1 1124 1027 236 Nov 06 2006 gnutls-1.4.5.tar.bz2.sig -rw-r--r-- 1 1124 1027 4286276 May 26 2007 gnutls-1.6.3.tar.bz2 -rw-r--r-- 1 1124 1027 236 May 26 2007 gnutls-1.6.3.tar.bz2.sig -rw-r--r-- 1 1124 1027 4911330 Nov 16 2007 gnutls-2.0.4.tar.bz2 -rw-r--r-- 1 1124 1027 236 Nov 16 2007 gnutls-2.0.4.tar.bz2.sig -rw-r--r-- 1 1124 1027 4999783 Dec 14 2007 gnutls-2.2.0.tar.bz2 -rw-r--r-- 1 1124 1027 236 Dec 14 2007 gnutls-2.2.0.tar.bz2.sig -rw-r--r-- 1 1124 1027 4945945 Jan 17 2008 gnutls-2.2.1.tar.bz2 -rw-r--r-- 1 1124 1027 236 Jan 17 2008 gnutls-2.2.1.tar.bz2.sig -rw-r--r-- 1 1124 1027 4923519 Feb 21 2008 gnutls-2.2.2.tar.bz2 -rw-r--r-- 1 1124 1027 236 Feb 21 2008 gnutls-2.2.2.tar.bz2.sig -rw-r--r-- 1 1124 1027 4920217 May 06 2008 gnutls-2.2.3.tar.bz2 -rw-r--r-- 1 1124 1027 236 May 06 2008 gnutls-2.2.3.tar.bz2.sig -rw-r--r-- 1 1124 1027 4920171 May 20 2008 gnutls-2.2.4.tar.bz2 -rw-r--r-- 1 1124 1027 236 May 20 2008 gnutls-2.2.4.tar.bz2.sig -rw-r--r-- 1 1124 1027 4920322 May 20 2008 gnutls-2.2.5.tar.bz2 -rw-r--r-- 1 1124 1027 236 May 20 2008 gnutls-2.2.5.tar.bz2.sig -rw-r--r-- 1 1124 1027 4942092 Jun 18 2008 gnutls-2.4.0.tar.bz2 -rw-r--r-- 1 1124 1027 236 Jun 18 2008 gnutls-2.4.0.tar.bz2.sig -rw-r--r-- 1 1124 1027 4940118 Jun 30 2008 gnutls-2.4.1.tar.bz2 -rw-r--r-- 1 1124 1027 236 Jun 30 2008 gnutls-2.4.1.tar.bz2.sig -rw-r--r-- 1 1124 1027 4958098 Sep 15 2008 gnutls-2.4.2.tar.bz2 -rw-r--r-- 1 1124 1027 420 Sep 15 2008 gnutls-2.4.2.tar.bz2.sig -rw-r--r-- 1 1124 1027 5045624 Feb 06 19:55 gnutls-2.4.3.tar.bz2 -rw-r--r-- 1 1124 1027 420 Feb 06 19:55 gnutls-2.4.3.tar.bz2.sig -rw-r--r-- 1 1124 1027 5112845 Oct 06 2008 gnutls-2.6.0.tar.bz2 -rw-r--r-- 1 1124 1027 420 Oct 06 2008 gnutls-2.6.0.tar.bz2.sig -rw-r--r-- 1 1124 1027 5113327 Nov 10 10:44 gnutls-2.6.1.tar.bz2 -rw-r--r-- 1 1124 1027 420 Nov 10 10:44 gnutls-2.6.1.tar.bz2.sig -rw-r--r-- 1 1124 1027 5113586 Nov 12 14:19 gnutls-2.6.2.tar.bz2 -rw-r--r-- 1 1124 1027 420 Nov 12 14:19 gnutls-2.6.2.tar.bz2.sig -rw-r--r-- 1 1124 1027 5114214 Dec 12 19:17 gnutls-2.6.3.tar.bz2 -rw-r--r-- 1 1124 1027 420 Dec 12 19:17 gnutls-2.6.3.tar.bz2.sig -rw-r--r-- 1 1124 1027 5115205 Feb 06 20:13 gnutls-2.6.4.tar.bz2 -rw-r--r-- 1 1124 1027 420 Feb 06 20:13 gnutls-2.6.4.tar.bz2.sig -rw-r--r-- 1 1124 1027 5112923 Apr 11 19:01 gnutls-2.6.5.tar.bz2 -rw-r--r-- 1 1124 1027 420 Apr 11 19:01 gnutls-2.6.5.tar.bz2.sig -rw-r--r-- 1 1124 1027 5116385 Apr 30 10:34 gnutls-2.6.6.tar.bz2 -rw-r--r-- 1 1124 1027 420 Apr 30 10:34 gnutls-2.6.6.tar.bz2.sig drwxrwsr-x 3 1124 1027 984 Apr 16 23:21 libtasn1 drwxrwsr-x 3 1124 1027 624 Jan 06 2008 opencdk drwxrwsr-x 3 1124 1027 96 Jan 06 2008 win32 226 Directory send OK. ftp> get gnutls-2.6.6.tar.bz2 local: gnutls-2.6.6.tar.bz2 remote: gnutls-2.6.6.tar.bz2 227 Entering Passive Mode (62,1,205,36,195,105). 150 Opening BINARY mode data connection for gnutls-2.6.6.tar.bz2 (5116385 bytes). 226 File send OK. 5116385 bytes received in 13 seconds (3.9e+02 Kbytes/s) ftp> bye 221 GoodBye.
で、端末に戻るとgnutls-2.6.6.tar.bz2がカレントディレクトリにあるので解凍。
$ tar xvjf gnutls-2.6.6.tar.bz2 $ cd gnutls-2.6.6 $ ./configure && make
するも今度はコンパイルエラー。
mac-libgcrypt.c -fPIC -DPIC -o .libs/mac-libgcrypt.o mac-libgcrypt.c: In function 'wrap_gcry_hash_init': mac-libgcrypt.c:123: error: 'GCRY_MD_SHA224' undeclared (first use in this function) mac-libgcrypt.c:123: error: (Each undeclared identifier is reported only once mac-libgcrypt.c:123: error: for each function it appears in.) make[3]: *** [mac-libgcrypt.lo] Error 1 make[3]: Leaving directory `/root/build/gnutls-2.6.6/lib' make[2]: *** [all-recursive] Error 1 make[2]: Leaving directory `/root/build/gnutls-2.6.6/lib' make[1]: *** [all-recursive] Error 1 make[1]: Leaving directory `/root/build/gnutls-2.6.6' make: *** [all] エラー 2
lib/mac-libgcrypt.cを見に行く。
エラーの箇所はここ。
case GNUTLS_DIG_SHA224: err = gcry_md_open ((gcry_md_hd_t *) ctx, GCRY_MD_SHA224, flags); break;
ヘッダファイルは
#include <gnutls_int.h> #include <gnutls_hash_int.h> #include <gnutls_errors.h> #include <gcrypt.h>
でこの中から「GCRY_MD_SHA224」を検索してみる。
(冒頭に言ったようにVimだとgfだけでgcrypt.hを開いてくれるので便利)
でも何もひっかからないので「GCRY_MD」だけで検索すると
gcrypt.hがひっかかった。
/* Algorithm IDs for the hash functions we know about. Not all of them are implemnted. */ enum gcry_md_algos { GCRY_MD_NONE = 0, GCRY_MD_MD5 = 1, GCRY_MD_SHA1 = 2, GCRY_MD_RMD160 = 3, GCRY_MD_MD2 = 5, GCRY_MD_TIGER = 6, /* TIGER/192. */ GCRY_MD_HAVAL = 7, /* HAVAL, 5 pass, 160 bit. */ GCRY_MD_SHA256 = 8, GCRY_MD_SHA384 = 9, GCRY_MD_SHA512 = 10, GCRY_MD_MD4 = 301, GCRY_MD_CRC32 = 302, GCRY_MD_CRC32_RFC1510 = 303, GCRY_MD_CRC24_RFC2440 = 304 };
あれ?GCRY_MD_SHA224無くね?
どうやらバージョンが違うかどうかして定義そのものが無い(ってコンパイラにも言われたけど)らしい。
しょうがないのでlib/mac-libcrypt.cの該当個所をコメントアウトする。
/* case GNUTLS_DIG_SHA224: err = gcry_md_open ((gcry_md_hd_t *) ctx, GCRY_MD_SHA224, flags); break; */
んで、./configure && make && make installで終わり。