473,387 Members | 1,512 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,387 software developers and data experts.

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

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 10 '06 #1
9 4154
Whats wrong in using hash_map that comes with VC? In VS2003/VS2005 this
has moved from std to stdext namespace:

http://msdn.microsoft.com/library/de...tNamespace.asp

---
Ajay

May 10 '06 #2
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 '06 #3
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 '06 #4
<co**********@hotmail.com> wrote in message
news:11**********************@v46g2000cwv.googlegr oups.com...
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
May 10 '06 #5
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

May 10 '06 #6
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 '06 #7
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

May 10 '06 #8
<co**********@hotmail.com> wrote in message
news:11**********************@v46g2000cwv.googlegr oups.com...
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
May 10 '06 #9
"Ajay Kalra" <aj*******@yahoo.com> wrote in message
news:11**********************@j73g2000cwa.googlegr oups.com...
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
May 10 '06 #10

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

9
by: Syver Enstad | last post by:
I've downloaded both source distro, and binary installer. Installed python with the binary installer, when I attempted to compile mxDateTime (mxBase) for 2.3 with MSVC 6.0 I got an error that...
2
by: AIM | last post by:
Error in msvc in building inheritance.obj to build hello.pyd Hello, I am trying to build the boost 1.31.0 sample extension hello.cpp. I can not compile the file inheritance.cpp because the two...
3
by: Mark | last post by:
Hi, I'm trying to use hash_map (gcc 3.2.2) with a std::string as the key. It will compile if I use <map> but I get a bunch of template compile errors when I change it to hash_map. Any...
19
by: Martin Pohlack | last post by:
Hi, I have a funtion which shall compute the amount for a later malloc. In this function I need the sizes of some struct members without having an instance or pointer of the struct. As...
1
by: graham.rick | last post by:
I'm trying to port a cgi-bin app from Linux (gcc) to Windows. The cgi is written in ANSI C and works fine on my Linux box. I have a friend who would like to run it under Apache on Windows. ...
14
by: **--> That Guy Downstairs | last post by:
What files are needed to be #included to be able to copy files to a new directory and be portable? ie. use it in Unix (SGI and Linux) or Windows 2000. #ifdefs Ok. using dirent.h on SGI, but...
1
by: joseysaac | last post by:
i have this code in a archive called ffont.h #ifndef FFONT_H_FILE #define FFONT_H_FILE #include "FBase.h" #include "FShape.h" #include <vector> #include <hash_map>
2
by: BruceWho | last post by:
I downloaded boost1.35.0 and built it with following command: bjam --toolset=msvc-7.1 --variant=release --threading=multi -- link=shared --with-system stage and it failed to compile, error...
4
by: imaloner | last post by:
I am posting two threads because I have two different problems, but both have the same background information. Common Background Information: I am trying to rebuild code for a working,...
0
by: taylorcarr | last post by:
A Canon printer is a smart device known for being advanced, efficient, and reliable. It is designed for home, office, and hybrid workspace use and can also be used for a variety of purposes. However,...
0
by: Charles Arthur | last post by:
How do i turn on java script on a villaon, callus and itel keypad mobile phone
0
by: ryjfgjl | last post by:
If we have dozens or hundreds of excel to import into the database, if we use the excel import function provided by database editors such as navicat, it will be extremely tedious and time-consuming...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
0
BarryA
by: BarryA | last post by:
What are the essential steps and strategies outlined in the Data Structures and Algorithms (DSA) roadmap for aspiring data scientists? How can individuals effectively utilize this roadmap to progress...
1
by: nemocccc | last post by:
hello, everyone, I want to develop a software for my android phone for daily needs, any suggestions?
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
by: Hystou | last post by:
There are some requirements for setting up RAID: 1. The motherboard and BIOS support RAID configuration. 2. The motherboard has 2 or more available SATA protocol SSD/HDD slots (including MSATA, M.2...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.