Re: Compilation problems for a new board




Hi Mau

If you are missing libpm.a, it probably means that there was a fatal error 
when the rcslib stuff was compiled. Assuming the source were installed from a 
BDI CD, there should be a shell script in /usr/local called compile - Run 
this first to be assured that ALL the libs are built along with EMC. The 
headers that you mentioned should be copied in to the correct directories 
automatically. After you have run the compile script, it will be safe to do a 
make on your new sources, but I'd use :-

make clean all PLAT=linux_rtai
make clean all PLAT=rtai

To be sure of building and linking correctly, do this in emc/src

The first thing to do when you come to write your driver is to print out the 
emcmot/Makefile - At the top of the file is a number of file lists (SRCS, 
HEADERS, BINS, and OBJS) surrounded by ifeq statements. Take a highlighter 
pen and circle the ones under BUILDREALTIMEONLY, watch for the ifneq 
statements, and you will build a picture of which sources and binaries are 
used for realtime and nonrealtime builds. The seamingly chaotic assortment of 
$9DEV_LIB_DIR)etc.o: etc.c \ can be glossed over to start with - Unless the 
resulting binary is listed under the precceding BIN= list, it doesn't get 
compiled.

Regards, Paul.



On Friday 17 May 2002 10:40, Maurizio Ferraris wrote:
> I have just installed the BDI, and I am trying to write the software
> interface for a different board. I have exchanged few mails with Ray, then
> following his suggestions, I decided to go public to the list.
> As the first step of this process I tryed to compile without any changes in
> order to be sure to have a working source tree.
> Since at the moment I am interested to the hardware interface, I decided to
> compile the emcmot directory only, changing to that directory ad issuing a
> make as in:
> cd /usr/local/emc/src/emcmot
> make PLAT=rtai


> After this problem is fixed I will try to add a couple of files for my
> board (i.e. Ax4.c and Ax4.h) and I will have to add them to the makefile. I
> have a general understanding of how makefiles work and I am able to make
> small changes, but this particular makefile, have too many references and
> different cases and environment varibles set idontknowwhere ... that I find
> it difficult to follow. Can somebody give me some hint where to do the
> smallest changes in order to add a new board to the pack? And this is the
> second question.




Date Index | Thread Index | Back to archive index | Back to Mailing List Page

Problems or questions? Contact