![](https://secure.gravatar.com/avatar/d7507fcbc1bf2d198731358a47b571fd.jpg?s=120&d=mm&r=g)
On Wed, Jul 14, 2004 at 09:07:22AM +0300, Victor Cheburkin wrote:
Hi!
сказать указать пару дефайнов, то все будет нормально, а если нет -- лимит в 2ГБ. То ли "об этом никто не знает", то ли просто не заморачивались.
Об этом знают все, кто этим занимается ;-) Видать немного народу страдает экстремистскими наклонностями :)
Просто вместо fopen нужно делать fopen64, вместо fseek -- fseek64 и т.д. Если проги скомпилить без нужных дефайнов (их там два), то эти вызовы использоваться не будут -- тот же struct FILE явно не заточен под 64-битные указатели, а обычный fseek позовет обычный lseek, а не lseek64. С fseek() - понятно, но зачем гробить полностью возможность записать файл >2GB....
То есть, вариант типа gzcat something>file не отличался работоспособностью (ну, это если tcsh/bash ещё пересобирать - то так вообще свой дистрибутив наверно сразу нужно делать...)
Отслеживать seek position это конечно хорошо, но зачем, если можно перекомпилить прогу с двумя дополнительными дефайнами и все будет работать? Примеров для линукса, когда "не получится" - вагон - особенно в области коммерческого софта (а в vmware для такого есть опция - "бить на файлы по 2Гб" - вот только готовую VM с файлом >2GB фиг получалось даже распаковать.
-- Best regards, Paul Arakelyan. =================================================================== uanog mailing list. To Unsubscribe: send mail to majordomo@uanog.kiev.ua with "unsubscribe uanog" in the body of the message