Thread overview | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|
|
August 17, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
phobos commit, revision 1890 user: andrei msg: Now large files work with both osx and linux http://www.dsource.org/projects/phobos/changeset/1890 |
August 18, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to dsource.org | (2010/08/18 0:26), dsource.org wrote:
> phobos commit, revision 1890
>
>
> user: andrei
>
> msg:
> Now large files work with both osx and linux
>
> http://www.dsource.org/projects/phobos/changeset/1890
I noticed some errors on Windows:
std\stdio.d(529): Error: undefined identifier off_t, did you mean
variable offset?
std\stdio.d(530): Error: undefined identifier fseeko, did you mean
function fseek?
Are off_t and fseeko only Posix?
|
August 17, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to SHOO | Please update and build druntime too.
Andrei
SHOO wrote:
> (2010/08/18 0:26), dsource.org wrote:
>> phobos commit, revision 1890
>>
>>
>> user: andrei
>>
>> msg:
>> Now large files work with both osx and linux
>>
>> http://www.dsource.org/projects/phobos/changeset/1890
>
> I noticed some errors on Windows:
>
> std\stdio.d(529): Error: undefined identifier off_t, did you mean
> variable offset?
> std\stdio.d(530): Error: undefined identifier fseeko, did you mean
> function fseek?
>
> Are off_t and fseeko only Posix?
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
|
August 17, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | Wait, SHOO's question was for Windows, your latest druntime commit seems to only affect linux...
Walter, is there an equivalent fseeko for DMC?
BTW, nice work finding that Andrei, I think this solves the problem (On Linux/MacOS at least). Or at least pushes off the eventual change to purely D I/O ;)
-Steve
----- Original Message ----
> From: Andrei Alexandrescu <andrei at erdani.com>
> To: Discuss the phobos library for D <phobos at puremagic.com>
> Sent: Tue, August 17, 2010 12:13:30 PM
> Subject: Re: [phobos] phobos commit, revision 1890
>
> Please update and build druntime too.
>
> Andrei
>
> SHOO wrote:
> > (2010/08/18 0:26), dsource.org wrote:
> >> phobos commit, revision 1890
> >>
> >>
> >> user: andrei
> >>
> >> msg:
> >> Now large files work with both osx and linux
> >>
> >> http://www.dsource.org/projects/phobos/changeset/1890
> >
> > I noticed some errors on Windows:
> >
> > std\stdio.d(529): Error: undefined identifier off_t, did you mean variable
>offset?
> > std\stdio.d(530): Error: undefined identifier fseeko, did you mean function
>fseek?
> >
> > Are off_t and fseeko only Posix?
> > _______________________________________________
> > phobos mailing list
> > phobos at puremagic.com
> > http://lists.puremagic.com/mailman/listinfo/phobos
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
>
|
August 18, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | (2010/08/18 1:13), Andrei Alexandrescu wrote:
> Please update and build druntime too.
>
> Andrei
>
Though I do `svn up` both a combination of druntime and phobos, this symptom does not fade away.
Now, druntime's revision is r370, Phobos's revision is r1890.
On Windows, these lines are compiled:
L528: enforce(isOpen, "Attempting to seek() in an unopened file");
L529: static assert(off_t.sizeof == 8);
L530: errnoEnforce(fseeko(p.handle, offset, origin) == 0,
L531: "Could not seek in file `"~p.name~"'");
Is this correct?
|
August 17, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to SHOO | Try now. I've reverted back to the old 32-bit routines for Windows.
To work with large files on win32 one must use _fseeki64 and _ftelli64. However, if I try to link such functions I get linker errors. Furthermore, grepping the windows/lib/ files for either symbol yields no results.
I've searched around and it looks like those functions are defined in libcmt.lib. Are we allowed to distrubute that? Otherwise, Walter, can you define 64-bit seek and tell routines in your stdio implementation?
Thanks,
Andrei
SHOO wrote:
> (2010/08/18 1:13), Andrei Alexandrescu wrote:
>> Please update and build druntime too.
>>
>> Andrei
>>
>
> Though I do `svn up` both a combination of druntime and phobos, this symptom does not fade away.
>
> Now, druntime's revision is r370, Phobos's revision is r1890.
>
> On Windows, these lines are compiled:
>
> L528: enforce(isOpen, "Attempting to seek() in an unopened file");
> L529: static assert(off_t.sizeof == 8);
> L530: errnoEnforce(fseeko(p.handle, offset, origin) == 0,
> L531: "Could not seek in file `"~p.name~"'");
>
> Is this correct?
> _______________________________________________
> phobos mailing list
> phobos at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/phobos
|
August 17, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Andrei Alexandrescu | ----- Original Message ---- > From: Andrei Alexandrescu <andrei at erdani.com> > To: Discuss the phobos library for D <phobos at puremagic.com> > Sent: Tue, August 17, 2010 12:47:20 PM > Subject: Re: [phobos] phobos commit, revision 1890 > > Try now. I've reverted back to the old 32-bit routines for Windows. > > To work with large files on win32 one must use _fseeki64 and _ftelli64. >However, if I try to link such functions I get linker errors. Furthermore, grepping the windows/lib/ files for either symbol yields no results. > > I've searched around and it looks like those functions are defined in >libcmt.lib. Are we allowed to distrubute that? This will not work. You cannot mix C runtime libraries. In general, you cannot call any microsoft C runtime library functions. However, system calls are still fine as the DMC runtime is built on top of those. > Otherwise, Walter, can you define 64-bit seek and tell routines in your stdio >implementation? This is an option, another is to implement the appropriate fseek and ftell functions in D, and use those instead. This is what I had to resort to for the HANDLE <==> file descriptor functions that I need for std.process. -Steve |
August 17, 2010 [phobos] phobos commit, revision 1890 | ||||
---|---|---|---|---|
| ||||
Posted in reply to Steve Schveighoffer | On 08/17/2010 11:54 AM, Steve Schveighoffer wrote:
>> Otherwise, Walter, can you define 64-bit seek and tell routines in your stdio implementation?
>
> This is an option, another is to implement the appropriate fseek and ftell functions in D, and use those instead. This is what I had to resort to for the HANDLE<==> file descriptor functions that I need for std.process.
Makes sense. Let's wait for Walter's opinion.
Andrei
|
Copyright © 1999-2021 by the D Language Foundation