Probably a mismatch between 32 and 64-bit versions. To confirm, use the "file" command on DaveDetector.o and on uimacpp/lib/libuima.so
UIMACPP binary packages come in both flavors for Linux, so if this is the problem, get the other one. One other solution if your OS is 64-bit and the uimacpp package is 32-bit: modify uimacpp/lib/base.mak to force all compiles to be 32-bit. Regards, Eddie On Wed, Jul 21, 2010 at 4:00 AM, David García <david.garc...@barcelonamedia.org> wrote: > Thanks for your answer Eddie. You are right, the include of <memory> must > be setted before "uima/api.hpp" include. > > Now when I make the DaveDetector example ( make -f DaveDetector.mak ) I get > following error message: > > > /usr/bin/ld: skipping incompatible > /home/david.garcian/uimacpp/uimacpp/lib/libuima.so when searching for -luima > /usr/bin/ld: cannot find -luima > collect2: ld returned 1 exit status > make: *** [DaveDetector.so] Error 1 > > > It says libuima.so is icompatible. Does it have anything to do with the > version of Linux or gcc? > > > David > > El 19/07/2010 15:13, Eddie Epstein escribió: >> >> If you add the include to DaveDetector.cpp, it must be before >> the include of uima/api.hpp. A better way to go would be to >> put the include of<memory> into lowlevel_internal_indexes.hpp >> >> Eddie >> >> >> On Mon, Jul 19, 2010 at 3:01 AM, David García >> <david.garc...@barcelonamedia.org> wrote: >>> >>> Hi Eddie, >>> >>> I have tried adding "#include<memory>", but I've got the same error >>> message. >>> >>> I've also tried using gcc version 4.3.4 and I've also got the same error. >>> >>> Regards, >>> David >>> >>> El 16/07/2010 19:44, Eddie Epstein escribió: >>>> >>>> Hi David, >>>> >>>> More recent versions of g++ are always getting stricter. >>>> Try adding >>>> #include<memory> >>>> to DaveDetector.cpp. >>>> >>>> A goal for uimacpp annotators is that they be portable, meaning that >>>> the annotator code and any non-standard dependencies could be packaged >>>> together, and installed anyplace on a target system. LD_LIBRARY_PATH >>>> is very useful for this. >>>> >>>> The alternative is to install uimacpp and it's dependencies in some >>>> standard system directory, but this would require root access. >>>> >>>> Regards, >>>> Eddie >>>> >>>> On Thu, Jul 15, 2010 at 8:04 AM, David García >>>> <david.garc...@barcelonamedia.org> wrote: >>>>> >>>>> Hi all, >>>>> >>>>> I am trying to use uimacpp, Linux version, but I have got problems >>>>> making >>>>> C++ examples. >>>>> I follow README instructions, and when I do: >>>>> >>>>> make -f DaveDetector.mak >>>>> >>>>> I get following error: >>>>> >>>>> /uimacpp/include/uima/lowlevel_internal_indexes.hpp: In member function >>>>> ‘virtual void >>>>> >>>>> uima::lowlevel::internal::CachedCompositeIndex<T>::clearAndFillCache()’: >>>>> /uimacpp/include/uima/lowlevel_internal_indexes.hpp:348: error: >>>>> ‘auto_ptr’ >>>>> was not declared in this scope >>>>> /uimacpp/include/uima/lowlevel_internal_indexes.hpp:348: error: >>>>> expected >>>>> primary-expression before ‘>’ token >>>>> /uimacpp/include/uima/lowlevel_internal_indexes.hpp:348: error: there >>>>> are >>>>> no >>>>> arguments to ‘apit’ that depend on a template parameter, so a >>>>> declaration >>>>> of >>>>> ‘apit’ must be available >>>>> /uimacpp/include/uima/lowlevel_internal_indexes.hpp:348: note: (if you >>>>> use >>>>> ‘-fpermissive’, G++ will accept your code, but allowing the use of an >>>>> undeclared name is deprecated) >>>>> /uimacpp/include/uima/lowlevel_internal_indexes.hpp:349: error: ‘apit’ >>>>> was >>>>> not declared in this scope >>>>> make: *** [DaveDetector.o] Error 1 >>>>> >>>>> >>>>> I am using gcc version 4.4.1 (Ubuntu 4.4.1-4ubuntu9). >>>>> >>>>> >>>>> Am I doing something wrong? >>>>> I have also found that it is not a good practise to use LD_LIBRARY_PATH >>>>> env >>>>> variable. Is this correct? >>>>> >>>>> >>>>> Thanks in advanced, >>>>> >>>>> David >>>>> >