お世話になります。
Centos5.8 64bitにPostgres9.0.8をソースからインストールしようとしていますが、./configure 実行時、以下のようなFlexの警告が表示されます。
どこに問題があるのかご存知の方教えていただけませんでしょうか?
$ cd /usr/local/src/postgresql-9.0.8
$ ./configure
checking for flex... configure: WARNING:
*** The installed version of Flex, /usr/bin/flex, is too old to use with PostgreSQL.
*** Flex version 2.5.31 or later is required, but this is /usr/bin/flex version 2.5.4.
configure: WARNING:
*** The installed version of Flex, /usr/bin/lex, is too old to use with PostgreSQL.
*** Flex version 2.5.31 or later is required, but this is /usr/bin/lex version 2.5.4.
no
configure: WARNING:
*** Without Flex you will not be able to build PostgreSQL from Git nor
*** change any of the scanner definition files. You can obtain Flex from
*** a GNU mirror site. (If you are using the official distribution of
*** PostgreSQL then you do not need to worry about this because the Flex
*** output is pre-generated.)
checking for perl... /usr/bin/perl
configure: using perl 5.8.8
checking for main in -lm... yes
checking for library containing setproctitle... no
checking for library containing dlopen... -ldl
checking for library containing socket... none required
checking for library containing shl_load... no
checking for library containing getopt_long... none required
checking for library containing crypt... -lcrypt
checking for library containing fdatasync... none required
checking for library containing gethostbyname_r... none required
checking for library containing shmget... none required
checking for -lreadline... no
checking for -ledit... no
configure: error: readline library not found
If you have readline already installed, see config.log for details on the
failure. It is possible the compiler isn't looking in the proper directory.
Use --without-readline to disable readline support.
インストールされているバージョンは古くないと思っているのですが、どうずればインストールを進めることができるでしょうか?
$ rpm -qa | grep flex
flex-2.5.4a-41.fc6
$ which flex
/usr/bin/flex
どうぞ宜しくお願い致します。
>インストールされているバージョンは古くないと思っているのですが、どうずればインストールを進めることができるでしょうか?
もしかして2.5.4aは2.5.31より新しいと思われてますか?
警告表示にも出てるように
>*** The installed version of Flex, /usr/bin/flex, is too old to use with PostgreSQL.
>*** Flex version 2.5.31 or later is required, but this is /usr/bin/flex version 2.5.4.
2.5.4aのバージョンは2.5.4(たぶん2.5.4のマイナーバージョン)なので2.5.31より古いです。
ですのでflexを2.5.31より新しいバージョンに更新しましょう。
お礼
さっそくご回答ありがとうございます。 数字のみみて、2.5.4aは2.5.31より新しいと思い込んでました。