I have managed to solve the mystery of the undefined symbols, which previously caused the final link of lyx.exe to fail. What I needed to do was to remove the '#pragma interface" and "#pragma implementation" directives from the source code. The compilation and link then completed successfully, and the resulting binary worked! There was a crash (with an obscure 'BadValue' message) when opening the User Guide, but that was fixed by installing the appropriate math fonts and adding the font directory to the font path (using xset +fp <dir>).
I used the following script to remove all #pragma statements from all files in the src directory:
#!/bin/csh cd src set filelist=`find -type f` foreach filename ($filelist) echo $filename # Comment out all lines containing '#pragma' statements: sed --in-place -e '/#.*pragma/ s/^/\/\/ /' $filename end
After running the script from the lyx-1.3.3 directory, the build was performed as described in the INSTALL file.
It appears that gcc mishandles some #pragma statements on some platforms. That may help to explain build problems on a variety of systems, such as MacOSX.
Milton.