fcgio.cpp:50: error: 'EOF' was not declared in this scope

21,696

Solution 1

EOF is a C macro and seems that you do not have it defined in fcgio.cpp or that something has undefined it. I would first try to add #include <stdio.h> to start of fcgio.cpp.

Solution 2

I had the same problem on Ubuntu 11.10 Linux 64bit. Following most of @paercebal's advice I created the following patch which resolved the problem:

--- include/fcgio.h 2012-01-23 15:23:51.136063795 +0000
+++ include/fcgio.h 2012-01-23 15:22:19.057221383 +0000
@@ -31,6 +31,7 @@
 #define FCGIO_H

 #include <iostream>
+#include <stdio.h>

 #include "fcgiapp.h"
Share:
21,696
skyeagle
Author by

skyeagle

Updated on July 21, 2020

Comments

  • skyeagle
    skyeagle almost 4 years

    I am attempting to build fastcgi on a Linux Ubuntu 10.x machine.

    I run the following commands:

    ./configure make

    and I get the following error:

    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:107: error: 'EOF' was not declared in this scope
    make[2]: *** [fcgio.lo] Error 1
    make[2]: Leaving directory `/somepath/fcgi-2.4.0/libfcgi'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/somepath/fcgi-2.4.0'
    make: *** [all] Error 2
    

    I notice that others have had the same problem and have asked this question in various fora etc - however, I have not as yet, seen an answer to this question/problem.

    Has anyone ever managed to build fastcgi on Linux? How do I fix this problem?