# How to use make without menuconfig

**URL:** <https://klipper.discourse.group/t/how-to-use-make-without-menuconfig/10466>\
**Category:** Developers\
**Created:** [September 14, 2023, 8:34am UTC](https://klipper.discourse.group/t/how-to-use-make-without-menuconfig/10466 "2023-09-14T08:34:02Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![developeralioz](https://avatars.discourse-cdn.com/v4/letter/d/65b543/32.png) [@developeralioz](https://klipper.discourse.group/u/developeralioz)\
**Post date:** [September 14, 2023, 8:34am UTC](https://klipper.discourse.group/t/how-to-use-make-without-menuconfig/10466/1 "2023-09-14T08:34:03Z")

</div>

Hello, normally we select our make menuconfig configuration and create a klipper.bin file with make.

I want to compile the software by giving parameters to the command line without using menuconfig. How can I do this? For example:

make --processor=“STM32F103” --bootloader=“8-kib” --communication\_interface=“Serial (on USART1 PA10/PA9)”

I completely made up the parameter names, please guide me. I need this for a project.

---

<div class="post-metadata">

**Author:** ![flowerysong](https://yyz2.discourse-cdn.com/free1/user_avatar/klipper.discourse.group/flowerysong/32/10214_2.png) [@flowerysong](https://klipper.discourse.group/u/flowerysong)\
**Post date:** [September 14, 2023, 4:58pm UTC](https://klipper.discourse.group/t/how-to-use-make-without-menuconfig/10466/2 "2023-09-14T16:58:53Z")

</div>

`make menuconfig` is just a convenient way to generate the config file, you can use whatever method you want to create it. The easiest way to do a non-interactive build is to create the file once interactively, then copy it into future builds. If you have more complex requirements you can also generate the config programmatically, either building on top of [the library used for menuconfig](https://github.com/Klipper3d/klipper/tree/master/lib/kconfiglib) or writing something from scratch that generates a file in the [correct format](https://github.com/flowerysong/ansible-klipper/blob/7d732277572fe5fb4734601d83352c87c3cdd28b/collections/ansible_collections/flowerysong/klipper/roles/klipper/files/firmware.config).

---

<div class="post-metadata">

**Author:** ![dockterj](https://avatars.discourse-cdn.com/v4/letter/d/919ad9/32.png) [@dockterj](https://klipper.discourse.group/u/dockterj)\
**Post date:** [September 29, 2023, 1:04pm UTC](https://klipper.discourse.group/t/how-to-use-make-without-menuconfig/10466/3 "2023-09-29T13:04:36Z")

</div>

There has been some work and discussion on this. Check out [Experiment with automated mcu flashing - Developers - Klipper](https://klipper.discourse.group/t/experiment-with-automated-mcu-flashing/1691) and the PR linked in it. I worked on this a little bit earlier this year and really wanted to push it forward but other priorities got in the way.
