<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2018-03-26 22:18 GMT+02:00 Thomas Petazzoni <span dir="ltr"><<a href="mailto:thomas.petazzoni@bootlin.com" target="_blank">thomas.petazzoni@bootlin.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello,<br>
<span class="gmail-"><br>
On Wed, 21 Mar 2018 17:03:28 +0100, Francois Perrad wrote:<br>
> with this new version:<br>
>   - "configure --enable-static" should now be used instead of<br>
>     "make STATIC=1"<br>
>   - any customised options should be put in localoptions.h<br>
><br>
> Signed-off-by: Francois Perrad <<a href="mailto:francois.perrad@gadz.org">francois.perrad@gadz.org</a>><br>
<br>
</span>With this patch applied, the following defconfig:<br>
<br>
BR2_arm=y<br>
BR2_TOOLCHAIN_EXTERNAL=y<br>
BR2_TOOLCHAIN_EXTERNAL_CUSTOM=<wbr>y<br>
BR2_TOOLCHAIN_EXTERNAL_<wbr>DOWNLOAD=y<br>
BR2_TOOLCHAIN_EXTERNAL_URL="<a href="http://autobuild.buildroot.org/toolchains/tarballs/br-arm-full-2017.11-rc1.tar.bz2" rel="noreferrer" target="_blank">ht<wbr>tp://autobuild.buildroot.org/<wbr>toolchains/tarballs/br-arm-<wbr>full-2017.11-rc1.tar.bz2</a>"<br>
BR2_TOOLCHAIN_EXTERNAL_GCC_4_<wbr>9=y<br>
BR2_TOOLCHAIN_EXTERNAL_<wbr>HEADERS_3_10=y<br>
BR2_TOOLCHAIN_EXTERNAL_LOCALE=<wbr>y<br>
# BR2_TOOLCHAIN_EXTERNAL_HAS_<wbr>THREADS_DEBUG is not set<br>
BR2_TOOLCHAIN_EXTERNAL_CXX=y<br>
BR2_INIT_NONE=y<br>
BR2_SYSTEM_BIN_SH_NONE=y<br>
# BR2_PACKAGE_BUSYBOX is not set<br>
BR2_PACKAGE_DROPBEAR=y<br>
# BR2_TARGET_ROOTFS_TAR is not set<br>
<br>
fails to build with:<br>
<br>
>>> dropbear 2018.76 Building<br>
PATH="/home/thomas/projets/<wbr>buildroot/output/host/bin:/<wbr>home/thomas/projets/buildroot/<wbr>output/host/sbin:/usr/local/<wbr>bin:/usr/bin:/bin:/home/<wbr>thomas/.rvm/bin:/usr/local/<wbr>sbin:/usr/sbin:/home/thomas/.<wbr>rvm/bin:/home/thomas/sys/bin:/<wbr>home/thomas/.gem/ruby/2.1.0/<wbr>bin:/home/thomas/.rvm/bin"  /usr/bin/make -j5 MULTI=1 SCPPROGRESS=1 PROGRAMS="dropbear dropbearkey dropbearconvert scp dbclient ssh dbclient"  -C /home/thomas/projets/<wbr>buildroot/output/build/<wbr>dropbear-2018.76/<br>
Creating default_options_guard.h<br>
/home/thomas/projets/<wbr>buildroot/output/host/bin/arm-<wbr>linux-gcc -c -I./libtomcrypt/src/headers/ -DLOCALOPTIONS_H_EXISTS -I. -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -W -Wall -Wno-pointer-sign -fno-strict-overflow -fPIE -fstack-protector-strong -D_FORTIFY_SOURCE=2 -DDROPBEAR_SERVER -DDROPBEAR_CLIENT -DPROGRESS_METER -DDBMULTI_dropbear -DDBMULTI_dropbearkey -DDBMULTI_dropbearconvert -DDBMULTI_scp -DDBMULTI_dbclient -DDBMULTI_ssh -DDBMULTI_dbclient -DDROPBEAR_MULTI -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 dbmulti.c -o dbmulti.o<br>
/home/thomas/projets/<wbr>buildroot/output/host/bin/arm-<wbr>linux-gcc -c -I./libtomcrypt/src/headers/ -DLOCALOPTIONS_H_EXISTS -I. -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -W -Wall -Wno-pointer-sign -fno-strict-overflow -fPIE -fstack-protector-strong -D_FORTIFY_SOURCE=2 -DDROPBEAR_SERVER -DDROPBEAR_CLIENT -DPROGRESS_METER -DDBMULTI_dropbear -DDBMULTI_dropbearkey -DDBMULTI_dropbearconvert -DDBMULTI_scp -DDBMULTI_dbclient -DDBMULTI_ssh -DDBMULTI_dbclient -DDROPBEAR_MULTI -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 atomicio.c -o atomicio.o<br>
/home/thomas/projets/<wbr>buildroot/output/host/bin/arm-<wbr>linux-gcc -c -I./libtomcrypt/src/headers/ -DLOCALOPTIONS_H_EXISTS -I. -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -W -Wall -Wno-pointer-sign -fno-strict-overflow -fPIE -fstack-protector-strong -D_FORTIFY_SOURCE=2 -DDROPBEAR_SERVER -DDROPBEAR_CLIENT -DPROGRESS_METER -DDBMULTI_dropbear -DDBMULTI_dropbearkey -DDBMULTI_dropbearconvert -DDBMULTI_scp -DDBMULTI_dbclient -DDBMULTI_ssh -DDBMULTI_dbclient -DDROPBEAR_MULTI -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 bignum.c -o bignum.o<br>
/home/thomas/projets/<wbr>buildroot/output/host/bin/arm-<wbr>linux-gcc -c -I./libtomcrypt/src/headers/ -DLOCALOPTIONS_H_EXISTS -I. -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -W -Wall -Wno-pointer-sign -fno-strict-overflow -fPIE -fstack-protector-strong -D_FORTIFY_SOURCE=2 -DDROPBEAR_SERVER -DDROPBEAR_CLIENT -DPROGRESS_METER -DDBMULTI_dropbear -DDBMULTI_dropbearkey -DDBMULTI_dropbearconvert -DDBMULTI_scp -DDBMULTI_dbclient -DDBMULTI_ssh -DDBMULTI_dbclient -DDROPBEAR_MULTI -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 buffer.c -o buffer.o<br>
/home/thomas/projets/<wbr>buildroot/output/host/bin/arm-<wbr>linux-gcc -c -I./libtomcrypt/src/headers/ -DLOCALOPTIONS_H_EXISTS -I. -I. -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 -Os -W -Wall -Wno-pointer-sign -fno-strict-overflow -fPIE -fstack-protector-strong -D_FORTIFY_SOURCE=2 -DDROPBEAR_SERVER -DDROPBEAR_CLIENT -DPROGRESS_METER -DDBMULTI_dropbear -DDBMULTI_dropbearkey -DDBMULTI_dropbearconvert -DDBMULTI_scp -DDBMULTI_dbclient -DDBMULTI_ssh -DDBMULTI_dbclient -DDROPBEAR_MULTI -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 circbuffer.c -o circbuffer.o<br>
In file included from options.h:23:0,<br>
                 from includes.h:29,<br>
                 from bignum.c:27:<br>
sysoptions.h:237:3: error: #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
  #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
   ^<br>
In file included from options.h:23:0,<br>
                 from includes.h:29,<br>
                 from buffer.c:27:<br>
sysoptions.h:237:3: error: #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
  #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
   ^<br>
In file included from options.h:23:0,<br>
                 from includes.h:29,<br>
                 from dbmulti.c:25:<br>
sysoptions.h:237:3: error: #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
  #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
   ^<br>
In file included from options.h:23:0,<br>
                 from includes.h:29,<br>
                 from circbuffer.c:25:<br>
sysoptions.h:237:3: error: #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
  #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
   ^<br>
In file included from options.h:23:0,<br>
                 from includes.h:29,<br>
                 from atomicio.c:30:<br>
sysoptions.h:237:3: error: #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
  #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>
   ^<br>
In file included from includes.h:119:0,<br>
                 from buffer.c:27:<br>
compat.h:43:7: error: conflicting types for ‘__xpg_basename’<br>
 char *basename(const char* path);<br>
       ^<br>
/home/thomas/projets/<wbr>buildroot/output/host/arm-<wbr>buildroot-linux-uclibcgnueabi/<wbr>sysroot/usr/include/libgen.h:<wbr>34:14: note: previous declaration of ‘__xpg_basename’ was here<br>
 extern char *__xpg_basename (char *__path) __THROW;<br>
              ^<br>
make[2]: *** [Makefile:128: buffer.o] Error 1<br>
make[2]: *** Waiting for unfinished jobs....<br>
In file included from includes.h:119:0,<br>
                 from circbuffer.c:25:<br>
compat.h:43:7: error: conflicting types for ‘__xpg_basename’<br>
 char *basename(const char* path);<br>
       ^<br>
/home/thomas/projets/<wbr>buildroot/output/host/arm-<wbr>buildroot-linux-uclibcgnueabi/<wbr>sysroot/usr/include/libgen.h:<wbr>34:14: note: previous declaration of ‘__xpg_basename’ was here<br>
 extern char *__xpg_basename (char *__path) __THROW;<br>
              ^<br>
make[2]: *** [Makefile:128: circbuffer.o] Error 1<br>
In file included from includes.h:119:0,<br>
                 from bignum.c:27:<br>
compat.h:43:7: error: conflicting types for ‘__xpg_basename’<br>
 char *basename(const char* path);<br>
       ^<br>
/home/thomas/projets/<wbr>buildroot/output/host/arm-<wbr>buildroot-linux-uclibcgnueabi/<wbr>sysroot/usr/include/libgen.h:<wbr>34:14: note: previous declaration of ‘__xpg_basename’ was here<br>
 extern char *__xpg_basename (char *__path) __THROW;<br>
              ^<br>
In file included from includes.h:119:0,<br>
                 from dbmulti.c:25:<br>
compat.h:43:7: error: conflicting types for ‘__xpg_basename’<br>
 char *basename(const char* path);<br>
       ^<br>
/home/thomas/projets/<wbr>buildroot/output/host/arm-<wbr>buildroot-linux-uclibcgnueabi/<wbr>sysroot/usr/include/libgen.h:<wbr>34:14: note: previous declaration of ‘__xpg_basename’ was here<br>
 extern char *__xpg_basename (char *__path) __THROW;<br>
              ^<br>
make[2]: *** [Makefile:128: bignum.o] Error 1<br>
make[2]: *** [Makefile:128: dbmulti.o] Error 1<br>
In file included from includes.h:119:0,<br>
                 from atomicio.c:30:<br>
compat.h:43:7: error: conflicting types for ‘__xpg_basename’<br>
 char *basename(const char* path);<br>
       ^<br>
/home/thomas/projets/<wbr>buildroot/output/host/arm-<wbr>buildroot-linux-uclibcgnueabi/<wbr>sysroot/usr/include/libgen.h:<wbr>34:14: note: previous declaration of ‘__xpg_basename’ was here<br>
 extern char *__xpg_basename (char *__path) __THROW;<br>
              ^<br>
make[2]: *** [Makefile:128: atomicio.o] Error 1<br>
make[1]: *** [package/<a href="http://pkg-generic.mk:224" rel="noreferrer" target="_blank">pkg-generic.mk:224</a>: /home/thomas/projets/<wbr>buildroot/output/build/<wbr>dropbear-2018.76/.stamp_built] Error 2<br>
make: *** [Makefile:79: _all] Error 2<br>
<br>
Could you have a look ?<br>
<br></blockquote><div><br><br>The presence of crypt() is detected by the configure script.<br><br>in dropbear-2017-75/options.h, the logic was :<br>    /* This requires crypt() */<br>    #ifdef HAVE_CRYPT<br>    #define ENABLE_SVR_PASSWORD_AUTH<br>    #endif<br><br>in dropbear-2018-76/sysoptions.h, the logic is now :<br>    #if DROPBEAR_SVR_PASSWORD_AUTH && !HAVE_CRYPT<br>        #error "DROPBEAR_SVR_PASSWORD_AUTH requires `crypt()'."<br>    #endif<br><br>So, without something like BR2_TOOLCHAIN_HAS_CRYPT,<br>we must always disable the option DROPBEAR_SVR_PASSWORD_AUTH in localoptions.h.<br><br></div><div>François<br></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">
Thanks!<br>
<span class="gmail-HOEnZb"><font color="#888888"><br>
Thomas Petazzoni<br>
--<br>
Thomas Petazzoni, CTO, Bootlin (formerly Free Electrons)<br>
Embedded Linux and Kernel engineering<br>
<a href="https://bootlin.com" rel="noreferrer" target="_blank">https://bootlin.com</a><br>
______________________________<wbr>_________________<br>
buildroot mailing list<br>
<a href="mailto:buildroot@busybox.net">buildroot@busybox.net</a><br>
<a href="http://lists.busybox.net/mailman/listinfo/buildroot" rel="noreferrer" target="_blank">http://lists.busybox.net/<wbr>mailman/listinfo/buildroot</a><br>
</font></span></blockquote></div><br></div></div>