getting started, make errors from debug options?
Sorry, I'm still having trouble. Dabbling in many things to become dangerous, but mastering none. I'm still not able to make successfully. I'm not sure what I did to get past the previous make error. Maybe initially I didn't choose all the defaults and got something set wrong. Do I delete the sdkconfig file to get back to no settings and then it will ask all the options first time running make? I think I have openvehicles esp-idf and ovms latest versions from GIT correctly installed. I chose defaults in make menuconfig (except setting the correct USB port), and chose defaults when GENCONFIG runs from make. I changed to other OVMS versions between 3.2.000 and 3.2.008 and current master, all with same error occurring. It errors out in ovms_module, with module_tasks_data not declared in this scope. It looks like related to having debugging options selected or not? The #ifdef conditional sections contain the declaration of module_tasks_data, so it doesn't get declared, but it is still used. Am I missing setting some option for make or configuring compile options? It must be one of these? #ifndef CONFIG_HEAP_TASK_TRACKING #define NOGO 1 #endif #if configUSE_TRACE_FACILITY==0 #define NOGO 1 #endif #ifdef CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION #define NOGO 1 #endif ~/Leaf/OVMS/v3/vehicle/OVMS.V3$ make Toolchain path: /home/dklein/Leaf/OVMS/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc Toolchain version: crosstool-ng-1.22.0-80-g6c4433a Compiler version: 5.2.0 Python requirements from /homez/dklein/Documents/Projects/Leaf/OVMS/esp-idf/requirements.txt are satisfied. App "ovms3" version: 3.2.008-15-gca307f88-dirty CXX /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/main/ovms_module.o /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp: In function 'void module_eventhandler(st d::__cxx11::string, void*)': /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp:973:47: error: 'module_tasks_data' was no t declared in this scope module_tasks_data(0, NULL, NULL, 0, NULL); ^ /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp: In constructor 'OvmsModuleInit::OvmsModu leInit()': /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp:1048:73: error: 'module_tasks_data' was n ot declared in this scope cmd_tasks->RegisterCommand("data","Output module task stats record",module_tasks_data); ^ /homez/dklein/Documents/Projects/Leaf/OVMS/esp-idf/make/ component_wrapper.mk:289: recipe for target 'ovms_module.o' failed make[1]: *** [ovms_module.o] Error 1 /home/dklein/Documents/Projects/Leaf/OVMS/esp-idf/make/project.mk:552: recipe for target 'component-main-build' failed make: *** [component-main-build] Error 2 Thanks! Dale
Dale, It is advised to start with .../OVMS.V3/support/sdkconfig.default.hw31 as your sdkconfig and make adjustments from there. The error you hit is a bug. The way the conditional compilation is handled in ovms_module.cpp is to have a dummy instance of the function that gets included when the necessary infrastructure configurations are not included. That dummy instance was not added when the real module_tasks_data() function was added. I can fix that. -- Steve On Thu, 19 Dec 2019, Dale wrote:
Sorry, I'm still having trouble. Dabbling in many things to become dangerous, but mastering none. I'm still not able to make successfully.
I'm not sure what I did to get past the previous make error. Maybe initially I didn't choose all the defaults and got something set wrong. Do I delete the sdkconfig file to get back to no settings and then it will ask all the options first time running make?
I think I have openvehicles esp-idf and ovms latest versions from GIT correctly installed. I chose defaults in make menuconfig (except setting the correct USB port), and chose defaults when GENCONFIG runs from make. I changed to other OVMS versions between 3.2.000 and 3.2.008 and current master, all with same error occurring.
It errors out in ovms_module, with module_tasks_data not declared in this scope. It looks like related to having debugging options selected or not? The #ifdef conditional sections contain the declaration of module_tasks_data, so it doesn't get declared, but it is still used.
Am I missing setting some option for make or configuring compile options? It must be one of these? #ifndef CONFIG_HEAP_TASK_TRACKING #define NOGO 1 #endif #if configUSE_TRACE_FACILITY==0 #define NOGO 1 #endif #ifdef CONFIG_FREERTOS_ASSERT_ON_UNTESTED_FUNCTION #define NOGO 1 #endif
~/Leaf/OVMS/v3/vehicle/OVMS.V3$ make Toolchain path: /home/dklein/Leaf/OVMS/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc Toolchain version: crosstool-ng-1.22.0-80-g6c4433a Compiler version: 5.2.0 Python requirements from /homez/dklein/Documents/Projects/Leaf/OVMS/esp-idf/requirements.txt are satisfied.
App "ovms3" version: 3.2.008-15-gca307f88-dirty CXX /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/main/ovms_module.o
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp: In function 'void module_eventhandler(st d::__cxx11::string, void*)': /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp:973:47: error: 'module_tasks_data' was no t declared in this scope module_tasks_data(0, NULL, NULL, 0, NULL); ^ /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp: In constructor 'OvmsModuleInit::OvmsModu leInit()': /homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/main/ovms_module.cpp:1048:73: error: 'module_tasks_data' was n ot declared in this scope cmd_tasks->RegisterCommand("data","Output module task stats record",module_tasks_data); ^ /homez/dklein/Documents/Projects/Leaf/OVMS/esp-idf/make/ component_wrapper.mk:289: recipe for target 'ovms_module.o' failed make[1]: *** [ovms_module.o] Error 1 /home/dklein/Documents/Projects/Leaf/OVMS/esp-idf/make/project.mk:552: recipe for target 'component-main-build' failed make: *** [component-main-build] Error 2
Thanks! Dale
participants (2)
-
Dale -
Stephen Casner