> On Windows, using FPC 2.7.1, I use: > make crossinstall OS_TARGET=win64 CPU_TARGET=x86_64 > > But this not works. I always got the error: > ================================================ > W:/md/dev/freepascal/compiler/2.7.1/compiler/ppc.exe fpmake.pp - > FuW:/md/dev/fre > epascal/compiler/2.7.1/packages/fpmkunit/units_bs/i386-win32 - > FuW:/md/dev/freepa > scal/compiler/2.7.1/rtl/units/i386-win32 > Fatal: Can't find unit process used by fpmkunit > Fatal: Compilation aborted > make[3]: *** [fpmake] Error 1 > make[3]: Leaving directory `W:/md/dev/freepascal/compiler/2.7.1/packages' > make[2]: *** [packages_all] Error 2 > make[2]: Leaving directory `W:/md/dev/freepascal/compiler/2.7.1' > make[1]: *** [build-stamp.x86_64-win64] Error 2 > make[1]: Leaving directory `W:/md/dev/freepascal/compiler/2.7.1' > make: *** [crossinstall] Error 2 > ================================================
Starting with fpc-2.6.2 release, this completes successfully for me: make distclean crossinstall OS_TARGET=win64 CPU_TARGET=x86_64 PREFIX=e:/pas/fpc-2.7.1 Stating with a 2.7.1 win32 binary: E:\pas>fpc -iVDW 2.7.1 2013/03/28 2.7.1-r1:24029M (Meaning that I do have some local modifications, but I doubt those interfere with your problem...) I get the same success... Did you use a distclean before the crossinstall? win32 fpmake.exe generated for native win32 target might be a problem... I checked, and indeed, if you just do a native install followed by a crossinstall without a distclean in between, you do get E:/pas/trunk/fpcsrc/compiler/ppc.exe src/fpmkunit.pp -FuE:/pas/trunk/fpcsrc/rtl/units/i386-win32 -FuE:/pas/trunk/fpcsrc /packages/paszlib/units/i386-win32 -FuE:/pas/trunk/fpcsrc/packages/fcl-process/units/i386-win32 -FuE:/pas/trunk/fpcsrc/p ackages/hash/units/i386-win32 -FUunits_bs/i386-win32 -Fu../paszlib/src -Fu../hash/src -Fi../paszlib/src -Fi../fcl-proce ss/src/win -Fu../fcl-process/src -Fi../fcl-process/src/win32 -Fi../fcl-process/src/dummy make[4]: Leaving directory `E:/pas/trunk/fpcsrc/packages/fpmkunit' E:/pas/trunk/fpcsrc/compiler/ppc.exe fpmake.pp -FuE:/pas/trunk/fpcsrc/packages/fpmkunit/units_bs/i386-win32 -FuE:/pas/t runk/fpcsrc/rtl/units/i386-win32 Fatal: Can't find unit process used by fpmkunit Fatal: Compilation aborted make[3]: *** [fpmake] Error 1 So the solution to your problem really is to run a 'distclean' make target before the 'crossinstall' target. Pierre Muller _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal