problems, beginning?

Posted on 2002-04-05
Last Modified: 2010-04-22
I've just started programming on Linux (Best Linux 2000) using C++ and have occured some problems which seem to be residing in the lib iostream. That the operator << wants a constant but when it gets one it complains about the length of it... I'm confused about this, since the code has worked on Windows XP with Dev-C++. Tried both make and gcc, make seems to not understand C++ files and gcc reports the error in iostream. Any ideas are highly appreciated, cause I'm not getting anywhere with this...
Question by:DeproG
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
LVL 51

Expert Comment

ID: 6921743
could you plese post the exact messages from gcc

Expert Comment

ID: 6922782
what do you mean by gcc? are you actually invoking gcc on c++ file or you refereing to gcc as the "gnu compiler collection"
check to see if you have a C++ compiler first?  
g++ -c test.cpp
if you have the C++ compiler what version are you running
"g++ -v" will do that for you.
I have done little with C++ on MSW using VC++ and there is NO difference between the iostream "library"

Author Comment

ID: 6922794
on g++ -v ut returns:
gcc version egcs-2.91.66 19990314/Linux (egcs-1.1.2 release)

It appears to compile and link correctly with the g++ command (sorry 'bout that), but what is this a.out for?
Containers & Docker to Create a Powerful Team

Containers are an incredibly powerful technology that can provide you and/or your engineering team with huge productivity gains. Using containers, you can deploy, back up, replicate, and move apps and their dependencies quickly and easily.


Expert Comment

ID: 6923123
a.out is the name of your executable.

If you want to specify a different name, say 'myprogram, you can do:

g++ test.cpp -o myprogram

Author Comment

ID: 6923136
uhh, call me stupid but I can't run the file... what should I do?
LVL 51

Expert Comment

ID: 6923150
what does following report:

    ldd yourfile

Accepted Solution

newmang earned 50 total points
ID: 6924341

I know this is obvious but if the executable is not in a directory on your path (echo $PATH to check) then you have to provide an explicit path when running the file.

For example you may need to type ./my_executable

Some people add the . directory on the end of theor path so the current directory is always in their path but this is a security exposure and should be avoided.

Cheers - Gavin

Author Comment

ID: 6925303
It worked when I used the ./my_executable... thanks :)

Expert Comment

ID: 6933523
Also, try 'man make', and find out what it is for.  For the most part, you wont want to invoke g++ directly, because linking everything together, and remembering which files need updating gets tedious.

From your original question, it seems that you think 'make' is a compiler, but it is actually a tool to aid you in compiling.

Author Comment

ID: 6936996
yeah, I've found it out now, and also how to get make using g++ for compilation, so it's working now... thanks for the help all of you :)

Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

The purpose of this article is to fix the unknown display problem in Linux Mint operating system. After installing the OS if you see Display monitor is not recognized then we can install "MESA" utilities to fix this problem or we can install additio…
The purpose of this article is to demonstrate how we can upgrade Python from version 2.7.6 to Python 2.7.10 on the Linux Mint operating system. I am using an Oracle Virtual Box where I have installed Linux Mint operating system version 17.2. Once yo…
There's a multitude of different network monitoring solutions out there, and you're probably wondering what makes NetCrunch so special. It's completely agentless, but does let you create an agent, if you desire. It offers powerful scalability …
NetCrunch network monitor is a highly extensive platform for network monitoring and alert generation. In this video you'll see a live demo of NetCrunch with most notable features explained in a walk-through manner. You'll also get to know the philos…

717 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question