In our previous episode, Gennadiy Poryev said: > I've got two FPC versions installed on my Linux x64 box: 2.6.4 as a > bootstrap and 2.7.1 for building Lazarus. Both were installed through > 'make zipinstall' from svn and untaring to /usr, hence they reside under > /usr/lib64/fpc/2.6.4/ and /usr/lib64/fpc/2.7.1/ accordingly. The > switching is done by force-resymlinking /usr/bin/ppcx64 to the correct > ppcx64 in their corresponding locations so that /usr/bin/fpc may invoke > needed binary. Now Lazarus does not build, complaining about RegisterFCL > and I know this is because of missing fpc.cfg. > What is the proper way of generating fpc.cfg in such case? I'm > particularly concerned about how do define 'basepath'. I did that on > Windows easily since bin directory was also located under version > directory, which is not the case in Linux.
A solution for the ppc* binary is to make a symlink for one of the binaries (typically trunk) to ppx64-2.7.1, and to call "fpc" with -P2.7.1 This still assumes 2.6.x and 2.7.x can use the same "fpc" binaries, and is no solution for the rest. I don't know fpcmkcfg that well, but the idea is that all paths in fpc.cfg for this are done using $FPCVERSION for the versionnumber. I made the setup for cmdline use (not lazarus), and I use a small shellscript "fpcx" that adds the -P parameter, (fpc -P2.7.1 $*) and call fpcx if I want to compile with trunk. Generally I have projects that *must* use trunk, and the rest uses stable, so I've no need to clean my application dirs before switching, since I never do. _______________________________________________ fpc-devel maillist - [email protected] http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-devel
