Menelik Logo

Dependencias de Menelik Core

Para crear las dependencias necesarias para Menelik Core en el sistema operativo actual o en otro sistema operativo/arquitectura, sigue las instrucciones a continuación.

Uso

Para crear dependencias para el sistema operativo actual:

make

Para compilar para otra arquitectura/sistema operativo:

make HOST=host-platform-triplet

Por ejemplo:

make HOST=x86_64-w64-mingw32 -j4

Esto generará un prefijo adecuado para insertarlo en la configuración de Menelik. En el ejemplo anterior, se creará un directorio llamado x86_64-w64-mingw32. Para usarlo en Menelik:

./configure --prefix=`pwd`/depends/x86_64-w64-mingw32

Host Platform Triplets Comunes para la Compilación Cruzada

No se necesitan otras opciones, las rutas se configuran automáticamente.

Instalar las Dependencias Necesarias: Ubuntu y Debian

Para la compilación cruzada de macOS:

sudo apt-get install curl librsvg2-bin libtiff-tools bsdmainutils imagemagick libcap-dev libz-dev libbz2-dev python-setuptools

Para la compilación cruzada Win32/Win64:

Consulta build-windows.md para más detalles.

Para compilación cruzada de Linux (incluidos i386 y ARM):


sudo apt-get install curl g++-aarch64-linux-gnu g++-4.8-aarch64-linux-gnu gcc-4.8-aarch64-linux-gnu binutils-aarch64-linux-gnu g++-arm-linux-gnueabihf g++-4.8-arm-linux-gnueabihf gcc-4.8-arm-linux-gnueabihf binutils-arm-linux-gnueabihf g++-4.8-multilib gcc-4.8-multilib binutils-gold bsdmainutils
    

Para la compilación cruzada de Linux RISC-V de 64 bits (no hay paquetes para 32 bits):

sudo apt-get install curl g++-riscv64-linux-gnu binutils-riscv64-linux-gnu

Problema conocido de RISC-V: gcc-7.3.0 y gcc-7.3.1 resultan en un test_menelik ejecutable dañado (ver bitcoin/bitcoin#13543), esto aparentemente está solucionado en gcc-8.1.0.

Opciones de Dependencia

Se pueden configurar las siguientes opciones al ejecutar make:


SOURCES_PATH: downloaded sources will be placed here
BASE_CACHE: built packages will be placed here
SDK_PATH: Path where sdk's can be found (used by OSX)
FALLBACK_DOWNLOAD_PATH: If a source file can't be fetched, try here before giving up
NO_QT: Don't download/build/cache qt and its dependencies
NO_WALLET: Don't download/build/cache libs needed to enable the wallet
NO_UPNP: Don't download/build/cache packages needed for enabling upnp
DEBUG: disable some optimizations and enable more runtime checking
HOST_ID_SALT: Optional salt to use when generating host package ids
BUILD_ID_SALT: Optional salt to use when generating build package ids
    

Si no se crean algunos paquetes, por ejemplo make NO_WALLET=1, se pasarán las opciones adecuadas a la configuración de Menelik Core. En este caso, --disable-wallet.

Objetivos Adicionales

Otra Documentación