Table of Contents
1. EMACS & ESP-IDF
VSCODE IS TOO SLOW ON MY MACHINE, SO I USE GNU EMACS
1.1. INSTALL ESP-IDF
1.2. INSTALL EMACS PLUGIN
- EGLOT
- COMPANY
EGLOT HAS ALREADY INCLUDED IN THE LATEST VERSION OF GNU EMACS
M-x package-install company
1.3. EDIT EMACS CONFIG FILE
ADD:
(require 'eglot)
(add-to-list 'eglot-server-programs
'((c++-mode c-mode) .
("clangd" "--query-driver=**" "--header-insertion=never")))
(add-hook 'c-mode-hook 'eglot-ensure)
(add-hook 'c-mode-hook 'company-mode)
1.4. CREATE ESP-IDF PROJECT
cd /path/to/esp-idf/ . export.sh cd /xxx/xxx idf.py create-project hello cd hello idf.py set-target esp32xx idf.py build idf.py flash -p /dev/ttyACMX
1.5. ADD CLANGD CONFIG FILE
WE NEED FIX CLANGD TO WORK IN A CROSS COMPILATION ENVIRONMENT
ADD .clangd ON PROJECT ROOT:
CompileFlags: Add: -Wno-unknown-warning-option Remove: [-m*, -f*] Diagnostics: UnusedIncludes: None CompileFlags: BuiltinHeaders: QueryDriver
1.6. LINK compilecommands.json
cd hello/ ln -sf build/compile_commands.json .
1.7. USE EMACS
cd hello/ emacs main/hello.c
THEN TYPE 'prin' TO TEST EGLOT AND COMPANY WORKING