Problem with Makefile

Discuss the technical details of Gargoyle and ongoing development

Moderator: Moderators

Post Reply
pmerrill
Posts: 290
Joined: Wed Feb 15, 2012 8:23 pm

Problem with Makefile

Post by pmerrill »

It appears that make ar71xx does not do a full build of all the ar71xx images. It only makes the images for the smailer images (i.e. 3.9M). If you do a make ar71xx.usb_large, then it makes the larger images.

I suspect that there is a config problem somewhere.

Ideas where I might look?
Paul
Gargoyle 1.11.x on TP-Link Archer C7 V2 H/W

ispyisail
Moderator
Posts: 5212
Joined: Mon Apr 06, 2009 3:15 am
Location: New Zealand

Re: Problem with Makefile

Post by ispyisail »

just had a quick loo at the repo and the Makefile hasn't changed in 6 months but i wonder if the problem in is in the build.sh file?

http://www.gargoyle-router.com/gargoyle ... s/build.sh

pmerrill
Posts: 290
Joined: Wed Feb 15, 2012 8:23 pm

Re: Problem with Makefile

Post by pmerrill »

Ok, so found the problem. Easy to fix but perhaps someone wanted it this way?

In the directory ~/gargoyle/targets/ar71xx/profiles there exist a number of directories one is default another is usb_large

In each of these directories there is a file called profile_images which lists all the images to build.

if you look at default/profile_images it has a list of all the images to build which does NOT include images like the 4300 or 3600 from tplink.

if you look at usb_large/profile_images it has a list of all the images to build which DOES include images like the 4300 and 3600 from tplink.

The fix should be straight forward, concatenate the two profile_images files and store the result in default/profile_images. This should then compile all the images using make.

The only thing I don't know is if the split was done because the smaller images and the larger images cannot be compiled at the same time because of different switches or parameters required for the compiler or other support programs used to make the images???
Paul
Gargoyle 1.11.x on TP-Link Archer C7 V2 H/W

ispyisail
Moderator
Posts: 5212
Joined: Mon Apr 06, 2009 3:15 am
Location: New Zealand

Re: Problem with Makefile

Post by ispyisail »

I sent a message to Eric about this problem

pmerrill
Posts: 290
Joined: Wed Feb 15, 2012 8:23 pm

Re: Problem with Makefile

Post by pmerrill »

Just having another look and don't think it's going to work. There is another file in the directory with the profile called config, comment says you should not edit. There are differences between the config for default and config for usb_large. I have a feeling that all the usb_large have usb ports so you can connect usb drives plus printers, whereas the default you probably cannot.

The solution probably is what I did the last time (via bash script)
rm ~/ar71xx/*
make ar71xx
cp ~/gargoyle/images/ar71xx ~/ar71xx
make ar71xx.usb_large
cp ~/gargoyle/images/ar71xx ~/ar71xx

However, Eric can probably give you the good oil in two seconds. He probably did need to change the switches because I don't think the TOR code etc will fit into the smaller routers with less RAM.
Paul
Gargoyle 1.11.x on TP-Link Archer C7 V2 H/W

BashfulBladder
Moderator
Posts: 250
Joined: Thu Jan 17, 2013 11:43 pm

Re: Problem with Makefile

Post by BashfulBladder »

I remember when I was troubleshooting build.sh on Mac OS X, image files were being created at my root folder - can't remember why (maybe the build scripts needed bash4?).

build.sh has this:

Code: Select all

		#if we didn't build anything, die horribly
		image_files=$(ls "bin/$arch/" 2>/dev/null)	
		if [ -z "$image_files" ] ; then
			exit
		fi
comment it out and/or add an echo "Yep, I am sooooo done." there to see if you are dumped to the shell prematurely. And in rebuild.sh if you are rebuilding.

There is a for loop in build.sh (for p in $other_profiles ; do) that (when you make ar71xx) makes default & then is supposed to loop to the other profiles - thus building all the images. The intent seems to be to not build 4MB images for 8MB routers. That for loop - and maybe the exit above would be where I start.

And ask yourself: would there be any reason to flash a limited image on your router when a fuller 8MB image is available? I know I wouldn't hunt down a limited image.

Edit:
Oh, I understand now.

make ar71xx only builds gargoyle/images/gargoyle_1.5.x-ar71xx-*.bin using default profile.

The for loop cycles just fine, things build fine, but only gargoyle/ar71xx-src/bin/ar71xx/openwrt-ar71xx-*.bin files are generated in the loop after the first time. No extra gargoyle/images files are generated.
TP-Link WDR3600 v1.1 running 1.5.10+ L10n-English (Built 20130922 - OpenWrt r38093)
TP-Link WDR4300 running 1.5.10+ i18n-English (Built 20131010 - OpenWrt r38286)

https://github.com/BashfulBladder/gargoyle-plugins/wiki

Eric
Site Admin
Posts: 1443
Joined: Sat Jun 14, 2008 1:14 pm

Re: Problem with Makefile

Post by Eric »

This should now be fixed -- try again with the latest code in the master branch.

Post Reply