This is the mail archive of the cygwin@sources.redhat.com mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Please help


At 05:53 PM 10/11/2000, J. E. Touma wrote:
>Hi all,
>I'm having a problem compiling my C++ code under cygwin. It compiles
>fine under Linux and Solaris. 
>Here is the error message I'm getting after I type make
>
>g++ -mno-cygwin -L/cygnus/mingw/lib -o afsri vecmatlib.o myutils.o Sri.o
>mymath.o srifuncs.o irmaimage.o -lm
>Sri.o(.text$__ls__H3ZcZt18string_char_traits1ZcZt24__default_alloc_template2b0i0_R7ostreamRCt12basic_string3ZX01ZX11ZX21_R7ostream+0x18):Sri.cc:
>undefined reference to `ostream::write(char const *, int)'
>collect2: ld returned 1 exit status
>make: *** [afsri] Error 1
>
>
>Now if I compile without -mno-cygwin -L/cygnus/mingw/lib (so that I can
>run the code with the DLL) it works fine. 
>I have all the appropriate header files. What is frustrating is that  I
>don't even use ostream::write(char const *, int)' in the Sri.cc
>mentioned above. Yes I open a file stream but I write asci text to it,
>not binary. 
>
>Is there a problem with the fstream.h file? It is on my system.
>
>Any insight into this problem is appreciated.
>
>Regads,
>jim



Your problem is obviously at link time, not compile time, so there's no
issue with include files.  Your problem is the library you want isn't 
getting linked in.  So, the question is, which library are you using?
Are you pulling in ostream from iostream.h or ostream?  This will tell 
you whether you need the standard C++ library or the "old" stream stuff.
Once you know that, you'll be better able to find the library you're looking
for.  As I recall, MS sectioned out the stream stuff from their standard
runtime library back around VC++ 4 or 5.  This was done to accommodate the 
use of either the "old" stream implementation or the new standard C++
template stuff.  I forget all the details but searching the MSDN site should
tell you which libraries you need depending on which version of the stream
stuff you're trying to use.  Once you determine the library you need and
link it in, you'll be done.

Strictly speaking, if this works fine with Cygwin and not with -mno-cygwin,
then this is a Mingw issue.  You might find some additional information and
help on this subject if you check out www.mingw.org.



Larry Hall                              lhall@rfk.com
RFK Partners, Inc.                      http://www.rfk.com
118 Washington Street                   (508) 893-9779 - RFK Office
Holliston, MA 01746                     (508) 893-9889 - FAX


--
Want to unsubscribe from this list?
Send a message to cygwin-unsubscribe@sourceware.cygnus.com


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]