Getting MSVC to compile proper unix stuff, like hash_map, fts.h, dirent.h

Discussion in 'C++' started by collection60@hotmail.com, May 9, 2006.

  1. Guest

    I've been developing some Unix based shell tools.

    They work fine on Linux and MacOSX.

    I want to compile them on Win32. But I can't get hash_map to compile. I
    tried downloading stl (and stlport) which is supposed to work in MSVC,
    but it doesn't, it just generates tons of errors for stuff that used to
    work just fine.

    Where do I get fts.h to compile and dirent.h compile?

    Is there some kind of Unix-like library or wrapper for Windows? Or must
    I port all of that code to win32 code?

    Or am I just asking a silly question? Is it too much to ask to get
    stuff like dirent.h?

    I guess I was just assuming, that seeing as stuff like fopen works just
    the same on Windows as it does on Unix, that fts.h should work the
    same. Was that a very bad assumption?
     
    , May 9, 2006
    #1
    1. Advertising

  2. Ajay Kalra Guest

    Ajay Kalra, May 9, 2006
    #2
    1. Advertising

  3. Guest

    Well, I didn't know they existed. I compiled the Unix code that shoudl
    have compiled, but MSVC didn't recognise the hashmap include, so I
    guessed it doesn't exist.
     
    , May 10, 2006
    #3
  4. Guest

    I'm using MSVC v6, and I don't see any std or stdext folder in my
    includes folder.

    What's the exact #include line I should use?
     
    , May 10, 2006
    #4
  5. P.J. Plauger Guest

    <> wrote in message
    news:...

    > I'm using MSVC v6, and I don't see any std or stdext folder in my
    > includes folder.
    >
    > What's the exact #include line I should use?


    That version doesn't have hash_map. You can license our upgrade
    library, which works fine with V6 and include hash_map/set. Or
    you can get STLport for free. I believe the "formal" release
    version available at their web site installs easily enough with
    V6. The newer version that you get from sourceforge may be a
    bit trickier, but it is newer.

    HTH,

    P.J. Plauger
    Dinkumware, Ltd.
    http://www.dinkumware.com
     
    P.J. Plauger, May 10, 2006
    #5
  6. Ajay Kalra Guest

    stdext is for VS2003 and VS2005(as I had mentioned). If you are using
    VC6 w/hash_map, you will probaly either get Dinkumware's STL version
    for that compiler or go with STLPORT as you were doing.

    ---
    Ajay
     
    Ajay Kalra, May 10, 2006
    #6
  7. Guest

    stlport doesn't work though.

    I tried installing it, and it just gives a million errors.

    I put it into an stlport directory, added the stlport directory to
    MSVC's include directories, and it just gave a million errors. It was
    worse than without having stlport.

    Also, the instructions for install aren't very good. Do you need to
    compile it or not? I'd imagine that if it stlport were made properly,
    then you wouldn't need to compile.
     
    , May 10, 2006
    #7
  8. Ajay Kalra Guest

    I have been using VS2005 and subsequently dont use STLPort. It worked
    fine for us in VC6. It does not need any compilation as its nothing but
    collection of template classes.

    ---
    Ajay
     
    Ajay Kalra, May 10, 2006
    #8
  9. P.J. Plauger Guest

    <> wrote in message
    news:...

    > stlport doesn't work though.
    >
    > I tried installing it, and it just gives a million errors.
    >
    > I put it into an stlport directory, added the stlport directory to
    > MSVC's include directories, and it just gave a million errors. It was
    > worse than without having stlport.
    >
    > Also, the instructions for install aren't very good. Do you need to
    > compile it or not? I'd imagine that if it stlport were made properly,
    > then you wouldn't need to compile.


    Some people have made it work, IME, which is why I felt obliged
    to recommend it. But if you want something that works out of the
    box, and comes with support...

    Depends on what your time is worth.

    P.J. Plauger
    Dinkumware, Ltd.
    http://www.dinkumware.com
     
    P.J. Plauger, May 10, 2006
    #9
  10. P.J. Plauger Guest

    "Ajay Kalra" <> wrote in message
    news:...

    >I have been using VS2005 and subsequently dont use STLPort.


    Right. STLport is inferior to the library shipped with VC++ from
    V7 (.NET) onward.

    > It worked
    > fine for us in VC6. It does not need any compilation as its nothing but
    > collection of template classes.


    That's one way to use it. But if you want its version of iostreams,
    etc. you have to build a binary library.

    P.J. Plauger
    Dinkumware, Ltd.
    http://www.dinkumware.com
     
    P.J. Plauger, May 10, 2006
    #10
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Martin Pohlack

    sizeof(struct dirent.d_ino)

    Martin Pohlack, Sep 8, 2003, in forum: C Programming
    Replies:
    19
    Views:
    1,106
    Keith Thompson
    Sep 10, 2003
  2. **--> That Guy Downstairs
    Replies:
    14
    Views:
    745
    S7Solutions
    Feb 21, 2006
  3. Dirent.h

    , Feb 26, 2006, in forum: C++
    Replies:
    3
    Views:
    733
    Larry I Smith
    Feb 26, 2006
  4. eddie

    Need help with struct *** dirent ???

    eddie, Jan 10, 2009, in forum: C Programming
    Replies:
    7
    Views:
    513
    Richard
    Jan 12, 2009
  5. Mark Summerfield

    SQLite + FTS (full text search)

    Mark Summerfield, Jan 23, 2014, in forum: Python
    Replies:
    8
    Views:
    169
    Terry Reedy
    Jan 24, 2014
Loading...

Share This Page