UTF -16 (или UCS -2 )крайне неудобны для строк с нулевым завершением -, используемых стандартной библиотекой C и POSIX ABI. Например, аргументы командной строки заканчиваются байтами NUL (с нулевым значением ), а любой символ UTF -16 с числовым значением < 256 содержит нулевой байт, поэтому любые строки из обычных английских букв были бы невозможны. представлять в UTF -16 в качестве аргумента командной строки.
Это, в свою очередь, означает, что либо утилиты должны будут принимать входные данные в каком-то другом формате, (скажем, UTF -8 ), и преобразовывать в UTF -16; или им нужно было бы внести свой вклад каким-то другим способом. Первый вариант потребует, чтобы все такие утилиты содержали код (или ссылку на )для преобразования, а второй несколько затруднил бы сопряжение этих программ с другими утилитами.
Учитывая эти трудности, а также тот факт, что UTF -8 имеет лучшие свойства обратной -совместимости, я просто предположил, что немногие заинтересованы в использовании UTF -16 настолько, чтобы быть мотивированными для создания инструментов для этого.
ppp -2.4.1 исходники можно скачать здесь:https://download.samba.org/pub/ppp/инструкции по сборке классические :сначала вы настраиваете сборку, запуская скрипт configure в верхней части исходного каталога.
Если конфигурация не работает, полезно знать, что препроцессор отвечает за поиск включений. export CPPFLAGS=-I${SRCBASE}/include
может помочь перед запуском скрипта configure
Чтобы выполнить кросс-компиляцию этого пакета, вы должны адаптировать свой компилятор во время компиляции:
CC=<name of>-<your>-<tuple here>-gcc make