Я использую gcc 4.8.4 на ARM от TI. Я хочу перенаправить printf() и fgets() в мой драйвер UART. Я ищу функциональный интерфейс для установки драйвера ввода-вывода файлов. Но в документах GCC говорится: «Не пытайтесь создавать свои собственные объекты типа FILE, пусть библиотека это сделает». Я не могу себе представить, что мне нужно перестроить glibc, чтобы изменить это? Кто-нибудь знает пример создания моей собственной структуры FILE?Можно ли заменить драйвер ввода-вывода для printf во время выполнения с помощью gcc?
Я вижу определение, используемое для FILE (__sFILE в reent.h). Кажется опасным только создать его и использовать. Но возможно?
Не так много. Мне интересно, как создать/dev/uart. Это не linux, но это glibc. –
'/ dev/uart' - это то, что создает драйвер ядра UART, и' freopen' связывает 'stdout' с ним. Если ваш вопрос касается части * kernel *, то вы задали совершенно неправильный вопрос. –
Это помогает. Часто бывает трудно получить хороший ответ, когда вы задаете неправильный вопрос. :-) Поскольку это не ядро Linux, мне придется вникать в то, что делает TI. –