How to create an ipk or how to include a makefile in the build

hi, I created my first snapshot successfully, tested and working. now I want to understand how to include a makefile in the build or how to create an ipk
this is done with quick immage builder. i'm still learnig,lol.

You’ll need the full build system to build a package. The image builder assembles existing packages into ROMs.

I’d start by looking at an existing Makefile for a package similar to yours as a template for your custom package.

i'm not sure if i get what you saying. so if i have the rigth makefiles can i use quick immage builder or in any case i need the full build sistem?

You need the full build system if you are going to build from source.

(Arguably, you could use the SDK, but you might as well just use the full build system.)

1 Like

hi jeff i build my ipk for two different architetture and are working ok, so i turned down my pc and the day after with the same setting i'm not able to recompile it, i don't understand why. this is the error i get:

make package/francesco/compile V=s
make: "package/francesco" è aggiornato.
time: target/linux/prereq#0.07#0.00#0.07
make[1]: Entering directory '/home/francesco/openwrt'
make[1]: *** No rule to make target 'compile'.  Stop.
make[1]: Leaving directory '/home/francesco/openwrt'
/home/francesco/openwrt/include/toplevel.mk:216: recipe for target 'compile' failed
make: *** [compile] Error 2

aggiornato = uptodate

Hmmm, strange that it worked once. Seeing your Makefile might help. The preformatted text button </> will help make it readable.

the only solution i found is download again the openwrt build sistem and do everything again.

Still strange that it worked then stopped working for the same source.

Sometimes something like

make -j12 clean download world

(substitute 12 for a reasonable number for your build box)

can fix up problems without having to re-initialize things from scratch. rm -rf ./build_dir/ is another "club" to swing, though it's even more blunt and destructive than clean. make distclean is similarly destructive, but at least won't mean cloning the repo again.