[Ovmsdev] getting started, make errors, path issues?

Dale dalklein at gmail.com
Thu Dec 19 12:12:25 HKT 2019


Thanks again for this really great project and I'm looking forward to using
and adding to it.

Pardon my getting started with OVMS & esp-idf, I suspect I have an issue
with my setup in terms of the path being correctly defined?

I attempted to follow the google docs OVMS developer guide, but I must be
missing something.

The developer guide and the esp-idf instructions seem clear until the
esp-idf instructions to run the install.sh script (setting paths, etc),
but this script or similar doesn't exist in the openvehicles esp-idf
branch?  And the openvehicles esp-idf is a few months old, many items from
the master esp-idf are different now?  does that matter?

Do the instructions mean to install and set up the espressif's master
esp-idf,  and then also clone the openvehicles esp-idf?   Because I think
that's what I've done.

I installed the dependencies and espressif's esp-idf, and am able to flash
at least hello_world on a regular esp32 board over USB and the serial
terminal works with it.  So that seems good.

When I try to compile OVMS I get errors that look like I'm missing
something.  Maybe the something I'm missing is in the openvehicles esp-idf,
but my paths are not including it?   Is there a script in the openvehicles
esp-idf that I need to run?     Is it ok to have both versions of esp-idf
set up at the same time?

First it gives errors about the copyright text to include in the binary?

dklein at ___:~/Leaf/OVMS/v3/vehicle/OVMS.V3$ make
Toolchain path:
/home/dklein/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc

Toolchain version: esp-2019r2
Compiler version: 8.2.0
Python requirements from /home/dklein/esp/esp-idf/requirements.txt are
satisfied.

App "ovms3" version: 3.2.008-15-gca307f88
CC
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/app_update/esp_app_desc.o

AR
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/app_update/libapp_update.a

CC
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/console/argtable3/argtable3.o

/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:
In function 'trex_charnode':
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:3068:7:
warning:
this statement ma
y fall through [-Wimplicit-fallthrough=]
    if(!isclass) {
      ^
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:3074:4:
note:
here
   default:
   ^~~~~~~
At top level:
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:273:19:
error:
'rcsid' defined but
not used [-Werror=unused-const-variable=]
static const char rcsid[]="$Id: getopt_long.c,v 1.1 2009/10/16 19:50:28
rodney Exp rodney $";
                  ^~~~~
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:
In function 'trex_compile':
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:3466:8:
warning:
variable 'exp' mi
ght be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 TRex *exp = (TRex *)malloc(sizeof(TRex));
       ^~~
cc1: some warnings being treated as errors
/home/dklein/esp/esp-idf/make/component_wrapper.mk:291: recipe for target
'argtable3/argtable3.o' failed
make[1]: *** [argtable3/argtable3.o] Error 1
/home/dklein/esp/esp-idf/make/project.mk:610: recipe for target
'component-console-build' failed
make: *** [component-console-build] Error 2
dklein at ___:~/Leaf/OVMS/v3/vehicle/OVMS.V3$


If I eliminate that error, comment out the lines in argtable3,
#ifndef lint
static const char rcsid[]="$Id: getopt_long.c,v 1.1 2009/10/16 19:50:28
rodney Exp rodney $";
#endif /* lint */

Then I get same & other warnings, and finally a 'No rule to make target'.

dklein at ___:~/Leaf/OVMS/v3/vehicle/OVMS.V3$ make
Toolchain path:
/home/dklein/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin/xtensa-esp32-elf-gcc

Toolchain version: esp-2019r2
Compiler version: 8.2.0
Python requirements from /home/dklein/esp/esp-idf/requirements.txt are
satisfied.

App "ovms3" version: 3.2.008-15-gca307f88-dirty
CC
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/app_update/esp_app_desc.o

AR
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/app_update/libapp_update.a

CC
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/build/console/argtable3/argtable3.o

/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:
In function 'trex_charnode':
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:3068:7:
warning:
this statement ma
y fall through [-Wimplicit-fallthrough=]
    if(!isclass) {
      ^
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:3074:4:
note:
here
   default:
   ^~~~~~~
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:
In function 'trex_compile':
/homez/dklein/Documents/Projects/Leaf/OVMS/v3/vehicle/OVMS.V3/components/console/argtable3/argtable3.c:3466:8:
warning:
variable 'exp' mi
ght be clobbered by 'longjmp' or 'vfork' [-Wclobbered]
 TRex *exp = (TRex *)malloc(sizeof(TRex));
       ^~~
make[1]: *** No rule to make target
'/homez/dklein/Documents/Projects/vehicles/OVMS/v3/vehicle/OVMS.V3/components/console/split_argv.c',

needed by 'split_argv.o'.  Stop.
/home/dklein/esp/esp-idf/make/project.mk:610: recipe for target
'component-console-build' failed
make: *** [component-console-build] Error 2
dklein at ___:~/Leaf/OVMS/v3/vehicle/OVMS.V3$



in my .bashrc
# added 12/13/19, dklein, add ESP-IDF tools to path
. "$HOME/esp/esp-idf/export.sh"

which adds to the path as follows.
Adding ESP-IDF tools to PATH...
Checking if Python packages are up to date...
Python requirements from /home/dklein/esp/esp-idf/requirements.txt are
satisfied.
Added the following directories to PATH:
 /home/dklein/esp/esp-idf/components/esptool_py/esptool
 /home/dklein/esp/esp-idf/components/espcoredump
 /home/dklein/esp/esp-idf/components/partition_table/
 /home/dklein/.espressif/tools/xtensa-esp32-elf/esp-2019r2-8.2.0/xtensa-esp32-elf/bin

 /home/dklein/.espressif/tools/xtensa-esp32s2-elf/esp-2019r2-8.2.0/xtensa-esp32s2-elf/bin

 /home/dklein/.espressif/tools/esp32ulp-elf/2.28.51.20170517/esp32ulp-elf-binutils/bin

 /home/dklein/.espressif/tools/openocd-esp32/v0.10.0-esp32-20190708/openocd-esp32/bin

 /home/dklein/.espressif/python_env/idf4.1_py2.7_env/bin
 /home/dklein/esp/esp-idf/tools
Done! You can now compile ESP-IDF projects.
Go to the project directory and run:

 idf.py build





Thanks!   Dale
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openvehicles.com/pipermail/ovmsdev/attachments/20191218/96277734/attachment.html>


More information about the OvmsDev mailing list