[lazarus] cant find unit interfacebase
LeVA
leva at az.isten.hu
Fri Dec 19 06:19:57 EST 2003
Peter Vreman írta:
>>find the INTERFACEBASE unit, and when trying to compile to win32, it
>>says that:
>>TOutputFilter:
>>"/home/leva/FreePascal/lib/fpc/1.9.1/units/win32/rtl/wprt0.o: file not
>>recognized: File format not recognized"
>>
>>Is this beacause of the 1.9.1 fpc? With 1.0.10 it worked fine, but I
>>didn't try if it works with it right now, because I need the
>>-dUseFPImage option, and it doesn't work with older fpcs.
>>I'm getting the win32 units daily from here:
>>ftp://gd.tuwien.ac.at/languages/pascal/fpc/snapshot/v11/win32-i386/
>>
>>These are precompiled. I got a bad feeling about these units are not for
>>the 1.9.1 version of fpc. Am I right?
>
>
> You need a cross compiled as and ld with target that supports win32. You
> are now trying to use win32(=pecoff) .o files with the linux linker that
> only supports ELF .o files.
>
> Note: The compile itself can read .ppu files from multiple platforms, but
> the assembler and linker not. The assembler and linker are external
> applications from GNU binutils.
I have those utils, because previously I could make win32 binaries with
lazarus and fpc1.0.10. I have these binaries:
i686-pc-mingw32-addr2line i686-pc-mingw32-dlltool
i686-pc-mingw32-objcopy i686-pc-mingw32-size
i686-pc-mingw32-ar i686-pc-mingw32-dllwrap
i686-pc-mingw32-objdump i686-pc-mingw32-strings
i686-pc-mingw32-as i686-pc-mingw32-ld
i686-pc-mingw32-ranlib i686-pc-mingw32-strip
i686-pc-mingw32-c++filt i686-pc-mingw32-nm
i686-pc-mingw32-readelf i686-pc-mingw32-windres
and all of them are symlinked to my $PATH. The ld is linked as ldw, and
the as is linked as asw. Few days ago, with fpc1.0.10, and cvs lazarus,
I could build to all platforms with those tools.
Now I've upgraded to fpc1.9.1 (because I want to use the fpimage
feature), and now I have this problem: when I compile lazarus/lcl with
OS_TARGET=win32, it can not compile linux nor win32.
I'm not quite understand what you're saying unfortunately :) I'm not
that guru in this. Do I have to use the old 1.0.10fpc if I want to make
win32 binaries, or I can use 1.9.1 too? And if I can use the 1.9.1, do I
have to compile my own win32 units, or I can use these:
ftp://gd.tuwien.ac.at/languages/pascal/fpc/snapshot/v11/win32-i386/
Are these for fpc1.9.1? Or it doesn't matter? I can not compile my own
win32 units because of the following compilation errror:
(~/FreePascal/src/fpc)-$ make clean
(~/FreePascal/src/fpc)-$ make OS_TARGET=win32 all
...
....
.....
make[4]: Entering directory `/home/leva/FreePascal/src/fpc/rtl/win32'
as -o wprt0.o wprt0.as
wprt0.as: Assembler messages:
wprt0.as:29: Error: cannot represent relocation type BFD_RELOC_RVA
wprt0.as:31: Error: cannot represent relocation type BFD_RELOC_RVA
wprt0.as:32: Error: cannot represent relocation type BFD_RELOC_RVA
wprt0.as:36: Error: cannot represent relocation type BFD_RELOC_RVA
wprt0.as:45: Error: cannot represent relocation type BFD_RELOC_RVA
make[4]: *** [wprt0.o] Error 1
make[4]: Leaving directory `/home/leva/FreePascal/src/fpc/rtl/win32'
make[3]: *** [rtl] Error 2
make[3]: Leaving directory `/home/leva/FreePascal/src/fpc/compiler'
make[2]: *** [cycle] Error 2
make[2]: Leaving directory `/home/leva/FreePascal/src/fpc/compiler'
make[1]: *** [compiler_cycle] Error 2
make[1]: Leaving directory `/home/leva/FreePascal/src/fpc'
make: *** [build-stamp.win32] Error 2
What does this mean? I think that would be better, if I could use my own
compiled win32 units, instead of the precompiled ones. But how can I
compile them?
--
LeVA
More information about the Lazarus
mailing list