• Уважаемые посетители сайта esp8266.ru!
    Мы отказались от размещения рекламы на страницах форума для большего комфорта пользователей.
    Вы можете оказать посильную поддержку администрации форума. Данные средства пойдут на оплату услуг облачных провайдеров для сайта esp8266.ru
  • Система автоматизации с открытым исходным кодом на базе esp8266/esp32 микроконтроллеров и приложения IoT Manager. Наша группа в Telegram

Ошибки при сборке примеров в UDK

Alex

Member
Интересно почему 520 у кого то работает а у кого то нет.
У меня вообще ccplus с ошибкой windows вываливается.
 

CHERTS

Moderator
Команда форума
Интересно почему 520 у кого то работает а у кого то нет.
У меня вообще ccplus с ошибкой windows вываливается.
Может дело в железе? У кого какая конфигурация ПК? CPU, Память?
У меня на работе AMD Athlon II X2 270 + DDR3 8Gb
Дома Intel Core i5 (Skylake) + DDR4 16Gb
 

nikolz

Well-known member
Может дело в железе? У кого какая конфигурация ПК? CPU, Память?
У меня на работе AMD Athlon II X2 270 + DDR3 8Gb
Дома Intel Core i5 (Skylake) + DDR4 16Gb
Нет, железо будет влиять если оно неисправное и это будет приводить к зависанию или вылету OC.
 

CHERTS

Moderator
Команда форума
Вопрос на засыпку, тем у кого есть ошибки, а как насчет попробовать компилятор от SysGCC ? Там 5.2 версия, будут ли там ошибки сборки ?
 

CHERTS

Moderator
Команда форума
Прошу проверить новую сборку компилятора на предмет появления ошибки float, качаем тут, в архиве только папка xtensa-lx106-elf
 

serg28serg

New member
при сборке Modbus TCP - RTU ,
компилятор стал ругаться что нет питона
ставлю питон 2.7
ругается на отсутствие "No module named serial"

может общую инструкцию UDK дописать, все одно питон нужен для некоторых проектов , столько времени теряешь на исправление багов когда делаешь с нуля, и ищешь что же там еще в пакетах не хватает

здесь я поиском не нашел, может замыливает постами с подобными ошибками
../Makefile:198: recipe for target
C:\Python27\

установка на винде PySerial :
скачиваем и устанавливаем Python 2.7...
Download Python
при установки указать "прописать PATH" в системные переменные (точной фразы не помню)
скачиваем get-pip.py
Installation — pip 8.2.0.dev0 documentation
запускаем get-pip.py (расширение .py), откроется окно и скачает pip в соответствующую папку питона
запускаем CMD (или другую командную строку)
от администратора и скачиваем PySerial командной строкой
C:\Python27\Scripts\pip.exe install pyserial

после этого Modbus TCP - RTU уже собрался
 

CHERTS

Moderator
Команда форума
может общую инструкцию UDK
В общем случае питон для UDK не нужен, т.к. все питоновсике утилиты уже скомпилированы в exe, но если хочется, то:
1. Скачиваем и ставим Pyton 2.7.x нужной версии x86 или x64
2. Запускаем файл C:\Espressif\utils\ESP8266\py2exe_esptool.cmd который свежий их репо, там я поправил определение разрядности питона для правильной установки нужной версии py2exe
3. Profit.

py2exe_esptool.cmd и ему подобные (py2exe_XXXX.cmd) из C:\Espressif\utils\ESP8266\ компилируют exe файлики их *.py в .exe, при этом они проверяют зависимости и ставят все необходимые модули, в частности pip, pyserial, argparse, py2exe

P.S. Последние версии питона инсталлятора питона сами ставят pip
 

tkont

New member
знать
py2exe_esptool.cmd и ему подобные (py2exe_XXXX.cmd) из C:\Espressif\utils\ESP8266\ компилируют exe файлики их *.py в .exe, при этом они проверяют зависимости и ставят все необходимые модули, в частности pip, pyserial, argparse, py2exe
понял, это ж надо еще знать что нужно такой то файл в такой то папке запустить, после установки питона :)
переделал - заработало
 
Последнее редактирование:

nikolz

Well-known member
А какие ошибки?
16:36:26 **** Build of configuration Default for project rboot ****
mingw32-make.exe -f C:/Espressif/examples/ESP8266/rboot/Makefile all
Building esptool2 firmware tool
mingw32-make.exe[1]: Entering directory 'C:/Espressif/examples/ESP8266/rboot/esptool2'
CC esptool2.c
gcc -O2 -Wall -c esptool2.c -o esptool2.o
esptool2.c: В функции «CreateHeaderFile»:
esptool2.c:214:19: предупреждение: format «%x» expects argument of type «unsigned int», but argument 3 has type «Elf32_Addr {aka long unsigned int}» [-Wformat=]
fprintf(outfile, "const uint32 entry_addr = 0x%08x;\r\n", elf->header.e_entry);
^
esptool2.c:234:20: предупреждение: format «%x» expects argument of type «unsigned int», but argument 4 has type «Elf32_Addr {aka long unsigned int}» [-Wformat=]
fprintf(outfile, "\r\nconst uint32 %s_addr = 0x%08x;\r\nconst uint32 %s_len = %d;\r\nconst uint8 %s_data[] = {",
^
esptool2.c:234:20: предупреждение: format «%d» expects argument of type «int», but argument 6 has type «Elf32_Word {aka long unsigned int}» [-Wformat=]
CC esptool2_elf.c
gcc -O2 -Wall -c esptool2_elf.c -o esptool2_elf.o
LD esptool2
gcc -o esptool2 esptool2.o esptool2_elf.o
mingw32-make.exe[1]: Leaving directory 'C:/Espressif/examples/ESP8266/rboot/esptool2'
Building rBoot boot loader
mingw32-make.exe[1]: Entering directory 'C:/Espressif/examples/ESP8266/rboot/rboot'
mkdir -p build
mkdir -p firmware
CC rboot-stage2a.c
LD build/rboot-stage2a.elf
E2 build/rboot-hex2a.h
CC rboot.c
LD build/rboot.elf
E2 firmware/rboot.bin
mingw32-make.exe[1]: Leaving directory 'C:/Espressif/examples/ESP8266/rboot/rboot'
Building rBoot sample project
mingw32-make.exe[1]: Entering directory 'C:/Espressif/examples/ESP8266/rboot/rboot-sampleproject'
CC main.c
CC rboot-api.c
CC uart.c
CC rboot-ota.c
LD rom0.elf
FW rom0.bin
LD rom1.elf
FW rom1.bin
mingw32-make.exe[1]: Leaving directory 'C:/Espressif/examples/ESP8266/rboot/rboot-sampleproject'

16:36:58 Build Finished (took 31s.140ms)
 

nikolz

Well-known member
И где тут ошибка? это предупреждения, прошивка собирается
А Вы полагаете, что предупреждения от нечего делать пишутся?
Они не являются фатальной ошибкой, а лишь предупреждают, что если что не так, то виноваты Вы сами. Я предупреждения учитываю и убираю причины их порождающие.
-----------------------------------------------
Это как предупреждение, что не надо ходить через дорогу на красный светофор.
Но некоторые ходят, а потом их с дороги собирают.
 

pvvx

Активный участник сообщества
А Вы полагаете, что предупреждения от нечего делать пишутся?
Они не являются фатальной ошибкой, а лишь предупреждают, что если что не так, то виноваты Вы сами. Я предупреждения учитываю и убираю причины их порождающие.
Тогда во всех примерах поставьте опции компилятору -Wall -Werror. Иначе это 'китайский стиль' написания программ.
 

nikolz

Well-known member
Тогда во всех примерах поставьте опции компилятору -Wall -Werror. Иначе это 'китайский стиль' написания программ.
А почему не русский стиль?
Это так по русски. Плевать в колодец, после того как напился.
Т е Вы предлагаете не учитывать предупреждения. Типа знай наших!!!
Хоть и хаваем с китайского рынка, но обязательно оплюем их , чтобы утешить собственное самолюбие.
Может предложите вариант , как убрать данное предупреждение?
 

CHERTS

Moderator
Команда форума
Т е Вы предлагаете не учитывать предупреждения. Типа знай наших!!!
Вы предлагаете мне ковырять чужой код (rboot, nodemcu) с целью доведения его до идеала? Простите, но это не входит в мои планы, мне проще тогда оставить 1 пример helloworld. Вы этого хотите? Для чего вся эта полемика? Вы бы вместо этого вязли да исправили код и сделали pull request, но нет, мы же русские, будем чесать языком еще 10 страниц форума. Херней какой-то страдаете, простите за грубое выражение.

pvvx правильно говорит, ставьте -Wall -Werror и вы увидите столько ошибок в китайском коде, что мама не горюй.
хотите идеальный код, дак пишите его, вам никто не запрещает, что толку обсуждать чужой код (он даже не мой, я про rboot, nodemcu).
 
Сверху Снизу