From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rick Rankin" To: "Dave Braze" , Subject: RE: Date: Sun, 28 Mar 1999 17:03:00 -0000 Message-id: References: <19990329001431.15887.qmail@www0b.netaddress.usa.net> X-SW-Source: 1999-03/msg00756.html Dave, You left out a pretty relevant piece of information: the command used to invoke the compiler. If your source is in a file called hello.cc (or hello.ccp or hello.cxx), then you can compile your source below with the line g++ hello.cc -o hello I suspect that you used "gcc hello.cc -o hello". By default, gcc does not link in the C++ runtime library. You could use gcc if you want to manually specify the C++ runtime: gcc hello.cc -o hello -lstdc++ Hope that helps, Rick -- Rick Rankin rrankin@primenet.com > -----Original Message----- > From: cygwin-owner@sourceware.cygnus.com > [ mailto:cygwin-owner@sourceware.cygnus.com]On Behalf Of Dave Braze > Sent: Sunday, March 28, 1999 5:15 PM > To: cygwin@sourceware.cygnus.com > Subject: > > > I am having problems compiling C++ programs with b20.1 on Windows 95 sr2. > Since I am trying to use cygwin to learn C++ and unix style tools both, I > don't have a good handle on the relevant terminology, but here it is. > > I can't compile a simple "hello world" program. Here it is: > > #include > > int main() > { > std::cout << "Hello world!\n"; > exit(0); > } > > I get an error like this (sorry for the long line): > > c:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cygwi > n32\egcs-2.91.57\collect2.exe > -o hello.exe -s > c:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cygwi > n32\egcs-2.91.57\..\..\..\..\i586-cygwin32\lib\crt0.o > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cyg > win32\egcs-2.91.57 > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib > -L\cygnus\cygwin-b20\H-i586-cygwin32\lib\gcc-lib\i586-cygwin32\egc > s-2.91.57 > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cyg > win32\egcs-2.91.57\..\..\..\..\i586-cygwin32\lib > -L\cygnus\cygwin-b20\H-i586-cygwin32\lib\gcc-lib\i586-cygwin32\egc > s-2.91.57\..\..\..\..\i586-cygwin32\lib > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cyg > win32\egcs-2.91.57\..\..\.. > hello.o -lgcc -lcygwin -lkernel32 -ladvapi32 -lshell32 -lgcc > hello.o(.text+0x1e):hello.cc: undefined reference to `cout' > hello.o(.text+0x23):hello.cc: undefined reference to > `ostream::operator<<(char > const *)' > collect2: ld returned 1 exit status > make: *** [hello.exe] Error 1 > > Incidently I have no problem compiling a 'c' version of "hello world". It > seems like the problem has to do with linking to the c++ > libraries, but I'm > not sure where the problem might be in my installation. When I installed > cygwin I accepted the default install directory. Also, the same > error occurs > whether I use gcc from the command line, or use a trivial make > file. I can't > imagine that this should cause a problem, but I do have a version of djgpp > installed on my system (poverty of imagination?). > > In any event, all help will be very much appreciated. > > -Dave Braze > > > ____________________________________________________________________ > Get your own FREE, personal Netscape WebMail account today at http://webmail.netscape.com . -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com From mboxrd@z Thu Jan 1 00:00:00 1970 From: "Rick Rankin" To: "Dave Braze" , Subject: RE: Date: Wed, 31 Mar 1999 19:45:00 -0000 Message-ID: References: <19990329001431.15887.qmail@www0b.netaddress.usa.net> X-SW-Source: 1999-03n/msg00759.html Message-ID: <19990331194500.yTa_7-MYVO0-PgG9p90ruMA4AJMfpGWANJDUu8XN-AE@z> Dave, You left out a pretty relevant piece of information: the command used to invoke the compiler. If your source is in a file called hello.cc (or hello.ccp or hello.cxx), then you can compile your source below with the line g++ hello.cc -o hello I suspect that you used "gcc hello.cc -o hello". By default, gcc does not link in the C++ runtime library. You could use gcc if you want to manually specify the C++ runtime: gcc hello.cc -o hello -lstdc++ Hope that helps, Rick -- Rick Rankin rrankin@primenet.com > -----Original Message----- > From: cygwin-owner@sourceware.cygnus.com > [ mailto:cygwin-owner@sourceware.cygnus.com]On Behalf Of Dave Braze > Sent: Sunday, March 28, 1999 5:15 PM > To: cygwin@sourceware.cygnus.com > Subject: > > > I am having problems compiling C++ programs with b20.1 on Windows 95 sr2. > Since I am trying to use cygwin to learn C++ and unix style tools both, I > don't have a good handle on the relevant terminology, but here it is. > > I can't compile a simple "hello world" program. Here it is: > > #include > > int main() > { > std::cout << "Hello world!\n"; > exit(0); > } > > I get an error like this (sorry for the long line): > > c:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cygwi > n32\egcs-2.91.57\collect2.exe > -o hello.exe -s > c:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cygwi > n32\egcs-2.91.57\..\..\..\..\i586-cygwin32\lib\crt0.o > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cyg > win32\egcs-2.91.57 > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib > -L\cygnus\cygwin-b20\H-i586-cygwin32\lib\gcc-lib\i586-cygwin32\egc > s-2.91.57 > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cyg > win32\egcs-2.91.57\..\..\..\..\i586-cygwin32\lib > -L\cygnus\cygwin-b20\H-i586-cygwin32\lib\gcc-lib\i586-cygwin32\egc > s-2.91.57\..\..\..\..\i586-cygwin32\lib > -Lc:\CYGNUS\CYGWIN-B20\H-I586-CYGWIN32\BIN\..\lib\gcc-lib\i586-cyg > win32\egcs-2.91.57\..\..\.. > hello.o -lgcc -lcygwin -lkernel32 -ladvapi32 -lshell32 -lgcc > hello.o(.text+0x1e):hello.cc: undefined reference to `cout' > hello.o(.text+0x23):hello.cc: undefined reference to > `ostream::operator<<(char > const *)' > collect2: ld returned 1 exit status > make: *** [hello.exe] Error 1 > > Incidently I have no problem compiling a 'c' version of "hello world". It > seems like the problem has to do with linking to the c++ > libraries, but I'm > not sure where the problem might be in my installation. When I installed > cygwin I accepted the default install directory. Also, the same > error occurs > whether I use gcc from the command line, or use a trivial make > file. I can't > imagine that this should cause a problem, but I do have a version of djgpp > installed on my system (poverty of imagination?). > > In any event, all help will be very much appreciated. > > -Dave Braze > > > ____________________________________________________________________ > Get your own FREE, personal Netscape WebMail account today at http://webmail.netscape.com . -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com -- Want to unsubscribe from this list? Send a message to cygwin-unsubscribe@sourceware.cygnus.com