While working on the codes downloaded from that page, I found errors while compiling it. Maybe Rob leave this error for us to learn... Anyway, don't worry mates, I'll share the answer... heheheh...
Here's the error on my first try...
dakc@dakc-laptop:~/C-codes/socketserver$ make
g++ -c -o ServerSocket.o ServerSocket.cpp
g++ -c -o Socket.o Socket.cpp
Socket.cpp: In member function ‘int Socket::recv(std::string&) const’:
Socket.cpp:135: error: ‘cout’ is not a member of ‘std’
make: *** [Socket.o] Error 1
dakc@dakc-laptop:~/C-codes/socketserver$
g++ returns this error not because there is no 'cout' in std. But, because we didn't properly declare the std to use 'cout'. In order to fix this, I just add this line...#include
Then, here's the second 'make' trial...
daskc@dakc-laptop:~/C-codes/socketserver$ make
g++ -c -o Socket.o Socket.cpp
g++ -c -o simple_server_main.o simple_server_main.cpp
simple_server_main.cpp: In function ‘int main(int, int*)’:
simple_server_main.cpp:7: error: ‘cout’ is not a member of ‘std’
simple_server_main.cpp:35: error: ‘cout’ is not a member of ‘std’
make: *** [simple_server_main.o] Error 1
dakc@dakc-laptop:~/C-codes/socketserver$
Ups... still got the error... but this time, it is in simple_server_main.cpp... No problem, let's do the same on this file too... save them and here is the third 'make' trial...
dakc@dakc-laptop:~/C-codes/socketserver$ make
g++ -c -o simple_server_main.o simple_server_main.cpp
g++ -o simple_server ServerSocket.o Socket.o simple_server_main.o
g++ -c -o ClientSocket.o ClientSocket.cpp
g++ -c -o simple_client_main.o simple_client_main.cpp
g++ -o simple_client ClientSocket.o Socket.o simple_client_main.o
dakc@dakc-laptop:~/C-codes/socketserver$
SUCCESS!!! without errors anymore... And now, time for testing... open up a terminal and you will see this output when you type ./simple_server
dakc@dakc-laptop:~/C-codes/socketserver$ ./simple_server
running....
Then open another terminal and run the simple client... I run it 3 times...
dakc@dakc-laptop:~/C-codes/socketserver$ ./simple_client
We received this response from the server:
"Test message."
dakc@dakc-laptop:~/C-codes/socketserver$ ./simple_client
We received this response from the server:
"Test message."
dakc@dakc-laptop:~/C-codes/socketserver$ ./simple_client
We received this response from the server:
"Test message."
dakc@dakc-laptop:~/C-codes/socketserver$
Now, I can start modifying the code to learn how it really works. . You can simply untar it by issuing this command in your newly created project folder...
prompt:~$ tar -zxvf simple-socket.tgz
Programming is fun! give it a try if you haven't tried once! Good luck!!
0 comments:
Post a Comment