Error while building FastCGI in a server running ubuntu - c++

I want to interface FCGI with my C++ code in a server that runs ubuntu. I didn't find ubuntu under the list of tested platforms in the FCGI website, but I tried building it anyway.
./configure seems to work okay. But, when I run make, I get 2 errors, as pasted below:
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
Help in fixing this issue would be greatly appreciated.

I noticed that EOF is a C macro and it requires stdio.h which wasn't included in the fcgio.cpp file.
Adding a #include <stdio.h> to the fcgio.cpp file solves the problem, and now FCGI builds fine on Ubuntu.

Related

CAP_V4L is not a member of cv in cap_.open

I'm trying launch cv_camera with ros but I couldn't compile this package in ros, I launched this command:
catkin_make --only-pkg-with-deps rossumo cv_camera -DARDRONESDK3_PATH=~/out/arsdk-native/staging/usr
...
/home/docker/catkin_ws/src/cv_camera/src/capture.cpp: In member function ‘void cv_camera::Capture::open(const string&)’:
/home/docker/catkin_ws/src/cv_camera/src/capture.cpp:95:26: error: ‘CAP_V4L’ is not a member of ‘cv’
cap_.open(device_path, cv::CAP_V4L);
^
make[2]: *** [cv_camera/CMakeFiles/cv_camera.dir/src/capture.cpp.o] Error 1
make[1]: *** [cv_camera/CMakeFiles/cv_camera.dir/all] Error 2
What do you think I'm doing wrong?
Thanks!

Error building openCV - dumpOpenCLDevice() method error

I have been trying to build opencv for over a week now using the instructions at
http://docs.opencv.org/doc/tutorials/introduction/linux_install/linux_install.html and http://miloq.blogspot.com/2012/12/install-opencv-ubuntu-linux.html however every time I get to the 'make' step, I get an error:
In file included from /home/sello/opencv-2.4.9/modules/nonfree/perf/perf_main.cpp:28:0:
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp: In function ‘void dumpOpenCLDevice()’:
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:88:9: error: ‘PlatformsInfo’ is not a member of ‘cv::ocl’
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:88:32: error: expected ‘;’ before ‘platforms’
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:89:9: error: ‘getOpenCLPlatforms’ is not a member of ‘cv::ocl’
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:89:37: error: ‘platforms’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:95:19: error: ‘DevicesInfo’ in namespace ‘cv::ocl’ does not name a type
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:96:39: error: ‘devices’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:98:23: error: ‘DeviceInfo’ in namespace ‘cv::ocl’ does not name a type
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:99:33: error: ‘current_device’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:99:62: error: ‘CVCL_DEVICE_TYPE_CPU’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:100:71: error: ‘CVCL_DEVICE_TYPE_GPU’ was not declared in this scope
In file included from /home/sello/opencv-2.4.9/modules/nonfree/perf/perf_main.cpp:28:0:
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:108:15: error: ‘DeviceInfo’ in namespace ‘cv::ocl’ does not name a type
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:110:9: error: ‘deviceInfo’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:111:9: error: ‘deviceInfo’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:113:25: error: ‘deviceInfo’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:113:50: error: ‘CVCL_DEVICE_TYPE_CPU’ was not declared in this scope
/home/sello/opencv-2.4.9/modules/ocl/include/opencv2/ocl/private/opencl_dumpinfo.hpp:114:61: error: ‘CVCL_DEVICE_TYPE_GPU’ was not declared in this scope
make[2]: *** [modules/nonfree/CMakeFiles/opencv_perf_nonfree.dir/perf/perf_main.cpp.o] Error 1
make[1]: *** [modules/nonfree/CMakeFiles/opencv_perf_nonfree.dir/all] Error 2
make: *** [all] Error 2
The process works well for a while and then stops at 79% with the above error. I thought the problem might be caused by the fact that I did not have the OpenCL library installed. I installed it as shown at www.amd-dev.wpengine.netdna-cdn.com/wordpress/media/2013/07/AMD_APP_SDK_Installation_Notes.pdf and still no luck. I am running ubuntu 12.04 and OpenCV 2.4.9. The installed version of AMD APP SDK is 2.8.1.0. Please help. I am at my wits end here.
I experienced the same problem and solved it for me by compiling OpenCV without modules needing GPU functionality using the following cmake command in the release folder:
cmake -D CMAKE_BUILD_TYPE=RELEASE -D CMAKE_INSTALL_PREFIX=/usr/local -D WITH_OPENCL=OFF -D WITH_CUDA=OFF -D BUILD_opencv_gpu=OFF -D BUILD_opencv_nonfree=OFF -D BUILD_opencv_stitching=OFF -D BUILD_opencv_superres=OFF ..
The following modules are then deactivated: gpu, nonfree, stitching, superres

Cygwin Error while runnin build_native.sh

I get the error
$ ./build_native.sh
NDK_ROOT = D:\android-ndk-r8d
COCOS2DX_ROOT = /cygdrive/d/Cocos2D/cocos2d-2.1beta3-x-2.1.0/two_alian/proj.android/../..
APP_ROOT = /cygdrive/d/Cocos2D/cocos2d-2.1beta3-x-2.1.0/two_alian/proj.android/..
APP_ANDROID_ROOT = /cygdrive/d/Cocos2D/cocos2d-2.1beta3-x-2.1.0/two_alian/proj.android
Using prebuilt externals
make: Entering directory /cygdrive/d/Cocos2D/cocos2d-2.1beta3-x-2.1.0/two_alian/proj.android'
Compile++ thumb : game_shared <= HelloWorldScene.cpp
jni/../../Classes/HelloWorldScene.cpp: In member function 'void HelloWorld::spriteMoveFinished(cocos2d::CCNode*)':
jni/../../Classes/HelloWorldScene.cpp:130:2: error: 'CCsprite' was not declared in this scope
jni/../../Classes/HelloWorldScene.cpp:130:12: error: 'sprite' was not declared in this scope
/cygdrive/d/android-ndk-r8d/build/core/build-binary.mk:269: recipe for targetobj/local/armeabi/objs/game_shared///Classes/HelloWorldScene.o' failed
make: * [obj/local/armeabi/objs/game_shared///Classes/HelloWorldScene.o] Error 1
make: Leaving directory `/cygdrive/d/Cocos2D/cocos2d-2.1beta3-x-2.1.0/two_alian/proj.android'
But all in the scope
From reading this it appears that inside your HelloWorldScene.cpp you have typo.
CCsprite should be CCSprite.
This is just one error, there may be many more, it is impossible to tell from what you have posted.

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

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?
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.
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"

Qt::What needs to be included in the configuration to use dbus?

I'm using stripped down as much as possible configuration of Qt but now I need to use the dbus and can't figure out what I need to include to be able to use it? There doesnt seem to be anything obvious to me using the qconfig tool. The errors I get at the moment when making are:
qdbus_symbols.cpp:53: error: expected initializer before ‘*’ token
qdbus_symbols.cpp: In function ‘void qdbus_unloadLibDBus()’:
qdbus_symbols.cpp:57: error: ‘qdbus_libdbus’ was not declared in this scope
qdbus_symbols.cpp: In function ‘bool qdbus_loadLibDBus()’:
qdbus_symbols.cpp:67: error: ‘QLibrary’ was not declared in this scope
qdbus_symbols.cpp:67: error: ‘lib’ was not declared in this scope
qdbus_symbols.cpp:67: error: ‘qdbus_libdbus’ was not declared in this scope
qdbus_symbols.cpp:71: error: expected type-specifier before ‘QLibrary’
qdbus_symbols.cpp:71: error: expected ‘;’ before ‘QLibrary’
qdbus_symbols.cpp:85: error: type ‘<type error>’ argument given to ‘delete’, expected pointer
qdbus_symbols.cpp: In function ‘void* qdbus_resolve_conditionally(const char*)’:
qdbus_symbols.cpp:93: error: ‘qdbus_libdbus’ was not declared in this scope
qdbus_symbols.cpp: In function ‘void* qdbus_resolve_me(const char*)’:
qdbus_symbols.cpp:103: error: ‘qdbus_libdbus’ was not declared in this scope
make[1]: *** [.obj/release-static-emb-x86/qdbus_symbols.o] Error 1
make[1]: *** Waiting for unfinished jobs....
make[1]: Leaving directory `/home/mark/qt-qvfb-4.5.3-static/src/dbus'
make: *** [sub-dbus-make_default-ordered] Error 2
Does anyone know a module that I must not be including which is necessary or how to find out? thanks
QT += dbus
should be enough to include the dbus option in the .pro project file, ins't it?
I need more info to give apropriate answer.