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

Мой сборщик и флешер

Neov

Member
Вам написал - не создает правильных бинарников, не позволяет менять многие вещи, необходимые для отладки и прочего.
очевидно, что проект не компилируется, рас нет бинарников. Для этого я и прошу у Вас STDERR, чтобы разобраться в причинах.

Кроме того требует перевода на него всей задуманной структуры, а его решения не оптимальны
Вот прямо сейчас скачал проект с гит, и собрал с первого раза :) но тем не менее Ваше пожелание об указании пути к SDK в работе.
 

pvvx

Активный участник сообщества
очевидно, что проект не компилируется, рас нет бинарников. Для этого я и прошу у Вас STDERR, чтобы разобраться в причинах.
У сожалению уже всё стер. Надо опять качать, пихать команды... :(
Скачайте то, что есть - оно создаст бинарники, с которыми можно сравнить и логи все будут.
Вот что оно говорит на проекте RTL00_AT:
Код:
source not found: 'component\\soc\\realtek\\8195a\\cmsis\\device\\system_8195a.c' in bld(posted=True, compile_nodes=[], target='', idx=2, link_nodes=[], _name='SRC compile', meths=['ameba_preparation', 'ameba_compile', 'process_rule'], includes=['project\\realtek_ameba1_va0
.....
, '-fno-short-enums', '-mcpu=cortex-m3', '-std=gnu99', '-fsigned-char'], path=E:\RTL87xx\tst1\RTL00_AT, defines=['M3', 'CONFIG_PLATFORM_8195A', 'GCC_ARMCM3', 'ARDUINO_SDK', 'F_CPU=166000000L'], features=['ameba_compile']) in E:\RTL87xx\tst1\RTL00_AT
+ Снимок1333.gif
 
Последнее редактирование:

pvvx

Активный участник сообщества
На проекте RTL00MP3 файлы ram_1.bin, ram_all.bin неверны.
app.nmap - не сортирован, а создается для просмотра не машиной.
Файлов ram_1.p.bin, ram_1.r.bin - нет.
В директории проекта зачем-то нужны *.ld и export-rom_v04.txt, когда они лежат в SDK.
Создается куча ненужных директорий, кучи каких-то файлов - нафиг они?
Если стереть бинарники - новых не создается.
Если стереть build, чтобы перетранслировал - нового не создает. Надо делать всё с нова...
Ничего не поменять в файлах питона - нужен специальный редактор, различаюший таб и пробелы, ещё кроме синтаксиса команд make надо соблюсти язык питона - это всё в нагрузку, чтобы никогда не получить правильные бинарники? :)
Как проверить в RAM полученную прошивку и boot-loader?

И ещё раз - Параллельная компиляция с имеющимися make работает быстрее вашей версии - [inline]mingw32-make.exe -j[/inline], но гарантии, что будет работать у всех - нет. Зависит от операционки и её поддержки кол-ва реальных ядер у проца. Нет патча - будет срываться. Ryzen на 8 реальных ядрах, патча на десятку win пока нет.
В flasher.mk параллелька отключена [inline].NOTPARALLEL[/inline] - там нечего параллелить - только ошибки собирать :)
 
Последнее редактирование:

Neov

Member
Наконец то, радует что хоть ram_all.bin уже получили :)

"И тут Остапа понесло" :) Начинаются придирки в стиле "а тут файлики какие то, я к ним не привык...", а эти файлики нужны, они хранят в том числе базу других файликов, их хеши и много другой полезной инфы, трогать их не нужно, и раздражаться от них тоже не желательно :)

ram_all.bin неверны
Тем не менее заливал ram_all.bin и она загружается и работает.

нужен специальный редактор, различаюший таб и пробелы, ещё кроме синтаксиса команд make надо соблюсти язык питона
Скажу по-секрету, открываете notepad.exe и аккуратно пробелами выравниваете под строчку выше, у Вас обязательно получится, я в Вас верю. Ничего нового на питоне там, в принципе, писать не нужно, достаточно редактировать в местах где есть кавычки :)


В директории проекта зачем-то нужны *.ld и export-rom_v04.txt, когда они лежат в SDK.
app.nmap - не сортирован, а создается для просмотра не машиной.
Это я уже исправил, теперь достаточно до скрипта прописать прямой путь, и nmap теперь отсортирован.
Файлов ram_1.p.bin, ram_1.r.bin - нет.
Их специально нет, принял немного другую номенклатуру: .bin.raw - дергнутые секции, .bin - секции с шапой (а в случае Image1 ещё и растянутые). Впрочем называйте их как угодно, в wscript все интуитивно расписано, если уж сложно воспринять могу комментарии накидать :)

Если стереть build, чтобы перетранслировал - нового не создает. Надо делать всё с нова...
А вот тут клеветать не надо, удаляете что-то из build - файл заново генерируется :)

И ещё раз - Параллельная компиляция с имеющимися make работает быстрее вашей версии
Оооочень смелое утверждение :)

А вообще болезненная реакция у Вас, однако :)
 
Последнее редактирование:

pvvx

Активный участник сообщества
А вообще болезненная реакция у Вас, однако :)
Нет у меня никакой реакции, кроме "подсталом" - просили помочь, а теперь наезжаете :)
Давно крышу чинили?
Файлы у вас от старого SDK. Пользуйтесь наздоровье. :)
Не работает ваша сборка как надо - я в этом не виновен и предупреждать по сто раз не обязан :p
А в кавычках сами как нибудь разберетесь - пока ещё не смогли :) C простым make совладать не можете, всё логи какие-то надо. :)
Не нужны "дерганутые" секции. Из "дерганутых" там только ram.bin - исключительно для теста (забыл отключить его вывод).
Наконец то, радует что хоть ram_all.bin уже получили :)
Угу - целый день потратили, а правильного так и не вышло. Горе программа - не находите?

"И тут Остапа понесло" :) Начинаются придирки в стиле "а тут файлики какие то, я к ним не привык...", а эти файлики нужны, они хранят в том числе базу других файликов, их хеши и много другой полезной инфы, трогать их не нужно, и раздражаться от них тоже не желательно:)
Давайте я вам добавлю таких файликов, "очень полезных", для автомата, в SDK на git - все будут рады :)
Просто умора - программа трансляции создающая кучи срани вокруг себя :)
Она без них жить не может? :) От сохранения всякой фигни прямо в исходники в SDK от BADI избавились, теперь появился новый скрипт, срущий вокруг :)
 
Последнее редактирование:

Neov

Member
Нет у меня никакой реакции, кроме "подсталом" - просили помочь, а теперь наезжаете :)
Давно крышу чинили?Не работает ваша сборка как надо - я в этом не виновен и предупреждать по сто раз не обязан :pГоре программа - не находите? Угу - целый день потратили, а правильного так и не вышло. кучи срани вокруг себя :)
И это Вы мне про крышу?:-D Был бы другой вопрос, если бы действительно помогали, вместо выдуманных страданий, и о горе :) Раз 5 просил лог прислать, так и не прислали. Но зато "какое горе эта ваша программа". Пока что только 5% замечаний по существу, и 95% страданий и неадеквата :)

Файлы у вас от старого SDK. Пользуйтесь наздоровье. :)
А это Вы собственно о чем? :D Файлы от SDK я не поставлял, а судя по огрызку, что присылали выше, _build_src у вас вообще не от rtl00mp3.

А в кавычках сами как нибудь разберетесь - пока ещё не смогли :) C простым make совладать не можете, всё логи какие-то надо. :)
Да уж прекрасно наелся make, и прекрасно знаю его как плюсы так и минусы, от того и начал делать сборку на waf :)
Многие проекты счастливо живут на WAF: Projects using the Waf build system и другие :)

Не нужны "дерганутые" секции. Из "дерганутых" там только ram.bin - исключительно для теста (забыл отключить его вывод).
Серьезно? а ram_2 вы как получаете? :D

Давайте я вам добавлю таких файликов, "очень полезных", для автомата, в SDK на git - все будут рады :)Просто умора - программа трансляции создающая кучи срани вокруг себя :)
Она без них жить не может? :) От сохранения всякой фигни прямо в исходники в SDK от BADI избавились, теперь появился новый скрипт, срущий вокруг :)
Да пожалуйста, создавайте! Если ваш чудо сборщик на make, пардон mingw-make, внезапно начнет параллельно собирать, станет по-настоящему кроссплатформенный, будет анализировать исходники и выборочно компилировать, или хотя бы без засранного зоопарка из bat, то не страшно.
Либо бурная фантазия у Вас, либо помутнение рассудка ввиду приступов агрессии, если вы нашли waf срущим в SDK, когда он в принципе работает в build

В общем, помощи от Вас никакой, но хоть хорошее настроение с утра дарите :)
 

sharikov

Active member
Если ваш чудо сборщик на make, пардон mingw-make, внезапно начнет параллельно собирать, станет по-настоящему кроссплатформенный, будет анализировать исходники и выборочно компилировать, или хотя бы без засранного зоопарка из bat, то не страшно.
параллельно собирает:
Сборка на 1 ядре:
time make-4.2 all
make-4.2[1]: Entering directory '/mnt/w2/rtl8710/rtlhttpd'
===========================================================
......
......
Image (build/bin/ota.bin) size 247624 bytes
Image (build/bin/ram_all.bin) size 292676 bytes
===========================================================
make-4.2[1]: Leaving directory '/mnt/w2/rtl8710/rtlhttpd'
real 0m20.860s
user 0m17.830s
sys 0m2.765s

Сборка на 2 ядрах:
time make-4.2 all
make-4.2[1]: Entering directory '/mnt/w2/rtl8710/rtlhttpd'
===========================================================
......
......
Image (build/bin/ota.bin) size 247624 bytes
Image (build/bin/ram_all.bin) size 292676 bytes
===========================================================
make-4.2[1]: Leaving directory '/mnt/w2/rtl8710/rtlhttpd'
real 0m12.198s
user 0m18.620s
sys 0m3.147s

с каких это пор make перестал быть кроссплатформенным ?
собираю rtl00mp3 на linux - почему то собирается.
bat файлы я не использую - вписал то что мне нужно в свой makefile.

если меняю 1 файл компилирует только его.
 

pvvx

Активный участник сообщества
Вам пример с исправлениями дал. Так и остальное поправите, а то в Питоне тоже оказалось что не шарите, но уже лезете :)
А make на waf выкиньте. Не нужен он никому - срет и больше ничего от него.
В общем дописывайте, что можете - возьму за шаблон, чтобы буков меньше набивать - слеплю программатор. :)
И это Вы мне про крышу?:-D Был бы другой вопрос, если бы действительно помогали, вместо выдуманных страданий, и о горе :) Раз 5 просил лог прислать, так и не прислали.
И читать не умеете - выдано и больше раз.
Но зато "какое горе эта ваша программа". Пока что только 5% замечаний по существу, и 95% страданий и неадеквата :)
Ну вот и признались - и в маке не шарите. Проект в нем собирается и все логи дает - достаточно жать одну кнопку, а не лопатить мантры запуска питонным скриптам. Кроме waf есть ещё варианты. Поищите и поглядите, а то так в безызвестности и помрете...
Подучите типы и преобразования в Питоне - в ваших исходниках видно, что не выучили и вызывают у вас большие проблемы...
Да, и бинарники boot-ов, которые вы любите "дергануть" выкинуты на git - ваш скрипт теперь опять не работает. Нас закрытый код, да ещё и с ошибками, не устраивает.
Да пожалуйста, создавайте! Если ваш чудо сборщик на make, пардон mingw-make, внезапно начнет параллельно собирать, станет по-настоящему кроссплатформенный, будет анализировать исходники и выборочно компилировать, или хотя бы без засранного зоопарка из bat, то не страшно.
Оно уже - с самого начала кросс и параллельно работает. Батники там - нет программатора и его концепция ещё не сформирована. Думал, что вы сделаете. Но оказалось, что можете только предложить чужой waf, замещающий уже работающее, а нужную часть без папочки написать не можете :(
 
Последнее редактирование:

Neov

Member
Вам пример с исправлениями дал. а то в Питоне тоже оказалось что не шарите, но уже лезете :)Подучите типы и преобразования в Питоне - в ваших исходниках видно, что не выучили и вызывают у вас большие проблемы...
А, вы уже научились отступы в питоне делать? теперь ещё мьсе и учит :) А что вы там "исправили" ? обернули в __main__ ? А вот про типы, вызывающие "большие проблемы" подробней ? :)

Нас закрытый код не устраивает.
А make на waf выкиньте. Не нужен он никому - срет и больше ничего от него.лопатить мантры запуска питонным скриптам
Ваше невежество во всем что выходит за рамки make и С уже перешло все границы разумного и дискутировать на эту тему уже смысла нет.

Кроме waf есть ещё варианты. Поищите и поглядите, а то так в безызвестности и помрете...
Смотрите за собой, "эксперт", а то так и помрете ограниченным костылям make в windows.
 
Последнее редактирование:

Neov

Member
с каких это пор make перестал быть кроссплатформенным ?
собираю rtl00mp3 на linux - почему то собирается.
Примерно те же результаты по скорости и у меня.
Я же не утверждал о непригодности make, все же как никак негласный стандарт, ровно как ничего против make не выражал.
Впервые решил сделать сборку на waf, и оценил ряд преимуществ.
 

pvvx

Активный участник сообщества
Примерно те же результаты по скорости и у меня.
Я же не утверждал о непригодности make, все же как никак негласный стандарт, ровно как ничего против make не выражал.
Впервые решил сделать сборку на waf, и оценил ряд преимуществ.
А в чем преимущества? Стандартной конфигурации для Eclipse или IAR не понимает. Создать makefile не может, сожрать установки из сред - тоже. Есть уже готовые, которые это всё делают. А у нас тут детсад и всё для начинающих - чем проще - тем лучше, чем меньше внешних либ в том-же питоне - тем лучше.
Те-же батники и оставлены - с ними разберется любой и поправит как ему надо. Меньше вопросов :)
 
Последнее редактирование:

Neov

Member
А в чем преимущества? Стандартной конфигурации для Eclipse или IAR не понимает. Создать makefile не может, сожрать установки из сред - тоже. Есть уже готовые, которые это всё делают. А у нас тут детсад и всё для начинающих - чем проще - тем лучше, чем меньше внешних либ в том-же питоне - тем лучше.
Те-же батники и оставлены - с ними разберется любой и поправит как ему надо. Меньше вопросов :)
А тем что это Python, и вся его гибкость. Можно слепить все необходимое, включая лепку бинарников, прошивку и др. И все будет работать с пол пинка без костылей на любой ОС. Python и WAF прекрасно работают с переменными окружения, настройка Eclipse проста до безобразия, как и любая IDE. В wscript указаны все необходимые данные, в достаточно простом виде.

чем меньше внешних либ в том-же питоне - тем лучше
О чем вы снова, "эксперт"? :) Нужен _только_ питон и больше ничего.
 

pvvx

Активный участник сообщества
Универсальное, удобное, быстрое, кроссплатформенное, самодостаточное решение для сборки и прошивки RTL87xx чипов. Отличная альтернатива ардуинам.
Сборка основана на waf, прошивка подсмотрена на форуме, требуется jlinkarm(.dll/.so/.dylib).
Что это дает:
  • Быстрый старт
  • Никаких bash, mingw, cygwin, binutils, makefile etc.
  • Кросплатформенно, требуется только Python 2.7 и arm-none-eabi-(gcc/nm/objcopy), которые есть почти под все ОС.
  • Высокая скорость
  • Флешер в комплекте
  • Любая IDE
Ни один из лозунгов пока не выполнен. :(
Может ещё прикрутите kconfig и спец среду, как это сделано в esp-idf для ESP-32S. Там вообще ничего не поменять начинающему, без года обучения.
 

pvvx

Активный участник сообщества
А тем что это Python, и вся его гибкость. Можно слепить все необходимое, включая лепку бинарников, прошивку и др. И все будет работать с пол пинка без костылей на любой ОС. Python и WAF прекрасно работают с переменными окружения, настройка Eclipse проста до безобразия, как и любая IDE. В wscript указаны все необходимые данные, в достаточно простом виде.
О чем вы снова, "эксперт"? :) Нужен _только_ питон и больше ничего.
Эксперта мы тут наблюдаем. :) Пытается собрать элементарный проект на питоне и не может :) Где гибкость и скорость? :) Пока одна голословщина и лозунги :)
Промоушин уже стекает, а проект так и не собирается как надо.
До программатора - дальше луны пешком в данном проекте?
Может CMAKE? Или на Java попробуете сделать то, что уже есть? :)
Новых предложений или решений пока не предложили - не оправдывается название темы "Мой ..." :)
Может перепишите gcc на waf?
 
Последнее редактирование:

Neov

Member
Ни один из лозунгов пока не выполнен. :(
Вы же читать умеете, это бета, написанная на скорую руку. И вообще каждый пункт успешно выполняется :) возможно не выполняется у вас или у кого-то ещё, открыт к адекватной обратной связи, от вас её никак нет.

Пытается собрать элементарный проект на питоне и не может :) Где гибкость и скорость? :) Пока одна голословщина и лозунги :)
Промоушин уже стекает, а проект так и не собирается как надо.Новых предложений или решений пока не предложили - не оправдывается название темы "Мой ..." :)
"рукалицо", предлагаю вам срать в других ветках.

До программатора - дальше луны пешком в данном проекте?
Срите в других ветках. Минимальая функция флешера есть и успешно работает :)

Может CMAKE? Или на Java попробуете сделать то, что уже есть? :)
А мысль неплохая, собрать на maven, займитесь если есть желание.

Может перепишите gcc на waf?
интересный ход мыслей, уже были попытки переписать gcc? на make? ваша адекватность вам это позволяет :)
 

pvvx

Активный участник сообщества
"рукалицо", предлагаю вам срать в других ветках.
:p :)
Сдулись - уже виноватых ищите? :)
Вам деваться с подводной лодки некуда. Всё рекомендованное придется исполнить, иначе не выйдет сборщика :p Так шо можете сразу закрывать тему и сваливать, раз не справились.
 
Последнее редактирование:

pvvx

Активный участник сообщества
Жду болванки для программатора на Питоне. Как-нибудь вставлю в исходники на свой git и в rtlDuino :p
И не беспокойтесь – кроме вас и меня ваш скрипт никто не использовал и не знает, что он не работает :). Учтете написанное – выкину waf, а остальное встрою куда – пусть народ развлекается.
 
Последнее редактирование:

Neov

Member
Однако задела эта темка вас, аж не заткнуть пыл истерии:D медом вам тут помазано?
в этой ветке от вас помощи никакой, лучше не отвлекайтесь а пилите свой сдк, а я по мере времени буду синхронизировать wscript :)
 

pvvx

Активный участник сообщества
Однако задела эта темка вас, аж не заткнуть пыл истерии:D медом вам тут помазано?
в этой ветке от вас помощи никакой, лучше не отвлекайтесь а пилите свой сдк, а я по мере времени буду синхронизировать wscript :)
Мне это не мешает. Незя без перерывов корпеть над SDK и т.д. Сообщения не только для вас - не впечатляйтесь :)
 
Сверху Снизу