amcfwm - AsusWRT-Merlin Custom Firmware Manager

SomeWhereOverTheRainBow

Part of the Furniture
That's not currently accurate.

Initially, only the GT-AX6000 and XT12 were buildable from HEAD, because the last merged GPL only supported these two models.

Last week I merged 386_48823, which makes HEAD only compilable for the RT-AC68U right now (the only GPL that was merged).

There's nothing being withheld, and no special sauce involved either. You just have to keep up with the activity on the master branch to see what can be compiled, as this will vary over time as GPLs get merged. Right now (May 16th), master`s head can be compiled for the RT-AC68U, and only that model.

The OP will indeed need to provide actual messages for anyone to be able to assist him.
@RMerlin Here is the error part of my attempts to compile with this script.

Code:
checking for getpagesize... yes
checking for working mmap... no
checking for _LARGEFILE_SOURCE value needed for large files... (cached) no
checking for strptime... (cached) yes
checking for timegm... (cached) yes
checking for vsnprintf... (cached) yes
checking for vasprintf... (cached) yes
checking for drand48... yes
checking for pathconf... yes
checking for strtoll... (cached) yes
checking for usleep... yes
checking for ftello... yes
checking for sigblock... yes
checking for sigsetjmp... no
checking for memrchr... (cached) yes
checking for wcwidth... (cached) yes
checking for mbtowc... (cached) yes
checking for sleep... yes
checking for symlink... (cached) yes
checking for utime... (cached) yes
checking for strlcpy... yes
checking for random... yes
checking for fmemopen... yes
checking for arm-linux-pkg-config... no
checking for pkg-config... /usr/bin/pkg-config
configure: WARNING: using cross tools not prefixed with host triplet
checking pkg-config is at least version 0.9.0... yes
checking for LIBPSL... no
checking for library containing psl_builtin... no
configure: WARNING: *** libpsl was not found. Fallback to builtin cookie checking.
checking for ZLIB... yes
checking for OPENSSL... yes
configure: compiling in support for SSL via OpenSSL
checking for RAND_egd... no
checking for INET6 protocol support... yes
checking for struct sockaddr_in6... yes
checking for struct sockaddr_storage... (cached) yes
checking for struct sockaddr_in6.sin6_scope_id... yes
configure: Enabling support for IPv6.
checking for makeinfo... ${SHELL} /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing makeinfo
checking for perl5... no
checking for perl... /usr/bin/perl
checking for pod2man... /usr/bin/pod2man
configure: disabling IRIs at user request
checking uuid.h usability... no
checking uuid.h presence... no
checking for uuid.h... no
checking uuid/uuid.h usability... yes
checking uuid/uuid.h presence... yes
checking for uuid/uuid.h... yes
checking for library containing uuid_generate... -luuid
checking for PCRE2... no
checking pcre2.h usability... no
checking pcre2.h presence... no
checking for pcre2.h... no
checking for PCRE... no
checking pcre.h usability... no
checking pcre.h presence... no
checking for pcre.h... no
checking for METALINK... no
checking for fsetxattr... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating doc/Makefile
config.status: creating util/Makefile
config.status: creating po/Makefile.in
config.status: creating gnulib_po/Makefile.in
config.status: creating tests/Makefile
config.status: creating fuzz/Makefile
config.status: creating lib/Makefile
config.status: creating testenv/Makefile
config.status: creating tests/certs/interca.conf
config.status: creating tests/certs/rootca.conf
config.status: creating src/config.h
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: creating gnulib_po/POTFILES
config.status: creating gnulib_po/Makefile
configure: Summary of build options:

  Version:           1.21.3
  Host OS:           linux-gnu
  Install prefix:    /usr
  Compiler:          arm-brcm-linux-uclibcgnueabi-gcc
  CFlags:            -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/openssl/include -DHAVE_LIBSSL -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/routerzlib -DNDEBUG -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -DBCMARM -fno-strict-aliasing -marm -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132644  -ffunction-sections -fdata-sections -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/arm-uclibc/stage/usr/include  -std=gnu99 -DASUSWRT -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/arm-uclibc/stage/usr/include 
  LDFlags:           -lgcc_s -Wl,--gc-sections -L/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/arm-uclibc/stage/usr/lib -pthread
  Libs:              -luuid -L/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/openssl -lcrypto -lssl -L/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/zlib -lz 
  SSL:               openssl
  Zlib:              yes
  PSL:               no
  PCRE:              no
  Digest:            yes
  NTLM:              no
  OPIE:              no
  POSIX xattr:       yes
  Debugging:         no
  Assertions:        no
  Valgrind:          Valgrind testing not enabled
  Metalink:          no
  Resolver:          libc, --bind-dns-address and --dns-servers not available
  GPGME:             no
  IRI:               no
  Fuzzing build:     no,

make -C wget -j4
make[4]: Entering directory '/home/jumpsmm7/amng.ac68/release/src/router/wget'
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing aclocal-1.16 -I m4
configure.ac:938: warning: macro 'AM_PATH_GPGME' not found in library
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing autoconf
 cd . && /bin/sh /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing automake-1.16 --gnu
configure.ac:33: error: possibly undefined macro: AX_CODE_COVERAGE
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
make[4]: *** [Makefile:1725: configure] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src/router/wget'
make[3]: *** [Makefile:7262: wget] Error 2
make[3]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src/router'
make[2]: *** [Makefile:691: all] Error 2
make[2]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708'
make[1]: *** [Makefile:5586: bin] Error 2
make[1]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708'
make: *** [Makefile:5784: rt-ac68u] Error 2
 

RMerlin

Asuswrt-Merlin dev
@RMerlin Here is the error part of my attempts to compile with this script.

Code:
checking for getpagesize... yes
checking for working mmap... no
checking for _LARGEFILE_SOURCE value needed for large files... (cached) no
checking for strptime... (cached) yes
checking for timegm... (cached) yes
checking for vsnprintf... (cached) yes
checking for vasprintf... (cached) yes
checking for drand48... yes
checking for pathconf... yes
checking for strtoll... (cached) yes
checking for usleep... yes
checking for ftello... yes
checking for sigblock... yes
checking for sigsetjmp... no
checking for memrchr... (cached) yes
checking for wcwidth... (cached) yes
checking for mbtowc... (cached) yes
checking for sleep... yes
checking for symlink... (cached) yes
checking for utime... (cached) yes
checking for strlcpy... yes
checking for random... yes
checking for fmemopen... yes
checking for arm-linux-pkg-config... no
checking for pkg-config... /usr/bin/pkg-config
configure: WARNING: using cross tools not prefixed with host triplet
checking pkg-config is at least version 0.9.0... yes
checking for LIBPSL... no
checking for library containing psl_builtin... no
configure: WARNING: *** libpsl was not found. Fallback to builtin cookie checking.
checking for ZLIB... yes
checking for OPENSSL... yes
configure: compiling in support for SSL via OpenSSL
checking for RAND_egd... no
checking for INET6 protocol support... yes
checking for struct sockaddr_in6... yes
checking for struct sockaddr_storage... (cached) yes
checking for struct sockaddr_in6.sin6_scope_id... yes
configure: Enabling support for IPv6.
checking for makeinfo... ${SHELL} /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing makeinfo
checking for perl5... no
checking for perl... /usr/bin/perl
checking for pod2man... /usr/bin/pod2man
configure: disabling IRIs at user request
checking uuid.h usability... no
checking uuid.h presence... no
checking for uuid.h... no
checking uuid/uuid.h usability... yes
checking uuid/uuid.h presence... yes
checking for uuid/uuid.h... yes
checking for library containing uuid_generate... -luuid
checking for PCRE2... no
checking pcre2.h usability... no
checking pcre2.h presence... no
checking for pcre2.h... no
checking for PCRE... no
checking pcre.h usability... no
checking pcre.h presence... no
checking for pcre.h... no
checking for METALINK... no
checking for fsetxattr... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating src/Makefile
config.status: creating doc/Makefile
config.status: creating util/Makefile
config.status: creating po/Makefile.in
config.status: creating gnulib_po/Makefile.in
config.status: creating tests/Makefile
config.status: creating fuzz/Makefile
config.status: creating lib/Makefile
config.status: creating testenv/Makefile
config.status: creating tests/certs/interca.conf
config.status: creating tests/certs/rootca.conf
config.status: creating src/config.h
config.status: executing depfiles commands
config.status: executing po-directories commands
config.status: creating po/POTFILES
config.status: creating po/Makefile
config.status: creating gnulib_po/POTFILES
config.status: creating gnulib_po/Makefile
configure: Summary of build options:

  Version:           1.21.3
  Host OS:           linux-gnu
  Install prefix:    /usr
  Compiler:          arm-brcm-linux-uclibcgnueabi-gcc
  CFlags:            -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/openssl/include -DHAVE_LIBSSL -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/routerzlib -DNDEBUG -Os -Wall -DLINUX26 -DCONFIG_BCMWL5 -DDEBUG_NOISY -DDEBUG_RCTEST -pipe -DBCMWPA2 -DBCMARM -fno-strict-aliasing -marm -DRTCONFIG_NVRAM_64K -DLINUX_KERNEL_VERSION=132644  -ffunction-sections -fdata-sections -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/arm-uclibc/stage/usr/include  -std=gnu99 -DASUSWRT -I/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/arm-uclibc/stage/usr/include
  LDFlags:           -lgcc_s -Wl,--gc-sections -L/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/arm-uclibc/stage/usr/lib -pthread
  Libs:              -luuid -L/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/openssl -lcrypto -lssl -L/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708/router/zlib -lz
  SSL:               openssl
  Zlib:              yes
  PSL:               no
  PCRE:              no
  Digest:            yes
  NTLM:              no
  OPIE:              no
  POSIX xattr:       yes
  Debugging:         no
  Assertions:        no
  Valgrind:          Valgrind testing not enabled
  Metalink:          no
  Resolver:          libc, --bind-dns-address and --dns-servers not available
  GPGME:             no
  IRI:               no
  Fuzzing build:     no,

make -C wget -j4
make[4]: Entering directory '/home/jumpsmm7/amng.ac68/release/src/router/wget'
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing aclocal-1.16 -I m4
configure.ac:938: warning: macro 'AM_PATH_GPGME' not found in library
CDPATH="${ZSH_VERSION+.}:" && cd . && /bin/sh /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing autoconf
cd . && /bin/sh /home/jumpsmm7/amng.ac68/release/src/router/wget/build-aux/missing automake-1.16 --gnu
configure.ac:33: error: possibly undefined macro: AX_CODE_COVERAGE
      If this token and others are legitimate, please use m4_pattern_allow.
      See the Autoconf documentation.
make[4]: *** [Makefile:1725: configure] Error 1
make[4]: *** Waiting for unfinished jobs....
make[4]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src/router/wget'
make[3]: *** [Makefile:7262: wget] Error 2
make[3]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src/router'
make[2]: *** [Makefile:691: all] Error 2
make[2]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708'
make[1]: *** [Makefile:5586: bin] Error 2
make[1]: Leaving directory '/home/jumpsmm7/amng.ac68/release/src-rt-6.x.4708'
make: *** [Makefile:5784: rt-ac68u] Error 2
Run autoreconf in the wget folder, your automake version probably doesn't match mine.
 

RMerlin

Asuswrt-Merlin dev
As a heads up, devices from the src-rt-5.02p1axhnd.675x should now be compiled from the new src-rt-5.02L.07p2axhnd directory.

Also until the issue gets resolved upstream, the cferom_pureubi.w firmware image will not be created by the regular build process for the RT-AX86U - the non-cferom image file should be used until the issue gets resolved upstream. The build process will delete the cferom version at the end of building to ensure nobody flashes a potentially router-bricking image.
 

kernol

Very Senior Member
@Adamm - we have already had an answer from Eric - not practical to compile from Master until unified - but thought the error message may give you a pointer ...

Code:
--- 08:41 - Global cleanup...
--- 08:41 - Preparing trees

*** 08:41 - Cleaning up rt-ax86u...
*** 08:41 - Updating rt-ax86u tree...
*** 08:58 - rt-ax86u code ready.

--- 08:58 - All trees ready!

--- 08:58 - Launching all builds
*** 08:58 - Starting building rt-ax86u...
/usr/bin/amcfwm: line 1310: cd: /home/johnw/amng.ax86/release/src-rt-5.02p1axhnd.675x: No such file or directory
--- 08:58 - All builds launched, please wait...

=== 08:58 - All done!

We'll have to wait until the source is unified - but that may not happen for quite some time ... if ever?
If one wants to make it a "mission improbable" to self-compile ... I guess it's easy.

I suppose we can "thank" those who have abused the compile process to place the firmware on non-Asus hardware :mad: !
 

dave14305

Part of the Furniture
@Adamm - we have already had an answer from Eric - not practical to compile from Master until unified - but thought the error message may give you a pointer ...

Code:
--- 08:41 - Global cleanup...
--- 08:41 - Preparing trees

*** 08:41 - Cleaning up rt-ax86u...
*** 08:41 - Updating rt-ax86u tree...
*** 08:58 - rt-ax86u code ready.

--- 08:58 - All trees ready!

--- 08:58 - Launching all builds
*** 08:58 - Starting building rt-ax86u...
/usr/bin/amcfwm: line 1310: cd: /home/johnw/amng.ax86/release/src-rt-5.02p1axhnd.675x: No such file or directory
--- 08:58 - All builds launched, please wait...

=== 08:58 - All done!
Try changing all occurrences of release/src-rt-5.02p1axhnd.675x to release/src-rt-5.02L.07p2axhnd
 

RMerlin

Asuswrt-Merlin dev
@Adamm, I don't know if it`s currently the case, but you might want to allow the script to checkout from either a specific branch or a specific tag before building. For reference, see my own build script that I use when generating releases:


The user could also enter a tag instead of a branch name there if they need to build a model that doesn`t currently build from head.
 

kernol

Very Senior Member
Try changing all occurrences of release/src-rt-5.02p1axhnd.675x to release/src-rt-5.02L.07p2axhnd
Thanks @dave14305 ... I'll leave it for @Adamm to find time for testing and fixing. There are a couple of other non-functioning bits in his last released code. I have uninstalled for now and will build fresh VM once this script is back on track - or at least ready for testing again.
RMerlin has added suggestions which I'm sure Adamm will take up as well.
 

SomeWhereOverTheRainBow

Part of the Furniture
If one wants to make it a "mission improbable" to self-compile ... I guess it's easy.

I suppose we can "thank" those who have abused the compile process to place the firmware on non-Asus hardware :mad: !

Hahaha. That is the easy excuse. The real reason is probably much more complex. Especially when there are so many different GPL's that is hard to keep the different GPL generations all in one basket.
 

Latest threads

Sign Up For SNBForums Daily Digest

Get an update of what's new every day delivered to your mailbox. Sign up here!
Top