473,804 Members | 3,067 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Error when compiling with Cygwin

Hello,
I just made a little C++ console application:

#include "iostream"
using namespace std;

int main ()
{
cout << "Hello Mars !";
return 0;
}

But when i tryed to compile it with Cygwin.

gcc main.cpp -o main.exe

It gave me the following error:

http://users.pandora.be/rz6hkk/cygwin.png

I heard there is some new *modern* c++ language ?!
Jul 22 '05
22 2223
Andre Heinen wrote:
On 25 Aug 2004 05:13:38 -0700, sp*****@pandora .be (TuPLaD) wrote:
#include "iostream"

I was about to post to tell the OP to use #include <iostream>
instead of #include "iostream", but after I saw that neither Rolf
nor Sharad reacted, I hesitated. I tried it, and indeed my
compiler didn't complain. Yet I was under the impression that
standard headers should be included with square brackets.

Stroustrup 9.2.1 says that for standard headers square brackets
should be used rather than quotes, but I couldn't figure out if
it is mandatory or just some guideline.

If I remember correctly, #include "somefile.h " means:
1) first search for somefile.h in the current directory, and if
that fails
2) search the system directories.
This would explain why my compiler accepted it.

However, #include <iostream> does not mean that there must be a
file called iostream: the name may be different, or there may be
no file at all, depending on the compiler.

Hence I believe that #include "iostream" may work on one
compiler, but is not portable, and should be avoided.

Did I miss something?


I think that if he used #include "iostream.h " it would work.

Based on the error messages, it looks like iostream didn't get loaded,
but the complaint from the compiler comes when he tries to use something
from iostream that hasn't loaded, specifically std::cout. I've gotten
similar types of errors in the past from this type of mistake,
especially when I mis-spell a filename.

--
Will Twentyman
email: wtwentyman at copper dot net

Jul 22 '05 #11
TuPLaD wrote:
2) THERE DOESNT EXIST ANY ANY ANY ANY image virusses that can work
from a site, you will have to download & start it(yes it can go to
cache :]). So its not a virus.


Just FYI, it's quite possible have arbitrary code executed just by
loading an image. Take a look at:
http://www.securitytracker.com/alert...b/1009067.html
That's just one (out-of-date) example. Granted, it's an exploit not a
virus. But there's no reason that you couldn't put a virus inside a BMP.
Jul 22 '05 #12

"TuPLaD" <sp*****@pandor a.be> wrote in message
news:a2******** *************** ***@posting.goo gle.com...
First of all ->
I didnt knew how to copy paste from Cygwin's window so i made a
screenshot
2) THERE DOESNT EXIST ANY ANY ANY ANY image virusses that can work
from a site, you will have to download & start it(yes it can go to
cache :]). So its not a virus.

You obviously don't live in the MS Windows world! :-) Windows has been
well-known for allowing viruses in simply by clicking on a link. And the
link shown in the text doesn't always match the actual underlying link
(because HTML can hide it easily), so just because you have a .png extension
(whatever that is), doesn't mean it's not something that can execute when I
link to it. Check any of the dozen or more security notices about Windows
in the past year. I got a virus on my PC just a month or two ago, simply by
linking to a web site that had been compromised, and that was a site I
normally trust and have linked to many times! Basically, my philosophy
(like many Windows users') is to not click on links unless I know what I'm
linking to.
Third -> I just compiled it in Linux, and it worked well :D
I started it, it gave me the text & stuff :]

Thx for your help all !


(BTW, was it the include statement that was the problem?)
Jul 22 '05 #13
TuPLaD wrote:
First of all ->
I didnt knew how to copy paste from Cygwin's window so i made a
screenshot
Fair enough, though unusual :-)
2) THERE DOESNT EXIST ANY ANY ANY ANY image virusses that can work
from a site, you will have to download & start it(yes it can go to
cache :]). So its not a virus.
The fact that its name ends in .png alone doesn't mean it's just an
image. That depends on the mimetype that the http server sends. It
could easily be a html page with javascript and activex and (insert web
buzzword here).
Third -> I just compiled it in Linux, and it worked well :D


But surely not with the command line you wrote in your original message.
If you use gcc for it, the C++ standard library will not be linked in,
which should result (and does here on my linux box) in similar messages
to those from your screenshot.
Try (as I already wrote) g++ instead of gcc. Do you get the same errors
when using g++ under Cygwin?

Jul 22 '05 #14
> "Rolf Magnus" <ra******@t-online.de> wrote in message news:cgk967$soo $00
$1@news.t-online.com...
jive wrote:
The last C++ standard version is from 2003, but except for a few
minor corrections, it's the same as C++98.


AFAIK there is only a draft, as the standardisation process is still
incomplete and new revision of the C++ standard is supposedly due this
fall.

See:
http://www.iso.org/iso/en/CatalogueD...talogueDetail?
CSNUMBER=38110


Strange.. I found no mention about this on
http://www.open-std.org/jtc1/sc22/wg21/ and this
http://www.open-std.org/jtc1/sc22/wg...2004/n1638.pdf outdates
the one available on the ISO site.

Could someone comment on that?

- jive
---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:st*****@ ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]

Jul 22 '05 #15
On Thu, 26 Aug 2004 10:25:37 -0400, Will Twentyman
<wt********@rea d.my.sig> wrote:
Andre Heinen wrote:
On 25 Aug 2004 05:13:38 -0700, sp*****@pandora .be (TuPLaD) wrote:

#include "iostream"

<snip>


I think that if he used #include "iostream.h " it would work.
<snip>


His mistake was to use gcc instead of g++. I have the same
system: when linked correctly, the program works fine with
"iostream". With "iostream.h ", it works fine too, but the
compiler gives a warning.

What puzzles me is that I thought it was illegal to use double
quotes to include standard headers. I'd like someone who knows
better than me to confirm.

--
Andre Heinen
My address is "a dot heinen at europeanlink dot com"
Jul 22 '05 #16
jive wrote:
"Rolf Magnus" <ra******@t-online.de> wrote in message news:cgk967$soo $00
$1@news.t-online.com...
jive wrote:

The last C++ standard version is from 2003, but except for a few
minor corrections, it's the same as C++98.


AFAIK there is only a draft, as the standardisation process is still
incomplete and new revision of the C++ standard is supposedly due this
fall.

See:
http://www.iso.org/iso/en/CatalogueD...talogueDetail?
CSNUMBER=3811 0

Strange.. I found no mention about this on
http://www.open-std.org/jtc1/sc22/wg21/ and this
http://www.open-std.org/jtc1/sc22/wg...2004/n1638.pdf outdates
the one available on the ISO site.

Could someone comment on that?

- jive


The C++ Committee worked on addressing errors in the original 1998 C++
standard (see this newsgroup's FAQ list about Defect Reports), and is
now working on a future C++ standard.

A Technical Report (TR1) was released containing fixes to Defect
Reports. The TR was folded into a new version of the C++ standard,
dated 2003. That is now the official standard (ISO/IEC 14882:2003). It
is available for purchase from ISO (at the above addres), from
www.ansi.org, and from www.incits.org.

In the process of creating a standard (or TR), the committee creates
many drafts, carefully labeled as drafts. The n1638.pdf paper is one
example.

These drafts have no official weight. They are known to contain errors
and inconsistencies , and to be incomplete. In fact these drafts say so
on the first page!

---
Steve Clamage, st************* @sun.com

---
[ comp.std.c++ is moderated. To submit articles, try just posting with ]
[ your news-reader. If that fails, use mailto:st*****@ ncar.ucar.edu ]
[ --- Please see the FAQ before posting. --- ]
[ FAQ: http://www.jamesd.demon.co.uk/csc/faq.html ]

Jul 22 '05 #17
TuPLaD wrote:
Hello,
I just made a little C++ console application:

#include "iostream"
What is this. this one ought to be

#include <iostream>
using namespace std;
Well, this serves good for academic purposes. But for all practical
purposes, you would not want to bring everything in std namespace to
your application.

int main ()
{
cout << "Hello Mars !";
u can write this one as std::cout << ....

return 0;

While your intentions are certainly good when you write this, the
better way to do this is

return EXIT_SUCCESS;

/ EXIT_FAILURE depending upon what you want to do.
}

But when i tryed to compile it with Cygwin.

gcc main.cpp -o main.exe
Why on earth are you using gcc (That is supposed to be a C compiler).
Use g++ .

It gave me the following error:

http://users.pandora.be/rz6hkk/cygwin.png
I couldnt access that.

I heard there is some new *modern* c++ language ?!


Might be you are talking about a library written in C++.
--
Karthik
Jul 22 '05 #18
Karthiik Kumar wrote:
TuPLaD wrote:
Hello,
I just made a little C++ console application:

#include "iostream"


What is this. this one ought to be

#include <iostream>
using namespace std;


Well, this serves good for academic purposes. But for all practical
purposes, you would not want to bring everything in std namespace to
your application.

int main ()
{
cout << "Hello Mars !";


u can write this one as std::cout << ....

return 0;

While your intentions are certainly good when you write this, the
better way to do this is

return EXIT_SUCCESS;

/ EXIT_FAILURE depending upon what you want to do.
}

But when i tryed to compile it with Cygwin.

gcc main.cpp -o main.exe


Why on earth are you using gcc (That is supposed to be a C
compiler).
Use g++ .


Just FYI, gcc is not supposed to be a C compiler. It's rather the
multi-language frontend that tries to guess the language from the file
name of the source file (if you don't explicitly specify it).
The problem is the linking step, since the linker doesn't know the
language that an object file was generated from. Therefore, linking
with gcc assumes C and therefore omits the command line arguments that
would be needed for C++.
However, it's best to not bother and just always use g++ whenever you
have C++ code.

Jul 22 '05 #19
Karthiik Kumar <ka************ *****@yahoo.com > wrote in message news:<413018ab$ 1@darkstar>...
TuPLaD wrote:
Hello,
I just made a little C++ console application:

#include "iostream"


What is this. this one ought to be

#include <iostream>
using namespace std;


Well, this serves good for academic purposes. But for all practical
purposes, you would not want to bring everything in std namespace to
your application.

int main ()
{
cout << "Hello Mars !";


u can write this one as std::cout << ....

return 0;

While your intentions are certainly good when you write this, the
better way to do this is

return EXIT_SUCCESS;

/ EXIT_FAILURE depending upon what you want to do.
}

But when i tryed to compile it with Cygwin.

gcc main.cpp -o main.exe


Why on earth are you using gcc (That is supposed to be a C compiler).
Use g++ .

It gave me the following error:

http://users.pandora.be/rz6hkk/cygwin.png


I couldnt access that.

I heard there is some new *modern* c++ language ?!


Might be you are talking about a library written in C++.


I replaced the image to: http://users.pandora.be/rz6hkk/img/cygwin.png

I compiled it with g++ so it worked.

About the image virusses, well, i didnt had that much virusses, 1 or
2, and some friend of mine changed the source of mydoom a little bit
and gave it to me to "test".
and he didnt had a removal , so had to remove it myself :(

you say its a virus, but why the HELL do you think about it ? look at
the first answer, he clicked on the image, nothing happened ....
whats the problem lol ?
anyway :D
its solved :P
g++ main.cpp -o main.exe worked well in linux , also executed it in
console :)
Jul 22 '05 #20

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

Similar topics

1
2920
by: alex | last post by:
Hello I have some c++ code, which has been happily developped in the linux/unix world. Everything has always been compiled with different compiler (intel, KAI, g++...) and gnu makefiles For some obscure reasons, I have to make all this work in Windows, where I have very little experience. I've installed cygwin and everything is going well using the provided g++ compiler.
12
5650
by: Eugene A | last post by:
Hello. I am trying to compile a linux socket server and a client in cygwin on windows. The g++ version is 3.3.1. The source was obtained from this location: http://www.linuxgazette.com/issue74/tougher.html ServerSoccket.cpp apparently compiles OK. Socket.cpp has a problem. Here's
1
1277
by: user | last post by:
Cannot see what's wrong. g++ -O -I../mht -o myfile myfile.o motionModel.o \ -L ../mht -lmht -lm /usr/lib/gcc-lib/i686-pc-cygwin/3.3.3/../../../../i686-pc-cygwin/bin/ld: skippin g incompatible ../mht/libmht.a when searching for -lmht /usr/lib/gcc-lib/i686-pc-cygwin/3.3.3/../../../../i686-pc-cygwin/bin/ld: skippin g incompatible ../mht/libmht.a when searching for -lmht
1
4679
by: Janez Kostanj¹ek | last post by:
Hello everyone, this is my first post to postgres mailing list. System that I use: I am using Postgres under last CygWin published on public mirrors at the moment. OS system runing is Windows 2000 professional, 1024 or 256 or 512 MB of RAMand 40Gb of disk. Postmaster shows version 7.4.1 Problem:
17
5129
by: abdur_rab7 | last post by:
Hi, I am compiling code for nanosleep in CYGWIN. During compilation i get the following error Socket.cc: In method `bool Socket::hangOnConnection(int = 0)': Socket.cc:338: aggregate `struct timespec tmsp' has incomplete type and cannot b e initialized
1
6762
by: edwardzyang | last post by:
I am running Windows XP with cygwin with gcc 3.4.4-1 and gdb 20060706-2. I compiled this very simple program: #include <iostream> using namespace std; int main(int argc, char (*(argv)) ) { int max; // number to count to if (argc == 1) { // print to 100
1
2312
by: TheOne | last post by:
I downloaded sample codes from http://www.cs.rpi.edu/~musser/stl-book/source/src.zip and tried to compile them. I started my cygwin on xp, renamed Makefile.unix to Makefile and typed "make". After several successful compilation, it spat out following error : /usr/lib/gcc/i686-pc-cygwin/3.4.4/../../../libcygwin.a(libcmain.o): (.text+0xab): undefined reference to `_WinMain@16' collect2: ld returned 1 exit status
16
43736
by: Micko1 | last post by:
Hello there :) I have been using Visual Studio on a program which I have just completed, however I need to have it compiling using a unix based compiler, when I try in cygwin, I get the following error: undefined reference to `_WinMain@16' I have tried searching for a workaround, although I am not a programming guru, and I find it difficult to comprehend the discussions on this topic :) Any help is appreciated.
6
3634
by: JR | last post by:
The code below compiles and runs perfectly in Windows XP Pro, Using MS VS 2005. If I compile with g++ (cygwin) using the following command line: g++ -pedantic -Weffc++ -Wall -Wctor-dtor-privacy -Wold-style-cast - Woverloaded-virtual -o kk kk.cpp it displays the following errors: kk.cpp: In function `void Burp(std::ostream&, std::vector<std::vector<T, std::allocator<_CharT, std::allocator<std::vector<T, std::allocator<_CharT &)':
0
9704
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However, people are often confused as to whether an ONU can Work As a Router. In this blog post, we’ll explore What is ONU, What Is Router, ONU & Router’s main usage, and What is the difference between ONU and Router. Let’s take a closer look ! Part I. Meaning of...
0
10558
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers, it seems that the internal comparison operator "<=>" tries to promote arguments from unsigned to signed. This is as boiled down as I can make it. Here is my compilation command: g++-12 -std=c++20 -Wnarrowing bit_field.cpp Here is the code in...
0
10069
tracyyun
by: tracyyun | last post by:
Dear forum friends, With the development of smart home technology, a variety of wireless communication protocols have appeared on the market, such as Zigbee, Z-Wave, Wi-Fi, Bluetooth, etc. Each protocol has its own unique characteristics and advantages, but as a user who is planning to build a smart home system, I am a bit confused by the choice of these technologies. I'm particularly interested in Zigbee because I've heard it does some...
1
7608
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new presenter, Adolph Dupré who will be discussing some powerful techniques for using class modules. He will explain when you may want to use classes instead of User Defined Types (UDT). For example, to manage the data in unbound forms. Adolph will...
0
6844
by: conductexam | last post by:
I have .net C# application in which I am extracting data from word file and save it in database particularly. To store word all data as it is I am converting the whole word file firstly in HTML and then checking html paragraph one by one. At the time of converting from word file to html my equations which are in the word document file was convert into image. Globals.ThisAddIn.Application.ActiveDocument.Select();...
0
5636
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
1
4277
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated we have to send another system
2
3802
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.
3
2975
bsmnconsultancy
by: bsmnconsultancy | last post by:
In today's digital era, a well-designed website is crucial for businesses looking to succeed. Whether you're a small business owner or a large corporation in Toronto, having a strong online presence can significantly impact your brand's success. BSMN Consultancy, a leader in Website Development in Toronto offers valuable insights into creating effective websites that not only look great but also perform exceptionally well. In this comprehensive...

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.