Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: Re: Perl / Win32 / VC++ / USE_LARGE_FILES

by BrowserUk (Pope)
on Aug 26, 2003 at 20:49 UTC ( #286861=note: print w/replies, xml ) Need Help??


in reply to Re: Perl / Win32 / VC++ / USE_LARGE_FILES
in thread Perl / Win32 / VC++ / USE_LARGE_FILES

Addendum: I just re-read your post, and realised that I had left one of your questions unanswered.

Besides, what namely you are trying to achieve by trying Borland build?

What I am trying to achieve is parity! Parity with all the *nix users who build their own copies of perl using free compilers. I want to have all the same benefits and privileges that they enjoy.

  • I want to be able to use Inline::C, Inline::asm et al.
  • I want to have the ability to build my own modules with XS and C components and not be dependant on others. PodMaster is a great guy, but he is easily pissed off:)
  • I want to be able to use the latest versions of perl as they become available and not wait 6 months for AS to do their thing.
  • I want to be able to apply patches that the p5p guys come up with for the bugs I raise and try them out so that I can do the right thing by their efforts and confirm that their patches work for me.

Most of all, I think that just because I choose (and others are forced) to use Win32 as my OS, I don't see why my only choices for using perl are:

  1. Use a binary distribution with all of the limitations that implies.
  2. Have to adopt Cygwin in order to build using gcc. If I wanted to use *nix, I would install Linux. Cygwin, from my perspective is the worst of both worlds. Like driving a left-hand drive car in a right-hand drive country, but doing it from the passenger seat.
  3. Put more money into the coffers of MS by buying their compiler. I choose to use Win32, but my copy of NT was paid for a very long time ago. My choice of preferred platform does not translate into a love for that company. I am as aware of their business practices as the next man, and for personal reasons, perhaps more aware than most. I have no desire to add to their wealth or condone their business practices by making new purchases from them, even if I could afford to which is debatable.

For my purposes, the compiler that Borland kindly make available to the community for free is just fine. It does everything I need it to quite competently with the exception of large file support, which I have patched my way around for perl and will probably get around to fixing at the libraries level at some point.

I did try using MinGW for a while, but the build process for that seems even more broken than for Borland.

I will be trying to get my patches accepted back into the perl build tree so that others might also benefit (if only I can find a version of diff that can handle diff'ing two 5000+ line files without forcing my system into swapping by consuming 200+ MB of memory before I got fed up and killed it :().


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller
If I understand your problem, I can solve it! Of course, the same can be said for you.

  • Comment on Re: Re: Perl / Win32 / VC++ / USE_LARGE_FILES

Replies are listed 'Best First'.
Re: Re: Re: Perl / Win32 / VC++ / USE_LARGE_FILES
by Dog and Pony (Priest) on Aug 26, 2003 at 23:29 UTC
    Have to adopt Cygwin in order to build using gcc.
    ...

    I did try using MinGW for a while, but the build process for that seems even more broken than for Borland.

    Actually, perl builds nicely with mingw32. I built the 5.8.0 several times using the mingw-gcc that comes with Dev-C++, when I didn't wanna wait for the ActiveState, and I didn't want to buy VC++ to be able to test embedding. I also built extensions, and I've embedded the Perl interpreter with no trouble at all. All I did was read and follow the instructions (I had done neither anywhere before). However, for some reason it wants to use dmake, which seems to be a make version not compatible with anything else this side of the sun. But using that to build Perl, then nmake for everything else as soon as it is built works just fine.

    However, I have no idea what the take is on huge files in that build. So maybe you can't use it for that reason. And if Borland is fine for you, no reason to switch of course.


    You have moved into a dark place.
    It is pitch black. You are likely to be eaten by a grue.

      It's a valid point. The last time I tried MinGW, it was version 2 and I was attempting to build 5.6.1. I downloaded MinGW-3.0.0-rc4 whilst I was sleeping with the intention of trying this out on 5.8.1. I just haven't got to that yet, but will once the glee of having achieved the Borland build begins to wear off.

      Essentially, I had gotten much further with Borland previously so it was a no-brainer to try that first this time around. Using MinGW would be preferable in at least some ways to Borland. Having access to the sources of the runtime libraries mean that if (for example) the large file support was missing, then I could more easily correct that than with the Borland stuff. I haven't tried to pull apart and reassemble a .dll in a long time, which is what I would probably need to do to fix the Borland CRT.


      Examine what is said, not who speaks.
      "Efficiency is intelligent laziness." -David Dunham
      "When I'm working on a problem, I never think about beauty. I think only how to solve the problem. But when I have finished, if the solution is not beautiful, I know it is wrong." -Richard Buckminster Fuller
      If I understand your problem, I can solve it! Of course, the same can be said for you.

Re: Re: Re: Perl / Win32 / VC++ / USE_LARGE_FILES
by jand (Friar) on Aug 27, 2003 at 04:14 UTC
    In case you don't know, you can also get the standard edition of the Microsoft VC++ compiler for free if you install the .NET Framework SDK (or even just the redistributable runtime, a 20MB download). It doesn't include the Visual Studio environment, and the optimizations of the professional edition are disabled, but it is a fully functional commandline compiler. The genereated code runs about the same speed as code generated by GCC. It builds Perl just fine.
Re: Re: Re: Perl / Win32 / VC++ / USE_LARGE_FILES
by Courage (Parson) on Aug 27, 2003 at 01:34 UTC
    I really wish you success.

    I can't be of much help because I can't spend much time with investigating Borland builds, but I will try to be helpful anyway, so feel free to ask.

    (BTW from time to time I use BorlandC++ IDE to catch core dumps and then perform step-by-step debugging of perl code, it appears to be quite comfortable in Borland IDE)

    Also, after reading README.win32 (there is some Borland wisdom there) you will notice that file ./win32/sync_ext.pl should be used when you're dealing with BC++ -- do not neglect it, otherwise you will have some files always recompiled when doing "dmake /target/".

    Courage, the Cowardly Dog

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://286861]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others musing on the Monastery: (6)
As of 2020-04-07 07:59 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    The most amusing oxymoron is:
















    Results (42 votes). Check out past polls.

    Notices?