Я только что узнал, что glibc 2.23 имеет ошибку относительно функции stdio fmemopen(), см., Например, Using rewind() on a FILE* opened with fmemopen. (Описанное поведение багги не является единственным. Проблемы становятся еще больше, если размер буфера превышает 8192 байта ...)Что необходимо для распространения C-программы, скомпилированной против нестандартного glibc в linux (т. Е. Glibc 2.24)?
Теперь я рассматриваю возможность использования только что выпущенного glibc 2.24, который исправлен эта ошибка. Однако моя целевая пользовательская среда - это компьютеры Ubuntu, и я полагаю, что это займет некоторое время, пока Ubuntu не поддержит glibc 2.24 из коробки.
Итак, с какими проблемами сталкиваюсь, когда я пытаюсь распространять свой код?
Или, некоторые вопросы, связанные:
- Когда можно ожидать, что Ubuntu будет поддерживать Glibc 2,24?
- Возможно ли иметь две версии libc в системе?
- Можно ли связать libc статически?
- Действительно, мне нужна только часть stdio. Можно ли использовать только stdio от 2.24, это принесет пользу?
http://stackoverflow.com/questions/3214168/linking-static-with-glibc-and-libstdc – stark
@stark: Спасибо. (Чувствую себя немного виноватым, что я не тщательно искал связанные вопросы). – ralfg