Red de conocimiento informático - Material del sitio web - Cómo generar la biblioteca protobuf para arm64

Cómo generar la biblioteca protobuf para arm64

La biblioteca estática libmp3lame.a utilizada por la aplicación anterior también debe admitir los conjuntos de instrucciones del emulador de 64 bits (x86_64) y de la máquina real de 64 bits (arm64). Necesita recompilar

Consulte la información relevante y realice algunos comentarios y cambios de acuerdo con los siguientes pasos

1./kewlbear/lame-ios-build

Descargue y obtenga lame -build. 2. Utilice la biblioteca estática bbeditit.a para admitir conjuntos de instrucciones de emulador de 64 bits (x86_64) y máquina real de 64 bits (arm64). >3. Abra este script con bbedit u otro editor y modifíquelo según los comentarios

4. Abra la terminal y escriba

cd /Users/8wm /Desktop/lame

p>

chmod 777 lame-build.sh

sudo -s#

Ingrese la contraseña del sistema

./lame- build.sh

inicia la compilación, una vez completada la compilación. Genere un directorio grueso y un directorio delgado para almacenar la biblioteca estática que combina todos los conjuntos de instrucciones y la biblioteca estática de cada conjunto de instrucciones, respectivamente.

Copie los archivos lame.h y libmp3lame.a en su proyecto según sea necesario y estará listo.

Puedes utilizar la línea de comandos para ver qué conjuntos de instrucciones son compatibles con diferentes bibliotecas.

lipo -info libmp3lame.a

La arquitectura en el archivo Fat: libmp3lame.a es: armv7 armv7s i386 x86_64 arm64

El siguiente es el script de compilación, Tenga en cuenta las letras amarillas y los comentarios.

#! /bin/sh

hacer distclean

CONFIGURE_FLAGS="--disable-shared --disable-frontend"

ARCHS="arm64 armv7s x86_64 i386 armv7"

# Directorio

# SOURCE es el directorio donde descargó y descomprimió el paquete de código fuente cojo. Puede colocar el script sh en este directorio y cambiar la fuente a ""

SOURCE=""

# FAT es el directorio de salida después de la compilación de todos los conjuntos de instrucciones, donde todas las bibliotecas estáticas se fusionan en una biblioteca estática

FAT="fat -lame"

# SCRATCH es el directorio donde se descarga y descomprime el paquete de código fuente LAME. Debe ser una ruta absoluta

SCRATCH="/Users/8wm/Desktop/lame "

# Debe ser una ruta absoluta

# THIN es el directorio donde se encuentra la salida de la biblioteca estática al construir el conjunto de instrucciones correspondiente, una biblioteca estática para cada conjunto de instrucciones

THIN=`pwd` /"thin-lame"

COMPILE="y"

LIPO="y"

if [ "$ *" ]

entonces

if [ "$*" = "lipo" ]

entonces

# Saltar compilación

COMPILE=

else

ARCHS="$*"

si [ $#-eq 1 ]

entonces

# saltar lipo

LIPO=

fi

fi

if [ "$COMPILE" ]

luego

CWD=`pwd`

echo "$CWD/$ SOURCE...."

para ARCH en $ARCHS

do

echo "construyendo $ARCH..."

mkdir -p "$SCRATCH/$ARCH"

cd " $SCRATCH/ $ARCH"

if [ "$ARCH" = "i386" -