Skip to content

Compile to Teensy 3.0 on Windows using Makefile

Good Night,

If you don’t want to use Arduino IDE (Or Teensy IDE? 😉 to programming and uploading your code to Teensy 3.0 you can use Makefiles.

The last IDE version can be found on PJRC Forum . As he said in the Beta 10 version, there is an Makefile example on “arduino-1.0.3\hardware/teensy/cores/teensy3” but to use it you need to add the arm binaries to your system path. To do this, open your command prompt. Start – execute – cmd.

And then type:

PATH = %PATH%;C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\hardware\tools\arm-none-eabi\bin

[If you don’t want to know the modifications that I did, just jump to the end where you can find a resume]

To guarantee that I will not screw everything, I did a copy of “arduino-1.0.3\hardware/teensy/cores/teensy3” and did my modifications on it. I executed:

cs-make.exe

Receveid this error message:

C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\Projects\Example_not_working>cs-make.exe
C:/Users/X-warrior/Desktop/tools/arm-none-eabi/bin/arm-none-eabi-gcc -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib -MMD -DF_CPU=48000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH -I. -c -o analog.o analog.c
process_begin: CreateProcess(NULL, C:/Users/X-warrior/Desktop/tools/arm-none-eabi/bin/arm-none-eabi-gcc -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib -MMD -DF_CPU=48000000 -DUSB_SERIAL -DLAYOUT_US_ENGLISH -I. -c -o analog.o analog.c, …) failed.
make (e=2): The system cannot find the file specified.
cs-make.exe: *** [analog.o] Error 2

Checking the Makefile I decided to change some configs and used FULL PATH for it.
TOOLSPATH = C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\hardware\tools
COMPILERPATH = C:\CAMINHO_PARA_O_ARDUINO\arduino-1.0.3\hardware\tools\arm-none-eabi\bin

The error received was the same, so checking the code again I saw the “abspath” and thought that maybe the problem was this, since I changed my folder location. So I removed all “$(abspath” remember that it has a parenthesis that closes the command. So for example:

$(abspath $(COMPILERPATH)) will be $(COMPILERPATH)

Trying to get it working again with cs-make, it started compiling it, but on the end I received this error:

C:\Users\X-warrior\Desktop\arduino-1.0.3\hardware\tools\arm-none-eabi\bin/arm-none-eabi-objcopy -O ihex -R .eeprom main.elf main.hex
C:\Users\X-warrior\Desktop\arduino-1.0.3\hardware\tools/teensy_post_compile -file=main -path= -tools=C:\Users\X-warrior\Desktop\arduino-1.0.3\hardware\tools
Opening Teensy Loader…
Teensy Loader could not find the file main
cs-make.exe: *** [main.hex] Error 1

Triple checking the Makefile I found “path=$(shell pwd)” and I didn’t remember this pwm command on windows so I tried to execute it and it didn’t work. So I changed it to “path=$(shell echo %cd%)”. Before I start compiling again I decide to clean directory using cs-make clean

I received the following errors:

C:\Users\X-warrior\Desktop\arduino-1.0.3\Projects\Example_not_working>cs-make.exe clean
rm -f *.o *.d main.elf main.hex
process_begin: CreateProcess(NULL, rm -f *.o *.d main.elf main.hex, …) failed.
make (e=2): The system cannot find the file specified.
cs-make.exe: *** [clean] Error 2

And then I noticed that it was calling rm -f which isn’t a windows command too. I changed the rm command to:

del *.o
del *.d
del $(TARGET).elf
del $(TARGET).hex

With this I managed to clean the files and tried to compile again, and… IT WORKS! I did a few tests using main.cpp that was being compiled and uploaded to my Teensy 3. Anyways to work with all that files wasn’t attractive so I decided to go a little further and do some cleaning. So inside my “Project” folder I copied all files excluding Makefile and main.cpp to my new folder inside my project “teensy/”. This way I can compile it without all that files on my working folder. I needed to do a few more changes on Makefile as follow:

C_FILES := $(wildcard *.c) \
$(wildcard $(addprefix teensy/, *.c)) \
$(wildcard $(addprefix teensy/util, *.c)) \
$(wildcard $(addprefix teensy/avr, *.c))
CPP_FILES := $(wildcard *.cpp) \
$(wildcard $(addprefix teensy/, *.cpp)) \
$(wildcard $(addprefix teensy/util, *.cpp)) \
$(wildcard $(addprefix teensy/avr, *.cpp))
OBJS := $(C_FILES:.c=.o) $(CPP_FILES:.cpp=.o)

Linker configuration to:

LDFLAGS = -Os -Wl,–gc-sections -mcpu=cortex-m4 -mthumb -Tteensy/mk20dx128.ld

And to keep it consistent:

$(TARGET).elf: $(OBJS) teensy/mk20dx128.ld
$(CC) $(LDFLAGS) -o $@ $(OBJS)

And then I found this error:

teensy/keylayouts.c:1: fatal error: avr/pgmspace.h: No such file or directory
compilation terminated.
cs-make: *** [teensy/keylayouts.o] Error 1

So I updated the CPPFLAGS to:

CPPFLAGS = -Wall -g -Os -mcpu=cortex-m4 -mthumb -nostdlib -MMD $(OPTIONS) -I. -Iteensy/

And also remembered that the clean should be updated too.

clean:
del *.o
del *.d
del $(TARGET).elf
del $(TARGET).hex
del $(CURRENT_PATH)\teensy\*.o
del $(CURRENT_PATH)\teensy\*.d

And add this on the begin of “Configurations that shouldn’t be updated”

CURRENT_PATH=$(shell echo %cd%)

With all this I managed to get the Makefile working on Windows compiling and uploading for Teensy 3.0

Summary:
You must update TOOLSPATH , COMPILERPATH and use your FULL PATH
Then create a folder “My_Project”
Create another folder inside your project called “teensy” (My_Project/teensy/)
Copy “arduino-1.0.3\hardware/teensy/cores/teensy3/” to “My_Project/teensy/” (subdir too, but not the Makefile)
Add the Makefile that you can download on the end of this post inside “My_Project”
Copy “Meu_Projeto/teensy/main.cpp” too “Meu_Projeto/main.cpp”
Programm inside main.cpp
Compile and upload with cs-make.exe

Makefile to Teensy on Windows

Matheus

Published inCcppTeensywindows

4,785 Comments

  1. This is very attention-grabbing, You’re an overly
    professional blogger. I have joined your feed and look forward to
    in search of extra of your great post. Additionally,
    I’ve shared your site in my social networks

  2. Городской ритм Петрозаводска с озёрным ветром, короткими сумерками и сезонной влажностью повышает сенсорную нагрузку в вечерние часы, поэтому наш маршрут спроектирован «мягко». Координатор заранее уточняет подъезд, парковку, код домофона, рекомендует «тихий режим» связи и присылает нейтральное уведомление о визите. Бригада приходит в гражданской одежде, сумки — без логотипов, разговоры — короткими фразами. Такое поведение снижает у пациента и семьи реактивность, выравнивает вариабельность ЧСС к сумеркам и уменьшает потребность «усиливать» схему на ночь. Если на предзвонке выявлены «красные флаги» — неукротимая рвота, выраженная дезориентация, «скачущий» ритм, одышка — мы предлагаем стационар сразу, чтобы не терять время на повторные маршруты.
    Выяснить больше – нарколог на дом

  3. DonaldTheak DonaldTheak

    В этой медицинской статье мы погрузимся в актуальные вопросы здравоохранения и лечения заболеваний. Читатели узнают о современных подходах, методах диагностики и новых открытий в научных исследованиях. Наша цель — донести важную информацию и повысить уровень осведомленности о здоровье.
    Перейти к полной версии – нарколог на дом спб круглосуточно

  4. Queremos organizar una noche tranquila para celebrar una fecha especial. Granada nos parece una zona practica porque podemos llegar sin demasiada carretera. Las fotos son bonitas, pero queremos entender los detalles cotidianos antes de elegir. Antes de escribir a varios sitios lei una guia de hotel burbuja granada y entendi que detalles merece la pena confirmar antes de reservar. Queremos saber si explican bien el aislamiento y la temperatura nocturna. Miraremos como es la llegada si anochece antes de registrarnos. Nos fijaremos en la separacion entre las unidades y las zonas comunes. Queremos comentarios recientes que expliquen la comodidad de forma concreta. El jacuzzi puede ser agradable, pero no sera nuestro unico criterio. Despues compararemos solo dos o tres lugares usando las mismas preguntas. Si alguien conoce la zona, me ayudaria saber que detalle practico le resulto importante. Queremos que sea una pequena celebracion serena, con tiempo para mirar el cielo y desconectar.

  5. Городская среда Петрозаводска со сменой ветров с Онежского озера, короткими сумерками и сезонными перепадами влажности может усиливать тревожность в вечерние часы. Мы учитываем это с момента первого контакта: согласованная парковка, отдельный вход без вывесок, короткая регистрация без «толстых анкет», приглушённый тёплый свет в зоне ожидания и отсутствие громких объявлений. Родственникам предоставляются «тихие окна» связи — лаконичные апдейты в фиксированное время, чтобы не перегружать пациента и не дёргать команду в критические окна наблюдения. Такой «мягкий» контур снижает сенсорную нагрузку, стабилизирует вариабельность ЧСС к сумеркам и сокращает число импульсивных просьб «усилить на ночь».
    Получить дополнительную информацию – https://narkologicheskaya-klinika-petrozavodsk15.ru/

  6. Lesterguext Lesterguext

    Мы придерживаемся инженерной логики: цель > маркер > окно проверки > отключение модуля. Никаких «сильных коктейлей на всякий случай»: сначала один точный шаг, затем — проверка результата. Именно так формируется прозрачность и доверие: пациент видит причину каждого назначения и понимает момент его завершения. Это уменьшает тревогу, ускоряет восстановление и убирает «инерцию лечения», когда лишние вмешательства продолжаются просто по привычке.
    Получить дополнительную информацию – [url=https://narkolog-na-dom-v-samare16.ru/]нарколог на дом в самаре[/url]

  7. It’s a shame you don’t have a donate button! I’d without a doubt donate to this fantastic blog! I guess for now i’ll settle for book-marking and adding your RSS feed to my Google account. I look forward to brand new updates and will talk about this blog with my Facebook group. Talk soon!

  8. Капельница, устанавливаемая наркологом на дому в Челябинске, помогает быстро очистить организм от токсинов и нормализовать водно-солевой баланс. Растворы включают витамины, анальгетики, седативные и гепатопротекторные препараты. Эффект от процедуры ощущается уже через 20–30 минут. Капельница снижает головную боль, устраняет тошноту, восстанавливает работу печени и сердечно-сосудистой системы. Такой метод считается одним из самых эффективных способов вывести пациента из запойного или абстинентного состояния без визита в стационар.
    Получить дополнительную информацию – нарколог на дом вывод в челябинске

  9. Gregoryecoth Gregoryecoth

    В этой статье мы подробно рассматриваем проверенные методы борьбы с зависимостями, включая психотерапию, медикаментозное лечение и поддержку со стороны общества. Мы акцентируем внимание на важности комплексного подхода и возможности успешного восстановления для людей, столкнувшихся с этой проблемой.
    Личный опыт — читайте сами – медицинское кодирование от алкоголизма

  10. BillyTaumn BillyTaumn

    Вызов нарколога на дом и круглосуточная поддержка в условиях стационара — ключевая услуга клиники «НаркоЦентр», направленная на оказание экстренной и плановой помощи пациентам с алкогольной и наркотической зависимостью. Мы понимаем, что запой или интоксикация могут развиться внезапно, поэтому врач выезжает в любой район Екатеринбурга и ближайшего подмосковья менее чем за 30 минут. При этом круглосуточное дежурство специалистов позволяет продолжить наблюдение и поддержку в стенах клиники, если домашние условия оказываются недостаточно безопасными или комфортными.
    Разобраться лучше – http://narkologicheskaya-pomoshh-ekaterinburg0.ru/skoraya-narkologicheskaya-pomoshh-v-ekb/

  11. DeweyBib DeweyBib

    Самостоятельный отказ от спиртного кажется простым решением, однако при зависимости резкая отмена способна усиливать тревогу, бессонницу, вегетативные реакции и судорожную готовность. Некоторые люди пытаются сделать домашний детокс, используют седативные препараты без назначения или снова выпивают, чтобы стало легче. Такое поведение повышает риск отравления, угнетения дыхания и опасного сочетания медикаментов с алкоголем.
    Изучить вопрос подробнее – vyvod-iz-zapoya-s-vyezdom-balashiha

  12. JerryTounc JerryTounc

    Соблюдаем конфиденциальность, бережно общаемся с пациентом и его близкими на каждом этапе.
    Ознакомиться с деталями – kapelnica-na-domu-moskva-ceny

  13. Особенность петербургского контекста — большая доля интеллектуального труда и проектной занятости. Мы учитываем это при выборе методики: отдаем предпочтение схемам, которые не «глушат» когнитивную активность и позволяют быстро возвращаться к задачам. Если требуются краткие больничные листы, предоставляем корректные медицинские документы без «ярлыков».
    Подробнее можно узнать тут – бесплатное кодирование от алкоголизма

  14. JustinUsave JustinUsave

    Решение о срочном выезде принимается не из «желания поторопиться», а когда домашняя стабилизация действительно снижает риски. Ниже — ориентиры, при которых не стоит откладывать звонок. Любой из перечисленных признаков — повод для консультации, а их сочетание — для немедленного осмотра.
    Получить дополнительные сведения – экстренная наркологическая помощь

  15. Jamesgef Jamesgef

    Клиника принимает людей с разным стажем зависимости. Одни обращаются впервые, другие проходили лечение несколько раз за год и сталкивались со срывами. Очень важно не ждать, пока проблемы станут тяжелыми. Наркологическая помощь необходима при выраженной абстиненции, острой интоксикации, патологическом влечении, изменениях поведения и психических нарушениях. Если состояние связано с делирием или другими опасными проявлениями, обращение за медицинской помощью становится жизненно важным.
    Изучить вопрос подробнее – наркологическая клиника вывод из запоя

  16. Kellysaf Kellysaf

    Капельница на дому подбирается на основе показаний, а не рекламного названия комплекса. Популярные витаминные комплексы подходят не каждому. Определение состава требует учитывать анализ, лекарства и реакции организма. Такой подход минимизирует риск нежелательных эффектов и помогает подобрать качественную медицинскую поддержку.
    Узнать больше – капельница на дому москва цены

  17. Stephengrord Stephengrord

    Этот информационный материал подробно освещает проблему наркозависимости, ее причины и последствия. Мы предлагаем информацию о методах лечения, профилактики и поддерживающих программах. Цель статьи — повысить осведомленность и продвигать идеи о необходимости борьбы с зависимостями.
    Углубиться в тему – вывести из запоя недорого москва

  18. I think this is one of the most significant info for me.
    And i am glad reading your article. But want to remark on some general things, The
    web site style is wonderful, the articles is really excellent :
    D. Good job, cheers

  19. ErnestRok ErnestRok

    Информация об обращении не передается третьим лицам, а детали лечения обсуждаются только с пациентом.
    Ознакомиться с деталями – anonimnaya-narkologicheskaya-klinika

  20. Jamesblort Jamesblort

    При наличии таких проявлений попытки самостоятельно проводить лечение могут увеличить риск осложнений. Не следует давать больному любые сильнодействующие таблетки без назначения врача, пытаться резко снизить давление неизвестными препаратами или сочетать лекарства со спиртным. Оптимальное решение — обратиться за профессиональной наркологической помощью и сообщить специалисту, сколько дней длится запой, какие препараты принимались и имеются ли сопутствующие заболевания.
    Дополнительная информация – http://vyvod-iz-zapoya-krasnoyarsk68.ru/

  21. Ronaldhoano Ronaldhoano

    Консультация помогает родственникам понять, как правильно действовать, если близкий пьет, отказывается от лечения или не считает употребление проблемой. Психолог объясняет особенности созависимости, помогает выбрать способ разговора и сформировать мотивацию к добровольному обращению. Принудительное лечение возможно только в предусмотренных законом ситуациях, поэтому основное внимание направлено на согласие человека и его участие в процессе выздоровления.
    Узнать больше – narkologicheskaya-klinika

  22. Jamesblort Jamesblort

    Вывод из запоя — комплексное медицинское лечение, направленное на безопасное прекращение длительного употребления алкоголя, уменьшение проявлений абстинентного синдрома и постепенное восстановление организма. В Красноярске помощь может быть организована на дому или в стационаре клиники в зависимости от тяжести состояния пациента. Врач оценивает длительность запоя, количество спиртного, возраст, сопутствующие заболевания, работу сердечно-сосудистой и нервной системы, наличие хронических патологий и признаков острых осложнений. Такая диагностика позволяет определить, можно ли провести лечение запоя на дому или больному требуется госпитализация в стационар.
    Дополнительная информация – наркологический вывод из запоя

  23. Michaelbus Michaelbus

    Мы понимаем, как важно быстро и эффективно выйти из запоя, поэтому предлагаем оперативную помощь в любое время в Челябинске. Наши специалисты готовы оказать помощь в любое время дня и ночи.
    Углубиться в тему – анонимный вывод из запоя в челябинске

  24. AaronBrals AaronBrals

    Вывод из запоя дома возможен не всегда. Если человек пьет несколько дней, резко ослаб, перестал нормально спать, жалуется на боль в груди, сильную головную боль, галлюцинации или неадекватное поведение, врач должен проверить тяжесть абстинентного синдрома. Особого внимания требуют пожилые люди, пациенты с болезнями сердца, сосудов, печени, почек и желудка, а также те, у кого ранее были судороги, делирий, инфаркт или инсульт. В такой момент стационарная помощь может быть безопаснее попытки вывести человека на дому.
    Получить больше информации – https://1.vyvod-iz-zapoya-balashiha13.ru/

  25. MichaelNoips MichaelNoips

    Врач учитывает симптомы, риски, анамнез и семейную ситуацию, чтобы предложить подходящую программу.
    Дополнительная информация – vyvod-iz-zapoya-besplatno

  26. Charleswar Charleswar

    После приезда нарколог проводит осмотр, собирает анамнез, уточняет длительность запоя, количество употребленного алкоголя, наличие хронических заболеваний и препараты, которые человек принимает постоянно. Врач оценивает давление, пульс, дыхание, уровень сознания и другие показатели. При необходимости проводится детоксикация, ставится капельница, выполняется медикаментозное снятие абстиненции. Главное — лечение назначается индивидуально, а не по универсальной схеме.
    Подробнее – вызов нарколога на дом Екатеринбург

  27. Домашняя инфузионная помощь применяется по медицинским показаниям и не должна назначаться самостоятельно. Капельница является способом внутривенного введения раствора и лекарственных средств, поэтому выбор препарата, дозировки и объема должен выполнять врач. В некоторых случаях процедура используется для коррекции обезвоживания, поддержки организма при алкогольной интоксикации, введения витаминов, электролитов и других назначенных компонентов. Точно определить необходимость терапии можно только после осмотра.
    Ознакомиться с деталями – https://nadomu5.kapelnica-ot-zapoya-v-moskve14-1.ru/

  28. JamesSobre JamesSobre

    Состояние зависимого бывает разным: один пациент обращается практически сразу, другой попадает в клинику лишь тогда, когда употребление привело к тяжелым последствиям. Алкоголь и наркотики наносят вред печени, сердцу, нервной системе и функциям мозга, а при длительном злоупотреблении могут развиваться психозы, выраженные нарушения сна и эмоциональные расстройства. Поэтому важно не ставить диагноз самостоятельно, а обратиться к врачу. Подробнее специалист центра определяет, требуется ли лечение амбулаторно, стационарное лечение или подготовка к продолжительной реабилитации.
    Дополнительная информация – частная наркологическая клиника

Leave a Reply

Your email address will not be published. Required fields are marked *