Программирование на C в Termux: быстрый старт

Да — писать и запускать программы на C на Android можно: установите Termux, выполните pkg update && pkg upgrade, установите clang (или gcc), make и редактор, напишите .c и соберите командой clang main.c -o main && ./main.

Что нужно и как это работает

Termux добавляет терминал и пакетный менеджер в Android. На практике схема простая:

  • установить Termux (F‑Droid/GitHub‑релиз);
  • обновить пакеты;
  • поставить компилятор (clang или gcc), make и редактор;
  • писать код в nano/vim или внешнем редакторе;
  • собирать и запускать в Termux или в proot‑дистрибутиве.

Минимальные требования: Android 7+ (лучше 8+), ~500 МБ свободного места, интернет.

Установка и первые команды

  1. Установите Termux (рекомендуется F‑Droid или официальный APK).
  2. Запустите и выполните:
pkg update && pkg upgrade
termux-setup-storage

termux-setup-storage создаст каталог storage с ссылками на Downloads и DCIM.

Установка инструментов:

pkg install clang make nano
# по желанию: pkg install gcc vim

Проверка:

clang --version
make --version

Быстрый пример: hello.c

Создайте проект и файл:

mkdir -p ~/projects/c && cd ~/projects/c
nano hello.c

Вставьте:

#include <stdio.h>

int main(void) {
    printf("Hello, Android C!\n");
    return 0;
}

Сохраните и соберите:

clang hello.c -o hello
./hello

Работа с несколькими файлами и Makefile

Структура: main.c, math_utils.c, math_utils.h. Сборка одной командой:

clang main.c math_utils.c -o calc
./calc

Простой Makefile (обратите внимание: команды в секциях должны начинаться с символа табуляции, не пробелов):

CC=clang
CFLAGS=-Wall -Wextra -std=c11

all: calc

calc: main.o math_utils.o
	$(CC) $(CFLAGS) main.o math_utils.o -o calc

main.o: main.c math_utils.h
	$(CC) $(CFLAGS) -c main.c

math_utils.o: math_utils.c math_utils.h
	$(CC) $(CFLAGS) -c math_utils.c

clean:
	rm -f *.o calc

Сборка: make; очистка: make clean.

Если предпочитаете GUI‑редактор, открывайте папку проектов на Android и редактируйте внешне — в Termux остаётся только сборка и запуск.

Linux‑окружение поверх Termux (proot)

Если нужен полноценный Debian/Ubuntu:

pkg install proot-distro
proot-distro install debian
proot-distro login debian
# внутри:
apt update
apt install build-essential

Это удобно для привычных инструментов, но ресурсоёмкие сборки будут медленными.

Не ожидайте быстрой сборки больших проектов: производительность и RAM ограничены мобильным железом.

Частые ошибки

  • command not found: повторно выполните pkg install clang make и перезапустите Termux.
  • Permission denied при ./a.out: работайте в домашнем каталоге Termux (~/).
  • Проблемы с кириллицей: используйте английский текст в printf или корректно настраивайте кодировку терминала.

FAQ

  • Можно ли использовать gcc вместо clang? Да, pkg install gcc возможен, но clang в Termux чаще стабильнее.
  • Как запускать долго выполняющиеся сборки? Закрепите Termux в многозадачности и по возможности подключите питание — система может выгружать фоновые приложения.
  • Нужен ли root? Нет — всё работает в пользовательском пространстве Termux; для некоторых низкоуровневых задач root может потребоваться, но для обучения C и большинства утилит — нет.

Мини‑чеклист: Termux установлен из актуального источника; выполнены pkg update && pkg upgrade; установлены clang/make/editor; создана папка проектов; собран hello.c. Если это готово — вы можете полноценно писать и запускать C‑программы на Android.