|
|
ru.linux- RU.LINUX --------------------------------------------------------------------- From : Ilya Anfimov 2:5020/400 27 Feb 2002 22:19:38 To : Alex Korchmar Subject : Re: videocapture -------------------------------------------------------------------------------- On Wed, 27 Feb 2002 16:26:21 +0000 (UTC), Alex Korchmar <alx@e-moe.ru> wrote: >Ilya Anfimov <ilan@adt.ru> wrote: > >>> IA> Которые должны использоваться автомагически вместо обычных при >>> IA> -D_LARGEFILE64_SOURCE. >>>где должны, в какой версии, чего версии? Кому должны? Кто придумал этот >>>дефайн и где оно описано? Очередной linux-only shit? >угу. >IA> Должны в программе, скомпилированной под линукс. Hе знаю, >IA> видимо, в glibc2.0. Вопрос очень философский и, боюсь, ответ на >вопрос совершенно тривиальный, и ответ тривиальный - линукс в качестве >платформы для чего-либо, кроме домашнего юниксения по тихому - говно. ru.os.cmp FAQ, Q1 осваиваешь :-)? > >IA> него будет offtopicом. Кто придумал -- тоже не знаю, описано в >IA> info libc. Hа название эхи посмотри. И вообще выставить какие >IA> нужно -D при компиляции -- первостепенная задача >IA> человека/скрипта, который собирает софт под данную систему. >"софт под данную систему" в юниксе - как раз и есть признак говенности >платформы, которой нужен какой-то спецсофт и спецдефайны для тривиальной >вещи. Алекс, ты же сам понимаешь, как #define выставить при компиляции. Даже при компиляции под конкретную платформу. И что выставлять их в любом случае при портировании надо -- особенность языка Це такая. И я ещё раз повторяю: софт -- тот же самый. Если хорошо написанный, то даже без каких-либо изменений. > >IA> Работать будет, естественно, любая программа, которая не >IA> пытается использовать int вместо off_t или читать весь файл в >IA> память целиком. >как показывает изучение info libc - не будет. >При -D_FILE_OFFSET_BITS=64 - что-то такое будет, но, похоже, только для FILE*. >А для unistd'шных нет. Действительно, требуется -D_FILE_OFFSET_BITS=64. Hо для unistd оно (по интерфейсам) тоже должно работать. (libc.info.gz)Opening and Closing Files, про open -- If on a 32 bits machine the sources are translated with `_FILE_OFFSET_BITS == 64' the function `open' returns a file descriptor opened in the large file mode which enables the file handling functions to use files up to 2^63 bytes in size and offset from -2^63 to 2^63. This happens transparently for the user since all of the lowlevel file handling functions are equally replaced. про creat -- If on a 32 bits machine the sources are translated with `_FILE_OFFSET_BITS == 64' the function `creat' returns a file descriptor opened in the large file mode which enables the file handling functions to use files up to 2^63 in size and offset from -2^63 to 2^63. This happens transparently for the user since all of the lowlevel file handling functions are equally replaced. (libc.info.gz)I/O Primitives: про read -- Please note that there is no function named `read64'. This is not necessary since this function does not directly modify or handle the possibly wide file offset. Since the kernel handles this state internally the `read' function can be used for all cases. про pread64 -- This function is similar to the `pread' function. The difference is that the OFFSET parameter is of type `off64_t' instead of `off_t' which makes it possible on 32 bits machines to address files larger than 2^31 bytes and up to 2^63 bytes. The file ......... When the source file is compiled with `_FILE_OFFSET_BITS == 64' on a 32 bits machine this function is actually available under the name `pread' and so transparently replaces the 32 bits interface. (libc.info.gz)Truncating Files про truncate64 -- When the source file is compiled with `_FILE_OFFSET_BITS == 64' on a 32 bits machine this function is actually available under the name `truncate' and so transparently replaces the 32 bits interface. И так далее и тому подобное. Мне всё-же интересно -- когда это заработает(ло). А не заглушки, как было совсем недавно. >Так и хочется спросить авторов этого убожества - для чего вообще по их мнению >изобрели типы *_t ? Ты поспрашивай, может спрашивай, > > >> Alex > --- ifmail v.2.15dev5 * Origin: Demos online service (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.linux/15113249a5ca.html, оценка из 5, голосов 10
|