Can't compiling using makefiles: Poco/File.h not found

Hey all,

I’m brand new to oF as of this week and have been super impressed at all of its features. I downloaded the code::blocks 64 bit version 0072 to run on my 64 bit Kubuntu Linux machine. While Eclipse CDT is my usual go-to environment for C++, I haven’t figured out how to use oF with Eclipse, so I thought I’d give the makefile route a try in an attempt to learn something new and run oF in a way that is already set up. Everything builds (mostly) nicely in the example files, and some of the programs have really blown me away.

The trouble starts when I try to copy an example project into another directory. As far as I can tell, the only thing that needs changing when copying examples is the directory of the oF files, which I’ve done.

  
OF_ROOT = ../../..  

becomes

  
OF_ROOT = ~/oF  

in line 6 of config.make, where the oF directory is in my home folder. The compiler acts like it’s doing something, until it chokes at trying to find Poco/File.h:

  
dan@dan-HP-ENVY-14-Notebook-PC:~/meshFromCamera$ ls  
bin  config.make  Makefile  meshFromCamera.cbp  meshFromCamera.workspace  obj  src  
dan@dan-HP-ENVY-14-Notebook-PC:~/meshFromCamera$ make  
compiling x86_64 object for:  src/main.cpp  
mkdir -p obj/x86_64Release/src  
g++ -c  -pthread -I/usr/include/gtk-2.0 -I/usr/lib/x86_64-linux-gnu/gtk-2.0/include -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/gdk-pixbuf-2.0 -I/usr/include/pango-1.0 -I/usr/include/gio-unix-2.0/ -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12   -DOF_USING_GTK -DOF_USING_MPG123 -Wall -fexceptions -I. -I~/oF/libs/glu/include -pthread -I/usr/include/GL -I/usr/include/gstreamer-0.10 -I/usr/include/glib-2.0 -I/usr/lib/x86_64-linux-gnu/glib-2.0/include -I/usr/include/libxml2 -I/usr/include/cairo -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng12   -I/home/dan/oF/libs/FreeImage/include -I/home/dan/oF/libs/assimp/include -I/home/dan/oF/libs/assimp/include/Compiler -I/home/dan/oF/libs/fmodex/include -I/home/dan/oF/libs/freetype/include -I/home/dan/oF/libs/freetype/include/freetype2 -I/home/dan/oF/libs/freetype/include/freetype2/freetype -I/home/dan/oF/libs/freetype/include/freetype2/freetype/config -I/home/dan/oF/libs/freetype/include/freetype2/freetype/internal -I/home/dan/oF/libs/freetype/include/freetype2/freetype/internal/services -I/home/dan/oF/libs/kiss/include -I/home/dan/oF/libs/portaudio/include -I/home/dan/oF/libs/rtAudio/include -I/home/dan/oF/libs/tess2/include -I~/oF/libs/poco/include -I/home/dan/oF/libs/openFrameworks/ -I/home/dan/oF/libs/openFrameworks/communication -I/home/dan/oF/libs/openFrameworks/app -I/home/dan/oF/libs/openFrameworks/video -I/home/dan/oF/libs/openFrameworks/sound -I/home/dan/oF/libs/openFrameworks/utils -I/home/dan/oF/libs/openFrameworks/graphics -I/home/dan/oF/libs/openFrameworks/types -I/home/dan/oF/libs/openFrameworks/gl -I/home/dan/oF/libs/openFrameworks/math -I/home/dan/oF/libs/openFrameworks/events -I/home/dan/oF/libs/openFrameworks/3d -march=native -mtune=native -Os   -MMD -MP -MFobj/x86_64Release/src/main.d -MTobj/x86_64Release/src/main.o -oobj/x86_64Release/src/main.o -c src/main.cpp  
In file included from /home/dan/oF/libs/openFrameworks/ofMain.h:6:0,  
                 from src/testApp.h:14,  
                 from src/main.cpp:1:  
/home/dan/oF/libs/openFrameworks/utils/ofFileUtils.h:4:23: fatal error: Poco/File.h: No such file or directory  
compilation terminated.  
make: *** [obj/x86_64Release/src/main.o] Error 1  

I don’t understand why it would fail to find this header file when I copy any of the examples, but everything works great with the examples in their original locations. Does anyone have any insight as to why this might happen? Am I missing something else that I should change in the project files? As far as I know, I haven’t changed any files from the oF libraries that I downloaded. Perhaps a reinstall is worth a try.

Any help would be greatly appreciated. I’m excited to get started working with openFrameworks, but there’s still a handful of bugs in my setup that are making me frustrated!

hm I think this should work. although I don’t have too much experience with alternative project locations, the makefiles can be a bit fragile I think.

on another note, OF works perfectly well with eclipse - add the eclipse projects in OF/libs, OF/libs/openFrameworks, OF/addons via file-import-general-existing project to your workspace, analogous to step K in http://www.openframeworks.cc/setup/android-eclipse/. should build out of the box. add “makefile project with existing code” for your projects and examples. run configs should work with default settings (indigo also picks up the binary from the bin folder when making your run configuration now)