Thank you Rich.  I've figured out how to sftp to the machine so I can update you with the output error.

The command used was make

Here is the output:

c++ -g -O2 -o example_from_manual example_from_manual.o -L../../client_libs/c++ -lplayerclient -lpthread -ldl -lnsl example_from_manual.o: In function `main': /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:5: undefined reference to `PlayerClient::PlayerClient[in-charge](char const*, int)' example_from_manual.o: In function `main': /home/mbrewer/player-src-1.3.2/examples/c++/../../client_libs/c++/playerclient.h:1295: undefined reference to `ClientProxy::ClientProxy[not-in-charge](PlayerClient*, unsigned short, unsigned short, unsigned char)' /home/mbrewer/player-src-1.3.2/examples/c++/../../client_libs/c++/playerclient.h:1295: undefined reference to `vtable for SonarProxy' /home/mbrewer/player-src-1.3.2/examples/c++/../../client_libs/c++/playerclient.h:1108: undefined reference to `ClientProxy::ClientProxy[not-in-charge](PlayerClient*, unsigned short, unsigned short, unsigned char)' /home/mbrewer/player-src-1.3.2/examples/c++/../../client_libs/c++/playerclient.h:1108: undefined reference to `vtable for PositionProxy' example_from_manual.o: In function `main': /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:13: undefined reference to `PlayerClient::Read()' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:16: undefined reference to `SonarProxy::Print()' example_from_manual.o: In function `main': /home/mbrewer/player-src-1.3.2/examples/c++/../../client_libs/c++/playerclient.h:1129: undefined reference to `PositionProxy::SetSpeed(int, int, int)' example_from_manual.o: In function `main': /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:11: undefined reference to `ClientProxy::~ClientProxy [not-in-charge]()' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:11: undefined reference to `vtable for SonarProxy' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:11: undefined reference to `ClientProxy::~ClientProxy [not-in-charge]()' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:11: undefined reference to `PlayerClient::~PlayerClient [in-charge]()' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:7: undefined reference to `ClientProxy::~ClientProxy [not-in-charge]()' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:6: undefined reference to `vtable for SonarProxy' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:6: undefined reference to `ClientProxy::~ClientProxy [not-in-charge]()' /home/mbrewer/player-src-1.3.2/examples/c++/example_from_manual.cc:6: undefined reference to `PlayerClient::~PlayerClient [in-charge]()' collect2: ld returned 1 exit status make: *** [example_from_manual] Error 1

Any possible insights from these errors?

Much appreciated,
Ryan

On 02/28/2012 09:33 PM, Ryan Baldwin wrote:
> Dear group,
>
> I am working on an old ATRV-Mini robot from around 2000 with its 
> original OS and hardware.
> I'm fairly new to c/c++ and the linux environment.
> I can't seem to compile any programs without an error, even copying an 
> existing working program such as: sonarobstacleavoid.cc, goto.cc, or 
> randomwalk.cc to a new file test1.cc and then trying to compile gives 
> me errors.
>
> Here is some version information:
>
> OS: Red Hat Linux 7.3
> kernel: 2.4.18-3
> player version: ** Player v1.4rc1 **
> gcc version: 2.96 20000731 (Red Hat Linux 7.3 2.96-110)
>
> In the path /home/mbrewer/testplayer/examples/c++/
>
> When I run this command, which outputs a little more than an entire 
> screen of errors which I can't copy to here easily since the ethernet 
> isn't working either at the moment, but it has a lot of undefined 
> references:
>
> gcc -o test2 test2.cc
>
> Is there anything about this command that seems inherently wrong? For 
> trying to compile on such an old system for player.  I can't seem to 
> find much about compiling player client programs on old redhat systems.
>
> This is my first time posting to a mailing list, if you need anymore 
> information or this is the incorrect way to go about asking this 
> question, please do let me know.
>
> Appreciated,
> Ryan 

An undefined reference happens when you compile against a header, but 
don't provide the associated library which provides all of the functions 
defined in the header.  With modern versions of Player, you'd have to 
add "-lplayercore" to the gcc command line. I'm not sure if the 
libraries are named the same in versions as old as 1.4.  You can look 
through /usr/lib (or /usr/local/lib) to find the player related 
libraries (probably named libplayer*), and then link them all on the gcc 
command line.

In general, it's helpful to include a copy of any error text you 
encounter when seeking help.

Rich