...I tried to compile it with p2c (I typed make prepmxc), but got an error. I join the message of error.
cc globals.o mtx.o preamble.o lyrics.o analyze.o mtxline.o status.o uptext.o files.o notes.o prepmx.o cfuncs.o multfile.o utility.o control.o -o prepmx status.o(.text+0xbd4): In function `beginSlur': : undefined reference to `strpos2' status.o(.text+0xdc0): In function `endSlur': : undefined reference to `strpos2' collect2: ld returned 1 exit status make: *** [prepmxc] Erreur 1
This seems to be an incompatibility between p2c, Makefile and module cfuncs.c.
p2c procuces calls to function strpos2() when translating status.pas. This function is in libp2c.a. (Maybe an earlier version of p2c did not use this function or the Pascal code did not use a construction which gets translated to this function.)
When I try to link the program with -lp2c I get errors about multiple definition of PASCAL_MAIN, P_eof, _Escape, _EscIO and _EscIO2 which are defined in cfuncs.c and in libp2c.a.
I think either these functions should be removed from cfuncs.c and the program be linked with -lp2c or the missing function should be added to cfuncs.c and cfuncs.h.
I solved this on my system by using an additional file strpos2.c with the missing function which I created after looking at the source code of p2c.
#include <string.h>
int strpos2(char *s, char *pat, int pos)
{
char *cp, *cp2;
if (--pos < 0) return 0;
if(strlen(s) < pos) return 0;
cp = s + pos;
cp2=strstr(cp, pat);
if(cp2 == NULL) return 0;
return cp2-s+1;
}This function could be inserted into cfuncs.c and a prototype into cfuncs.h.
Bodo _______________________________________________ TeX-music mailing list [EMAIL PROTECTED] http://icking-music-archive.org/mailman/listinfo/tex-music

