This is the mail archive of the
gcc-help@gcc.gnu.org
mailing list for the GCC project.
Re: [SCALUG] Re: c++ question
My thanks to those who responded to my question -- I really appreciate
the help.
However, my problem still remains.
Since I received multiple suggestions and I didn't want to discount any,
I created two different source files, "hello0.cpp" and "hello1.cpp"
(sources files are attached). I then created "Makefile[123]" for
compiling and linking "hello0.cpp" and "Makefile[456]" for compiling and
linking "hello1.cpp" (files are attached).
I executed each "Makefile" in turn, the results of which are in the
corresponding "make?.txt" files.
As you can see, when I used "namespace std" I still received results
that seemed to indicate that the appropriate link library was not
included. When I used "std::cout" the results indicated that "cout" was
not declared.
While I was writing this, another thought occured to me, so I created
"hello2.cpp" and "Makefile7", the results of which are in "make7.txt".
Still no joy.
I know I've got to be missing something, but I'm still at a loss for
what it might be.
Thanks again.
LLeweLLyn Reese wrote:
520075708323-0001@t-online.de (Alexander Helm) writes:
Hi John,
John Burski wrote:
[...]
// File: hello.cpp
#include <iostream>
using namespace std;
Do you really want to bring in everything in namespace std? Like
'count' and 'y1'? I don't think so.
using std::cout;
will bring in only cout. It's better to use individual using statements.
int main() {
cout << "Hello, World\n";
}
[...]
If you add the above line everything should do fine (alternativly you
can use std::cout instead of cout)
[...]
INCLUDE = /usr/include/g++-3
LIBES = -lstdc++-3-libc6.2-2-2.10.0
hello: hello.o
g++ -o hello hello.o $(LIBES)
hello.o: hello.cpp
g++ -c -I$(INCLUDE) hello.cpp
I would urge you not to include system-libraries this way, it makes
your source less portable.
CU
Alexander
_______________________________________________
scalug-list mailing list
scalug-list@mn-linux.org
https://mailman.real-time.com/mailman/listinfo/scalug-list
.
--
John Burski
@HOME S.I.M.U. (Well, sometimes I am :) )
... and still searching for the cheese!
// File: hello.cpp
#include <iostream>
using namespace std;
int main()
{
cout << "Hello, World\n";
}
// File: hello.cpp
#include <iostream>
using std::cout;
int main()
{
cout << "Hello, World\n";
}
INCLUDE = /usr/include/g++-3
LIBES = -lgcc
hello0: hello0.o
g++ -o hello0 hello0.o $(LIBES)
hello0.o: hello0.cpp
g++ -c -I$(INCLUDE) hello0.cpp
INCLUDE = /usr/include/g++-3
LIBES = -lstdc++
hello0: hello0.o
g++ -o hello0 hello0.o $(LIBES)
hello0.o: hello0.cpp
g++ -c -I$(INCLUDE) hello0.cpp
INCLUDE = /usr/include/g++-3
LIBES = -lstdc++ -lgcc
hello0: hello0.o
g++ -o hello0 hello0.o $(LIBES)
hello0.o: hello0.cpp
g++ -c -I$(INCLUDE) hello0.cpp
INCLUDE = /usr/include/g++-3
LIBES = -lgcc
hello1: hello1.o
g++ -o hello1 hello1.o $(LIBES)
hello1.o: hello1.cpp
g++ -c -I$(INCLUDE) hello1.cpp
INCLUDE = /usr/include/g++-3
LIBES = -lstdc++
hello1: hello1.o
g++ -o hello1 hello1.o $(LIBES)
hello1.o: hello1.cpp
g++ -c -I$(INCLUDE) hello1.cpp
INCLUDE = /usr/include/g++-3
LIBES = -lstdc++ -lgcc
hello1: hello1.o
g++ -o hello1 hello1.o $(LIBES)
hello1.o: hello1.cpp
g++ -c -I$(INCLUDE) hello1.cpp
Script started on Thu Dec 26 09:18:00 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile1
[jburski@natasha c++]$ make -f Makefile1
g++ -o hello0 hello0.o -lgcc
hello0.o: In function `main':
hello0.o(.text+0x19): undefined reference to `cout'
hello0.o(.text+0x1e): undefined reference to `ostream::operator<<(char const*)'
collect2: ld returned 1 exit status
make: *** [hello0] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:18:22 2002
Script started on Thu Dec 26 09:18:48 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile1
[jburski@natasha c++]$ make -f Makefile1
g++ -c -I/usr/include/g++-3 hello0.cpp
g++ -o hello0 hello0.o -lgcc
hello0.o: In function `main':
hello0.o(.text+0x19): undefined reference to `cout'
hello0.o(.text+0x1e): undefined reference to `ostream::operator<<(char const*)'
collect2: ld returned 1 exit status
make: *** [hello0] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:19:07 2002
Script started on Thu Dec 26 09:19:29 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile2
[jburski@natasha c++]$ make -f Makefile2
g++ -c -I/usr/include/g++-3 hello0.cpp
g++ -o hello0 hello0.o -lstdc++
hello0.o: In function `main':
hello0.o(.text+0x19): undefined reference to `cout'
hello0.o(.text+0x1e): undefined reference to `ostream::operator<<(char const*)'
collect2: ld returned 1 exit status
make: *** [hello0] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:19:45 2002
Script started on Thu Dec 26 09:19:58 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ s
[jburski@natasha c++]$ s
[jburski@natasha c++]$ sc
[jburski@natasha c++]$ sc
[jburski@natasha c++]$ scr
[jburski@natasha c++]$ scr
[jburski@natasha c++]$ scri
[jburski@natasha c++]$ scri
[jburski@natasha c++]$ scrip
[jburski@natasha c++]$ scrip
[jburski@natasha c++]$ script
[jburski@natasha c++]$ script
[jburski@natasha c++]$ scrip[K
[jburski@natasha c++]$ scrip
[jburski@natasha c++]$ scri[K
[jburski@natasha c++]$ scri
[jburski@natasha c++]$ scr[K
[jburski@natasha c++]$ scr
[jburski@natasha c++]$ sc[K
[jburski@natasha c++]$ sc
[jburski@natasha c++]$ s[K
[jburski@natasha c++]$ s
[jburski@natasha c++]$ [K
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile3
[jburski@natasha c++]$ make -f Makefile3
g++ -c -I/usr/include/g++-3 hello0.cpp
g++ -o hello0 hello0.o -lstdc++ -lgcc
hello0.o: In function `main':
hello0.o(.text+0x19): undefined reference to `cout'
hello0.o(.text+0x1e): undefined reference to `ostream::operator<<(char const*)'
collect2: ld returned 1 exit status
make: *** [hello0] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:20:33 2002
Script started on Thu Dec 26 09:21:30 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile4
[jburski@natasha c++]$ make -f Makefile4
g++ -c -I/usr/include/g++-3 hello1.cpp
hello1.cpp:4: `cout' not declared
make: *** [hello1.o] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:22:07 2002
Script started on Thu Dec 26 09:23:26 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile5
[jburski@natasha c++]$ make -f Makefile5
g++ -c -I/usr/include/g++-3 hello1.cpp
hello1.cpp:4: `cout' not declared
make: *** [hello1.o] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:23:55 2002
Script started on Thu Dec 26 09:24:37 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile6
[jburski@natasha c++]$ make -f Makefile6
g++ -c -I/usr/include/g++-3 hello1.cpp
hello1.cpp:4: `cout' not declared
make: *** [hello1.o] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:24:46 2002
// File: hello.cpp
#include <iostream>
int main()
{
std::cout << "Hello, World\n";
}
INCLUDE = /usr/include/g++-3
LIBES = -lstdc++ -lgcc
hello2: hello2.o
g++ -o hello2 hello2.o $(LIBES)
hello2.o: hello2.cpp
g++ -c -I$(INCLUDE) hello2.cpp
Script started on Thu Dec 26 09:45:30 2002
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$
[jburski@natasha c++]$ m
[jburski@natasha c++]$ m
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ ma
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ mak
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f M
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Ma
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Mak
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Make
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makef
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefi
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefil
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile
[jburski@natasha c++]$ make -f Makefile7
[jburski@natasha c++]$ make -f Makefile7
g++ -c -I/usr/include/g++-3 hello2.cpp
hello2.cpp: In function `int main()':
hello2.cpp:7: `cout' undeclared in namespace `std'
make: *** [hello2.o] Error 1
]0;jburski@natasha:~/toolkit/postgresql/c++
[jburski@natasha c++]$
[jburski@natasha c++]$ exit
Script done on Thu Dec 26 09:45:40 2002