diff --git a/tools/check_python_dependencies.py b/tools/check_python_dependencies.py index 37ba34de3..d8767004b 100755 --- a/tools/check_python_dependencies.py +++ b/tools/check_python_dependencies.py @@ -68,7 +68,9 @@ if __name__ == "__main__": print('The following Python requirements are not satisfied:') for requirement in not_satisfied: print(requirement) - print('Please run "{} -m pip install --user -r {}" for resolving the issue.'.format(sys.executable, args.requirements)) + print('Please refer to the Get Started section of the ESP-IDF Programming Guide for setting up the required ' + 'packages. Alternatively, you can run "{} -m pip install --user -r {}" for resolving the issue.' + ''.format(sys.executable, args.requirements)) sys.exit(1) print('Python requirements from {} are satisfied.'.format(args.requirements)) diff --git a/tools/idf.py b/tools/idf.py index a4e0573d8..716bbf50b 100755 --- a/tools/idf.py +++ b/tools/idf.py @@ -22,7 +22,7 @@ # limitations under the License. # -# Note: we don't check for Python build-time dependencies until +# WARNING: we don't check for Python build-time dependencies until # check_environment() function below. If possible, avoid importing # any external libraries here - put in external script, or import in # their specific function instead. @@ -35,7 +35,6 @@ import multiprocessing import re import shutil import json -import serial.tools.list_ports class FatalError(RuntimeError): """ @@ -419,6 +418,9 @@ def get_default_serial_port(): Same logic as esptool.py search order, reverse sort by name and choose the first port. """ + # Import is done here in order to move it after the check_environment() ensured that pyserial has been installed + import serial.tools.list_ports + ports = list(reversed(sorted( p.device for p in serial.tools.list_ports.comports() ))) try: