Так ведь это консольная программа, при запуске в без аргументов выведет в консоль сообщение (usage скорее всего) и завершится.
Попробуйте её из командной строки запустить, увидите. Но вообще стоит прописать путь до директории с исполняемым файлом в переменную PATH, чтобы cmake обнаружил. Знаю, можно в отдельной сессии командной оболочки добавлять пути но ИМХО это мазохизм какой-то в данном случае.
Круто! Тот самый патч наложили, про который где-то в упомянутых тут ветках сахары упоминался? Если там не слишком сложно, то GCC 14.2 вышел:) Думаю, все будут рады и благодарны.
Здорово, жаль, что 5 ГГц пока нет. А как, если в двух словах (чтобы не копаться долго в исходниках), в прошивке победили закрытое API?
Помнится, в esp8266 можно было посылать вообще произвольные пакеты (просто массив байтов), из-за чего этот чип нашел применение в хакерских инструментах. ЕМНИП, в том числе поэтому espressif Wi-Fi стек поставляет в виде статических библиотек с экспортированными довольно высокоуровневыми функциями и такой вольности из коробки уже нет.
Правильно ли я понял, что продаваемый продукт - это две esp32 (C3 + S3) + рассыпуха по мелочи, в ESP32C3 зашит ноу-хау код, который управляется с ESP32S3, для которого уже пользователь с предоставленным SDK пишет программу?
Может, бинарь для C3 продавать отдельно, или слишком "неудобный" ценник получится?:) Нисколько не критикую, понятно, что софт пишут люди, которые хотят кушать, но ощущение, что для сокрытия его дороговизны все это в виде красивой платы сделано.
В MounRiver? Это ж эклипс, у всех таких IDE настройка компилятора (и версии стандарта) в одном месте: C/C++ Build -> Settings -> GNU XXX Compiler -> Optimization -> Language standart.
Могу быть не прав, но из ЭТОГО сделал вывод, что в корректном случае не должно быть пролога/эпилога (naked), но должна быть инструкция mret в конце. MounRiver так сделал.
Потыкал в атрибуты, действительно, GCC из рассмотренного в статье тулчейна не сгенерировал правильный ассемблерный код, к сожалению.
Видимо, нужно брать версию из MRS или как-то патчить, если сильно нужна свежая версия (патчить, наверно, по мотивам ЭТОГО репо).
Я что-то такое видел, но не могу ответить, к сожалению. Если правильно понял RM, то у контроллеров кроме V0, по сути, два набора векторов и вопрос в том, к какому из двух возможных компоновщик слинкует определенный обработки, верно?
Надо изучить, конечно. Возможно, рано порадовался возможности использовать GCC 13.
Примерно из тех же соображений использую. Но все-таки для общего случая (особенно, если в публичный доступ) cmake больше возможностей даёт, хотя бы файлы с гитхаба подтянуть.
А так да, "бесплатное" обновление до самых свежих версий тулчейна, под stm даже C++23 кое-где уже использую (статический оператор [])
Добрый, в CMakeLists прописано, что используются ASM, C и C++, так что просто создавайте cpp-шный файл и будет собрано под C++. Хотя странно, что древний - в последней версии GCC 12.2, он C++20 во многом поддерживает.
Собственно, проделанная работа - это подготовка к тому, чтобы сделать порт библиотечки zhele под ch32, а она "плюсовее" некуда.
Можно, конечно, я во вступлении написал об этом. Но это же то же самое, по сути, что взять MounRiver - собственный формат проекта, что мне не нравится.
Ну и бывают некоторые околополитические вопросы и проблемы использования тех или иных инструментов.
Конечно, под отладкой посмотреть значение аргумента - это гарантированный способ, я лишь хотел сказать, что иногда можно наудачу несколько потенциальных претендентов проверить, тем более, что это минутное дело.
Можно попытать счастья в поиске по строкам после запуска программы, когда строки уже сформированы. Скрин из Cheat Engine (что под руку попалось), искал "Invalid password".
Здорово! В телеграме лайкнул тоже:) Улыбнулся от неизбежного небольшого виндолинуксового холивара
Так ведь это консольная программа, при запуске в без аргументов выведет в консоль сообщение (usage скорее всего) и завершится.
Попробуйте её из командной строки запустить, увидите. Но вообще стоит прописать путь до директории с исполняемым файлом в переменную PATH, чтобы cmake обнаружил. Знаю, можно в отдельной сессии командной оболочки добавлять пути но ИМХО это мазохизм какой-то в данном случае.
Круто! Тот самый патч наложили, про который где-то в упомянутых тут ветках сахары упоминался? Если там не слишком сложно, то GCC 14.2 вышел:) Думаю, все будут рады и благодарны.
Здорово, жаль, что 5 ГГц пока нет. А как, если в двух словах (чтобы не копаться долго в исходниках), в прошивке победили закрытое API?
Помнится, в esp8266 можно было посылать вообще произвольные пакеты (просто массив байтов), из-за чего этот чип нашел применение в хакерских инструментах. ЕМНИП, в том числе поэтому espressif Wi-Fi стек поставляет в виде статических библиотек с экспортированными довольно высокоуровневыми функциями и такой вольности из коробки уже нет.
Кругом обман :(
Правильно ли я понял, что продаваемый продукт - это две esp32 (C3 + S3) + рассыпуха по мелочи, в ESP32C3 зашит ноу-хау код, который управляется с ESP32S3, для которого уже пользователь с предоставленным SDK пишет программу?
Может, бинарь для C3 продавать отдельно, или слишком "неудобный" ценник получится?:) Нисколько не критикую, понятно, что софт пишут люди, которые хотят кушать, но ощущение, что для сокрытия его дороговизны все это в виде красивой платы сделано.
В MounRiver? Это ж эклипс, у всех таких IDE настройка компилятора (и версии стандарта) в одном месте: C/C++ Build -> Settings -> GNU XXX Compiler -> Optimization -> Language standart.
Конечно, это один из очевидных вариантов - использовать GCC из MRS.
Могу быть не прав, но из ЭТОГО сделал вывод, что в корректном случае не должно быть пролога/эпилога (naked), но должна быть инструкция
mret
в конце. MounRiver так сделал.Потыкал в атрибуты, действительно, GCC из рассмотренного в статье тулчейна не сгенерировал правильный ассемблерный код, к сожалению.
Видимо, нужно брать версию из MRS или как-то патчить, если сильно нужна свежая версия (патчить, наверно, по мотивам ЭТОГО репо).
Я что-то такое видел, но не могу ответить, к сожалению. Если правильно понял RM, то у контроллеров кроме V0, по сути, два набора векторов и вопрос в том, к какому из двух возможных компоновщик слинкует определенный обработки, верно?
Надо изучить, конечно. Возможно, рано порадовался возможности использовать GCC 13.
Примерно из тех же соображений использую. Но все-таки для общего случая (особенно, если в публичный доступ) cmake больше возможностей даёт, хотя бы файлы с гитхаба подтянуть.
А так да, "бесплатное" обновление до самых свежих версий тулчейна, под stm даже C++23 кое-где уже использую (статический оператор
[]
)Добрый, в CMakeLists прописано, что используются ASM, C и C++, так что просто создавайте cpp-шный файл и будет собрано под C++. Хотя странно, что древний - в последней версии GCC 12.2, он C++20 во многом поддерживает.
Собственно, проделанная работа - это подготовка к тому, чтобы сделать порт библиотечки zhele под ch32, а она "плюсовее" некуда.
Ну и можно
set (CMAKE_CXX_STANDARD 23)
добавитьМожно, конечно, я во вступлении написал об этом. Но это же то же самое, по сути, что взять MounRiver - собственный формат проекта, что мне не нравится.
Ну и бывают некоторые околополитические вопросы и проблемы использования тех или иных инструментов.
Честно говоря, не знал, но попрошу первокурсников сильнее радоваться задачке на польскую нотацию.
Минутка рекламы :)
Про библиотечный код: если взять библиотеку на шаблонах C++ (хотя нужным оказался только SPI и GPIO), то со стандартным стартапом получилось 1136/60.
Конечно, под отладкой посмотреть значение аргумента - это гарантированный способ, я лишь хотел сказать, что иногда можно наудачу несколько потенциальных претендентов проверить, тем более, что это минутное дело.
Можно попытать счастья в поиске по строкам после запуска программы, когда строки уже сформированы. Скрин из Cheat Engine (что под руку попалось), искал "Invalid password".
Спасибо, что-то я делал не так, значит, пойду разбираться:)