c++devil

undefined reference to `iluInit' ONLY


This is very strange or very simple. I am using Devil library and in the very simple program I have to initialize it by:

ilInit();
iluInit();

And here is the problem. IlInit() works fine, but iluInit() is not! It can not find the reference.

Of course I include headers:

#include <IL/il.h>
#include <IL/ilu.h>

And compile my file by:

g++ -std=gnu++11 -O3 myIL.cpp -lglfw3 -lGL -lGLEW -lIL -lGLU -lX11 -lXxf86vm -lpthread -lXrandr -lXi -o myIL

(generally I want to use Devil lib for OpenGL project but I don't think it is important right now).

I have also all headers in /usr/include/IL and *.a, *.so etc. files in /usr/lib/x86_64-linux-gnu.

Btw it also be great if someone could explain me what the difference between IlInit(), iluInit() and ilutInit(). I cannot find the simple explanation.


Solution

  • I don't know anything about devils, but I suspect you forgot to link against the relevant library -- wouldn't that be libILU.so, i.e. require the compiler/loader option -lILU?