[linux-users: 108862] Re: GNU screenのmakeについて

Satoshi Ikarashi satoshi.ikarashi @ gmail.com
2012年 1月 3日 (火) 09:34:42 JST


単純に現象面だけ見ると、

env CFLAGS="-g -02 -I/usr/lib/i686-redhat-linux5E/include" ./configure --prefix=/usr/local/screen --enable-colors256

という具合に configure を実行すると良いと思います。動作は確認しておりませんが。
configure と Makefile.in をちょこっと眺めましたが、完成度がいまひとつのようです。
--
あいアドバイザー 五十嵐


(2012/01/03 16:25), satoake wrote:
> さとあけと申します。
> 
>  ScientificLinux 6.0/6.1とCentOS 6.0/6.1/6.2にてGNU Screenをconfigureし
> てmakeしようとしたところ、makeが途中で止まってしまう現象に遭遇しています。
> 長文になってしまいますが、どうぞよろしくお願いします。
> 
>  OSインストール後の手順は下記のとおりです(読みづらいので数行に分けます)。
> 
> # yum -y install gcc gcc-c++ telnet bzip2-devel libtool openssl-devel \
> zlib-devel libevent libevent-devel make flex libxml2-devel  curl-devel \
> gettex gettext-devel lynx libmcrypt libmcrypt-devel libxslt libxslt-devel
> # yum install -y ncurses-devel compat-glibc-headers
> # wget http://ftp.riken.jp/GNU/ftp/gnu/screen/screen-4.0.3.tar.gz
> # tar zvxf screen-4.0.3.tar.gz
> # cd screen-4.0.3
> # ./configure --prefix=/usr/local/screen --enable-colors256
> 
> configureは問題なく終了するのですが、makeが下記の部分で止まります。
> 
> gcc -c -I. -I.    -g -O2 pty.c
> pty.c:38:26: error: sys/stropts.h: そのようなファイルやディレクトリはありません
> make: *** [pty.o] エラー 1
> 
>  pty.cのstropts.hの部分をコメントアウトする回避策が調べた所散見されるの
> ですが、ちょっと気持ちが悪いです(それで問題なく動作するのであればいいの
> ですが)。strops.hはcompat-glibc-headersに含まれていたのでインストールし、
> findで見つけることが出来ました。が、場所はここでいいのかどうかがわかりま
> せん。
> 
> # find / | grep stropts.h
> /usr/lib/x86_64-redhat-linux5E/include/bits/stropts.h
> /usr/lib/x86_64-redhat-linux5E/include/sys/stropts.h
> /usr/lib/x86_64-redhat-linux5E/include/stropts.h
> /usr/share/man/man0p/stropts.h.0p.gz
> 
> あることは確認できているのですが、gccに-vをつけて該当部分だけコンパイル
> して見ました所、下記の様になり、上記のパスを見つけられていないように思わ
> れました。
> 
> # gcc -c -I. -I. -g -O pty.c
> pty.c:38:26: error: sys/stropts.h: そのようなファイルやディレクトリはありません
> [root @ madoka screen-4.0.3]# gcc -c -v -I. -I. -g -O pty.c
> Using built-in specs.
> Target: x86_64-redhat-linux
> コンフィグオプション: ../configure --prefix=/usr --mandir=/usr/share/man --infodir=/usr/share/info --with-bugurl=http://bugzilla.redhat.com/bugzilla --enable-bootstrap --enable-shared --enable-threads=posix --enable-checking=release --with-system-zlib --enable-__cxa_atexit --disable-libunwind-exceptions --enable-gnu-unique-object --enable-languages=c,c++,objc,obj-c++,java,fortran,ada --enable-java-awt=gtk --disable-dssi --with-java-home=/usr/lib/jvm/java-1.5.0-gcj-1.5.0.0/jre --enable-libgcj-multifile --enable-java-maintainer-mode --with-ecj-jar=/usr/share/java/eclipse-ecj.jar --disable-libjava-multilib --with-ppl --with-cloog --with-tune=generic --with-arch_32=i686 --build=x86_64-redhat-linux
> スレッドモデル: posix
> gcc version 4.4.5 20110214 (Red Hat 4.4.5-6) (GCC)
> COLLECT_GCC_OPTIONS='-c' '-v' '-I.' '-I.' '-g' '-O' '-mtune=generic'
>   /usr/libexec/gcc/x86_64-redhat-linux/4.4.5/cc1 -quiet -v -I. -I. pty.c -quiet -dumpbase pty.c -mtune=generic -auxbase pty -g -O -version -o /tmp/cc7eYioW.s
> 存在しないディレクトリ "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/include-fixed" を無視します
> 存在しないディレクトリ "/usr/lib/gcc/x86_64-redhat-linux/4.4.5/../../../../x86_64-redhat-linux/include" を無視します
> 重複したディレクトリ "." を無視します
> #include "..." の探索はここから始まります:
> #include<...>  の探索はここから始まります:
>   .
>   /usr/local/include
>   /usr/lib/gcc/x86_64-redhat-linux/4.4.5/include
>   /usr/include
> 探索リストの終わり
> GNU C (GCC) version 4.4.5 20110214 (Red Hat 4.4.5-6) (x86_64-redhat-linux)
>          compiled by GNU C version 4.4.5 20110214 (Red Hat 4.4.5-6), GMP version 4.3.1, MPFR version 2.4.1.
> GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072
> Compiler executable checksum: 49029d07da46d18098ec3340d31ee5e6
> pty.c:38:26: error: sys/stropts.h: そのようなファイルやディレクトリはありません
> 
>  最後に現れるsys/stropts.hとはどこのパスを見ているのでしょうか?
> /usr/lib/x86_64-redhat-linux5E/include/sys/stropts.hではなさそうですので、
> お分かりの方、また解決方法をご存知の方、ご教授頂けないでしょうか。
> 
> _______________________________________________
> linux-users mailing list
> linux-users @ listserv.linux.or.jp
> http://listserv.linux.or.jp/mailman/listinfo/linux-users


linux-users メーリングリストの案内