A list for the developers of CellML tools

Text archives Help


[cellml-dev] Issues compiling Telicems on RH


Chronological Thread 
  • From: lpsmith at spod-central.org (Lucian Smith)
  • Subject: [cellml-dev] Issues compiling Telicems on RH
  • Date: Fri, 5 Aug 2011 22:43:06 +0100

Talking to yourself is a sign of impending mental collapse...

So, the issue turns out to be the old version of flex after all: the line

#include <FlexLexer.h>

in the .cpp file was finding the version in the old version of flex, not
the new one I installed locally. Changing that line to point directly to
the correct file made everything work.

I suppose in order to address this issue, you'd need something like a
FLEX_INCLUDE variable that you could set in CMake to point the compiler to
the right place?

(Also, for all the bells and whistles, it might be nice to have CMake
check to see if the version of flex it finds is the correct version.)

-Lucian

* Lucian Smith <lpsmith at spod-central.org> [2011-08-05 22:21] writes:
> Using the new make system, I am having problems building Telicems on red
> hat--on ubuntu, everything works fine, which is pretty mysterious.
>
> I had an initial problem with having an old version of flex (for whatever
> reason, I had version 2.5.4, instead of the latest 2.5.35) but updating
> that fixed that problem. Thinking the old version of bison (2.3) might be
> to blame for the new problem, I updated that too (to 2.5) but got the same
> error, even after a 'make clean'. Since compiling bison looked for flex,
> I put the new version of flex in $PATH so it would find that instead of
> the old 2.5.4. But still, no luck.
>
> (Since I'm not admin on the red hat machine, I installed both locally,
> then used the advanced options to set the bison and flex executables to
> point to the new ones. I missed the flex library link at first, but then
> saw it and set that too, but that didn't help.)
>
> Here's the error:
>
> [ 98%] Building CXX object CMakeFiles/telicems.dir/TeLICeMScanner.cpp.o
> /usr/bin/c++ -Dtelicems_EXPORTS -fPIC
> -I/user3/lpsmith/cellml-api/interfaces -I/user3/lpsmith/cellml-api/.
> -I/user3/lpsmith/cellml-api/sources
> -I/user3/lpsmith/cellml-api/sources/dom
> -I/user3/lpsmith/cellml-api/sources/dom_direct
> -I/user3/lpsmith/cellml-api/sources/cellml
> -I/user3/lpsmith/cellml-api/sources/mathml
> -I/user3/lpsmith/cellml-api/extdep/libxml
> -I/user3/lpsmith/cellml-api/extdep/libxml/include
> -I/user3/lpsmith/cellml-api/AnnoTools/sources
> -I/user3/lpsmith/cellml-api/CeLEDS/sources
> -I/user3/lpsmith/cellml-api/CUSES/sources
> -I/user3/lpsmith/cellml-api/CeVAS/sources
> -I/user3/lpsmith/cellml-api/MaLaES/sources
> -I/user3/lpsmith/cellml-api/TeLICeMS/sources -I/user3/lpsmith/cellml-api
> -fvisibility=hidden -o CMakeFiles/telicems.dir/TeLICeMScanner.cpp.o -c
> /user3/lpsmith/cellml-api/TeLICeMScanner.cpp
> /user3/lpsmith/cellml-api/TeLICeMScanner.cpp:321: error: no int
> TeLICeMFlexLexer::yywrap() member function declared in class
> TeLICeMFlexLexer
> /user3/lpsmith/cellml-api/TeLICeMScanner.cpp: In member function virtual
> int TeLICeMStateScan::yylex():
> /user3/lpsmith/cellml-api/TeLICeMScanner.cpp:809: error: yy_buffer_stack
> was not declared in this scope
> /user3/lpsmith/cellml-api/TeLICeMScanner.cpp:809: error:
> yy_buffer_stack_top was not declared in this scope
> /user3/lpsmith/cellml-api/TeLICeMScanner.cpp:810: error:
> yyensure_buffer_stack was not declared in this scope
>
> [etc. etc.]
>
> Any insight? Thank you!
>
> -Lucian
> _______________________________________________
> cellml-tools-developers mailing list
> cellml-tools-developers at cellml.org
> http://lists.cellml.org/mailman/listinfo/cellml-tools-developers




Archive powered by MHonArc 2.6.18.

Top of page