14 votos

¿Utilizar el compilador GCC en Termux?

No me gusta el compilador de C por defecto clang proporcionado por Termux. ¿Hay alguna manera de conseguir GNU GCC en mi entorno Termux?

7voto

Otra forma de conseguir gcc sería añadir el repo comunitario alojado por its-pointless en https://github.com/its-pointless/its-pointless.github.io . Las fuentes están (más o menos) disponibles en https://github.com/its-pointless/gcc_termux .

Otros paquetes populares disponibles son numpy y scipy.

Puede encontrar más información sobre este y otros repositorios comunitarios en el wiki de termux .

Para añadir este repositorio particular a su entorno termux, ejecute

# Get some needed tools. coreutils for mkdir command, gnugp for the signing key, and apt-transport-https to actually connect to the repo
apt-get update
apt-get  --assume-yes upgrade 
apt-get  --assume-yes install coreutils gnupg2 apt-transport-https wget 
# Make the sources.list.d directory
mkdir $PREFIX/etc/apt/sources.list.d
# Write the needed source file - Added Missing "> character on line below
echo "deb [trusted=yes] https://its-pointless.github.io/files/ termux extras" > $PREFIX/etc/apt/sources.list.d/pointless.list
# Download signing key from https://its-pointless.github.io/pointless.gpg 
wget https://its-pointless.github.io/pointless.gpg
apt-key add pointless.gpg
# Update apt
apt update

(instrucciones tomadas de https://github.com/its-pointless/its-pointless.github.io/blob/master/setup-pointless-repo.sh )

0 votos

Estos repos no tienen un paquete gcc.

0 votos

apt install gcc-10 (o gcc-9 o gcc-8 )

0 votos

Las instrucciones han sido actualizadas, para cualquiera que venga aquí mejor revisar el archivo sh en el último enlace.

4voto

Guillermo Gomez Puntos 423

Es una solución muy interesante.

Primera descarga GCC para C4droid de Google Play.

Ve a buscar su apk en /data/app/com.n0n3m4.gcc4droid-# , tome el APK y extraiga /assets/gcc.zip . Ahora extraiga gcc.zip a

/data/data/com.termux/files/usr/libexec

Aplique chmod -R 644 a toda la carpeta y chmod -R 755 a ARCH/bin , bin y libexec . Vincular los programas gcc a $PREFIX/bin y podrá utilizar GCC en lugar de Clang. Recuerda añadir -pie al compilar los ejecutables.

1voto

Brian Mains Puntos 31772

Instale Arch Linux en Termux PRoot para obtener un entorno de desarrollo Linux completo. Ver https://sdrausty.github.io/TermuxArch/docs/install para las instrucciones de instalación. Utilice pacman -S base base-devel para instalar el entorno de desarrollo que incluye GCC. Arch Linux in Termux PRoot

1voto

sashz Puntos 11

He creado termux repo con gcc 10.2.0, allí cómo instalar https://cctools.info/index.php/Termux_repository_with_cctools_packages_(gcc_con_soporte_fortran_etc)

Añade la clave pública de los paquetes cctools:

wget -O - https://cctools.info/public.key | apt-key add -

Crear una nueva lista de repositorios:

echo "deb https://cctools.info termux cctools" > $PREFIX/etc/apt/sources.list.d/cctools.list

Actualizar las listas de paquetes:

apt update

Instale el paquete gcc-cctools (instalará binutils-cctools automáticamente):

apt install gcc-cctools

Instala el paquete NDK para tu arquitectura Android, utiliza el más reciente, por ejemplo para aarch64:

apt install ndk-sysroot-cctools-api-26-aarch64

Para mostrar todos los sysroots ndk para aarch64:

apt search ndk-sysroot-cctools | grep aarch64

Añade el directorio con los nuevos compiladores al PATH:

export PATH=$PREFIX/../cctools-toolchain/bin:$PATH

Compruébalo:

gcc -v

0 votos

Puede ser que quieras añadir confianza si apt se queja askubuntu.com/a/1050824/1068697

PreguntAndroid.com

PreguntAndroid es una comunidad de usuarios de Android en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X