Разработчики убрали этот символ. См. https://github.com/openssl/openssl/blob/72257204bd2a88773461150765dfd0e0a428ee86/include/openssl/ssl.h#L1495. Что вам нужно сделать, так это добавить #define OPENSSL_API_COMPAT 0x0908
где-нибудь, чтобы символ был определен как макрос.
GNU ls ничего не знает об управляющих последовательностях терминала. Он просто связывает переменную среды $TERM
со своей таблицей (, будь то из переменной среды $LS_COLORS
или ее скомпилированной -по умолчанию не имеет большого значения ).Ничегоиз этого не говорит, сколько цветов у терминала.
Если вы читали исходный код (dircolors.c
, ls.c
), вы могли заметить, что он не использует количество цветов при принятии решения о том, что печатать. Использует ли он управляющие последовательности для 256 -цветов или нет, по-видимому, зависит от того, кем были упаковщики (этого нет в исходном коде coreutils -, хотя комментарий намекает на возможность ).
База данных терминала не используется; любое сходство между этим и GNU ls в основном состоит в том, что последний использует имена терминальных описаний без использования соответствующей информации. Таким образом, создается впечатление, что VT100 использовали цвет (, см. ncurses FAQ).
Поскольку значения , скомпилированные -в , используют 8 -цветов ANSI (и предполагают, что полужирные -цвета добавляют еще 8 ), если вы видите, что используется 256 -] цвета,это связано с тем, что файлы конфигурации (, внешние по отношению к GNU ls ), настроены в /etc
.