Mirando el archivo de registro, noté lo siguiente:
make[1]: Entering directory '/<<PKGBUILDDIR>>'
if [ armv8l = 'x86_64' ]; then echo -e "1\n2\n" | ./configure; fi
if [ armv8l = 'i686' ]; then echo -e "1\n1\n" | ./configure; fi
if [ armv8l = 'armv6l' ]; then echo -e "1\n1\n" | ./configure; fi
if [ armv8l = 'armv5tel' ]; then echo -e "1\n1\n" | ./configure; fi
if [ armv8l = 'aarch64' ]; then echo -e "1\n2\n" | ./configure; fi
if [ armv8l = 'armv7l' ]; then echo -e "1\n1\n" | ./configure; fi
dh override_dh_auto_configure
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
dh_auto_build -a
dh_auto_test -a
fakeroot debian/rules binary-arch
dh binary-arch
dh_testroot -a
dh_prep -a
rm -f -- debian/softether-vpnbridge.substvars debian/softether-vpnclient.substvars debian/softether-vpncmd.substvars debian/softether-vpnserver.substvars
rm -fr -- debian/.debhelper/generated/softether-vpnbridge/ debian/softether-vpnbridge/ debian/tmp/ debian/.debhelper/generated/softether-vpnclient/ debian/softether-vpnclient/ debian/.debhelper/generated/softether-vpncmd/ debian/softether-vpncmd/ debian/.debhelper/generated/softether-vpnserver/ debian/softether-vpnserver/
debian/rules override_dh_auto_install
make[1]: Entering directory '/<<PKGBUILDDIR>>'
patch -f < debian/makefile.patch
can't find file to patch at input line 3
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|--- Makefile 2014-02-04 21:20:33.422762017 +0000
|+++ Makefile.old 2014-02-04 21:20:10.298761727 +0000
--------------------------
No file to patch. Skipping patch.
1 out of 1 hunk ignored
debian/rules:16: recipe for target 'override_dh_auto_install' failed
make[1]: *** [override_dh_auto_install] Error 1
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
debian/rules:8: recipe for target 'binary-arch' failed
make: *** [binary-arch] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary-arch gave error exit status 2
Parece que está fallando porque no puede encontrar Makefile, lo que significa que no se ha generado, así que tal vez ./configure has not been called at all
¿Crees agregar la línea:
if [ armv8l = 'armvhfl' ]; then echo -e "1\n1\n" | ./configure; fi
resolvería el problema?
Todavía estoy tratando de ejecutar un armhf en qemu en mi máquina para probar
Para aclarar, aquí hay registros de compilación para armhf : el primero está bien, el segundo falló.
En arm64:
dh build-arch
dh_update_autotools_config -a
debian/rules override_dh_auto_configure
make[1]: Entering directory '/<<PKGBUILDDIR>>'
if [ aarch64 = 'x86_64' ]; then echo -e "1\n2\n" | ./configure; fi
if [ aarch64 = 'i686' ]; then echo -e "1\n1\n" | ./configure; fi
if [ aarch64 = 'armv6l' ]; then echo -e "1\n1\n" | ./configure; fi
if [ aarch64 = 'armv5tel' ]; then echo -e "1\n1\n" | ./configure; fi
if [ aarch64 = 'aarch64' ]; then echo -e "1\n2\n" | ./configure; fi
---------------------------------------------------------------------
SoftEther VPN for Unix
Copyright (c) SoftEther VPN Project at University of Tsukuba, Japan.
Copyright (c) Daiyuu Nobori. All Rights Reserved.
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
version 2 as published by the Free Software Foundation.
Read and understand README.TXT, LICENSE.TXT and WARNING.TXT before use.
---------------------------------------------------------------------
Welcome to the corner-cutting configure script !
The Makefile is generated. Run 'make' to build SoftEther VPN.
if [ aarch64 = 'armv7l' ]; then echo -e "1\n1\n" | ./configure; fi
dh override_dh_auto_configure
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
Ahora compare eso con la salida de armhf:
make[1]: Entering directory '/<<PKGBUILDDIR>>'
if [ armv8l = 'x86_64' ]; then echo -e "1\n2\n" | ./configure; fi
if [ armv8l = 'i686' ]; then echo -e "1\n1\n" | ./configure; fi
if [ armv8l = 'armv6l' ]; then echo -e "1\n1\n" | ./configure; fi
if [ armv8l = 'armv5tel' ]; then echo -e "1\n1\n" | ./configure; fi
if [ armv8l = 'aarch64' ]; then echo -e "1\n2\n" | ./configure; fi
if [ armv8l = 'armv7l' ]; then echo -e "1\n1\n" | ./configure; fi
dh override_dh_auto_configure
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
Es bastante obvio en el caso de armhf que no se cumple ninguna de las condiciones if, por lo que no se llama a ningún script de configuración, por lo que no se genera ningún Makefile, por lo que no se puede aplicar ningún archivo de parche, lo que provoca el error de compilación. ¿Podría imprimir el valor de armv8l de alguna manera, porque sospecho que no coincide con ningún valor en esta lista?
Es armv7l
y comenzó a funcionar de repente. Resolviendo este problema.
Las compilaciones en PPA aún fallan de vez en cuando, ¿podría alguien que tenga acceso a través del repositorio comunicarse conmigo para obtener las credenciales para habilitar la insignia "construir éxito \ falla" al menos sobre la rama maestra? Crear compilaciones de pruebas sobre PR es un asunto separado y no puedo ayudar con eso, pero sé con certeza cuando el maestro está roto y quiero que todos lo sepan.
Hola @paskal . Puede contactarme en moataz dot elmasry2 en gmail.com
Hola @paskal , agregué las credenciales encriptadas a travis-ci y presioné.
Pero esto solo se enviará a su repositorio, ¿cómo desea obtener una insignia en github? ¿O te refieres a una insignia de Launchpad?
Esto debería notificarle los errores de este momento, supongo. Sin embargo, algo anda mal con los créditos:
Deploy failed! Launchpad credentials invalid. 401
https://travis-ci.org/SoftEtherVPN/SoftEtherVPN/jobs/350054996
Actualizadas las credenciales. Todavía obteniendo:
Deploy failed! Launchpad credentials invalid. 401
Tuve que eliminar el fragmento de implementación para que no muestre que SE falla. Prefiero trabajar en este problema en una rama separada.
¿Puedes probar https://github.com/SoftEtherVPN/SoftEtherVPN/pull/462 ?
(Todavía no he descubierto cómo configurar el launchpad, sin embargo, resolvió deb magic en ubuntu, así que agregué el paso "dh build-arch")
La implementación de Launchpad no es lo que tenía en mente y no hay una insignia para compilar (porque hay muchas compilaciones para diferentes arquitecturas y versiones de SO). Al cerrar este, la verificación de la construcción del brazo se analiza en el n. ° 432 y la solución para la situación actual es en el n. ° 462.