Closed ezx closed 3 years ago
Can you paste the output of "c++ --version" or "g++ --version" ?
I hope that this is what you need:
make -C ctables test
make[1]: Entering directory '/speedtables/speedtables/ctables'
cd ./tests && make
make[2]: Entering directory '/speedtables/speedtables/ctables/tests'
rm -rf stobj
TCL_LIBRARY=echo /tcl/tcl8.6.4/library
LD_LIBRARY_PATH="/usr/local/lib:" PATH="/usr/local/lib:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games" TCLLIBPATH=".." /usr/local/bin/tclsh8.6 speedtable.tcl
In file included from stobj/Topbrands/Topbrands-1.0.cpp:86:0:
stobj/include/ctable_io.c: In function ‘int ctablequoteString(const char*, int, int, const char)’:
stobj/include/ctableio.c:63:36: error: invalid conversion from ‘const char’ to ‘char_’ [-fpermissive]
char *off = strchr(special, c);
^
In file included from stobj/Topbrands/Topbrands-1.0.cpp:87:0:
stobj/include/ctable_search.c: In function ‘void ctable_performance_callback(TclInterp, CTable_, TclObj const, int, timespec, int)’:
stobj/include/ctable_search.c:2408:20: error: ‘CLOCK_VIRTUAL’ was not declared in this scope
clock_gettime (CLOCK_VIRTUAL, &endTimeSpec);
^
stobj/include/ctable_search.c: In function ‘int ctable_SetupAndPerformSearch(TclInterp, TclObj const, int, CTable, int)’:
stobj/include/ctable_search.c:2512:17: error: ‘CLOCK_VIRTUAL’ was not declared in this scope
clock_gettime (CLOCK_VIRTUAL, &startTimeSpec);
^
while executing
"exec g++ -O2 -fPIC -DPACKAGE_NAME=\"tcl\" -DPACKAGE_TARNAME=\"tcl\" -DPACKAGE_VERSION=\"8.6\" -DPACKAGE_STRING=\"tcl\ 8.6\" -DPACKAGE_BUGREPORT=\"..."
("eval" body line 1)
invoked from within
"eval exec $command"
(procedure "myexec" line 9)
invoked from within
"myexec "$sysconfig(cxx) $sysString $optflag $dbgflag $sysconfig(ldflags) $sysconfig(ccflags) -I$include $sysconfig(warn) $pgString $stubString $memDeb..."
(procedure "compile" line 85)
invoked from within
"compile $extension $::ctable::extensionVersion"
(procedure "::ctable::EndExtension" line 26)
invoked from within
"::ctable::EndExtension"
(procedure "_speedtables" line 35)
invoked from within
"_speedtables Topbrands 1.0 {
table top_brands { int rank indexed 1 varstring name indexed 1 int value indexed 1 }
}" ("uplevel" body line 1) invoked from within "uplevel 1 [list _speedtables $name $version $code]" (procedure "speedtables" line 10) invoked from within "speedtables Topbrands 1.0 {
table top_brands { int rank indexed 1 varstring name indexed 1 int value indexed 1 }
}" (file "speedtable.tcl" line 7) Makefile:25: recipe for target 'all' failed make[2]: * [all] Error 1 make[2]: Leaving directory '/speedtables/speedtables/ctables/tests' Makefile:229: recipe for target 'test' failed make[1]: * [test] Error 2 make[1]: Leaving directory '/speedtables/speedtables/ctables' Makefile:187: recipe for target 'test' failed make: *\ [test] Error 2
Closing since we now have Linux CI running on Ubuntu. Reopen if you are still having compilation problems.
I am on 64bit Ubuntu, have the latest TCL 8.6.4 64bit installed, Speedtable compiles but fails "make test" or fails during runtime, with the following error:
% package req speedtable 1.9.0 speedtables Animinfo 1.1 { table animation_characters { varstring name indexed 1 unique 0 varstring home varstring show indexed 1 unique 0 varstring dad boolean alive default 1 varstring gender default male int age int coolness } } In file included from stobj/Animinfo/Animinfo-1.1.cpp:86:0: stobj/include/ctable_io.c: In function ‘int ctablequoteString(const char*, int, int, const char)’: stobj/include/ctableio.c:63:36: error: invalid conversion from ‘const char’ to ‘char_’ [-fpermissive] char *off = strchr(special, c); ^ In file included from stobj/Animinfo/Animinfo-1.1.cpp:87:0: stobj/include/ctable_search.c: In function ‘void ctable_performance_callback(TclInterp, CTable_, TclObj const, int, timespec, int)’: stobj/include/ctable_search.c:2408:20: error: ‘CLOCK_VIRTUAL’ was not declared in this scope clock_gettime (CLOCK_VIRTUAL, &endTimeSpec); ^ stobj/include/ctable_search.c: In function ‘int ctable_SetupAndPerformSearch(TclInterp, TclObj const, int, CTable, int)’: stobj/include/ctable_search.c:2512:17: error: ‘CLOCK_VIRTUAL’ was not declared in this scope clock_gettime (CLOCK_VIRTUAL, &startTimeSpec);