2

ubuntu を実行するサーバーで FCGI を C++ コードとインターフェイスさせたいと考えています。FCGI Web サイトのテスト済みプラットフォームのリストに ubuntu が見つかりませんでしたが、とにかくビルドしてみました。

./configureうまくいくようです。しかし、実行するmakeと、以下に貼り付けたように 2 つのエラーが発生します。

fcgio.cpp: In destructor 'virtual fcgi_streambuf::~fcgi_streambuf()':
fcgio.cpp:50: error: 'EOF' was not declared in this scope
fcgio.cpp: In member function 'virtual int fcgi_streambuf::overflow(int)':
fcgio.cpp:70: error: 'EOF' was not declared in this scope
fcgio.cpp:75: error: 'EOF' was not declared in this scope
fcgio.cpp: In member function 'virtual int fcgi_streambuf::sync()':
fcgio.cpp:86: error: 'EOF' was not declared in this scope
fcgio.cpp:87: error: 'EOF' was not declared in this scope
fcgio.cpp: In member function 'virtual int fcgi_streambuf::underflow()':
fcgio.cpp:113: error: 'EOF' was not declared in this scope
make[2]: *** [fcgio.lo] Error 1
make[2]: Leaving directory '/home/giridhar/fcgi-2.4.1-SNAP-0910052249/libfcgi'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory '/home/giridhar/fcgi-2.4.1-SNAP-0910052249'
make: *** [all] Error 2

この問題の修正にご協力いただければ幸いです。

4

1 に答える 1

4

stdio.hEOF は C マクロであり、fcgio.cpp ファイルに含まれていないものが必要であることに気付きました。

fcgio.cpp ファイルにa#include <stdio.h>を追加すると問題が解決し、FCGI が Ubuntu で正常にビルドされるようになりました。

于 2012-05-29T22:53:38.063 に答える