Am Di, den 08.03.2005 schrieb Koenraad Lelong um 21:51: > Marc Santhoff wrote: > > Am Mo, den 07.03.2005 schrieb Koenraad Lelong um 22:36: > > > >>Hi, > >>I'm trying to make an interface to a kind of library, but I'm stuck. Any > >>pointers are welcome. > >>There is a C-header file, but this is common for a number of C-modules. > >>If I translate (h2pas) this file, and use it, the linker tries to find > >>an o-file, which does not exist. Any suggestions how to handle this ? > > > > > > You've got to compile the C files to .o (gcc -c thesource.c) and then > > link them into your pascal unit ({$L thesource.o}). This way it should > > work, I'm using some C stuff like that. > > > > HTH, > > Marc > Let me explain more : the header file is used in at least five > source-files, so compiling gives (at least) five .o files, but none with > the name of the header-file. > I was thinking that splitting that header-file in smaller files, each > for its own source could do the trick, but I'll have to check this > carefully. I had hoped for another suggestion. > Anyway, thanks for the response.
Hm, I don't know, how the translated header looks in pascal, but if it's a complete unit itself you could try to {$L xxx} all resulting .o files in that unit. So any declared function and type should be found ... the other thing would be, if the sources from the 1-wire stuff form a dynamic library, then you simply have to tell the linker to pull this lib (.so) in fpc -k-l<thelibraryname without the.so-ending> ... should work and does for me, too. Or it needs an additional "-k-L/the/path/to/1-wire-lib". The only thing in your sources is to put the translated header in the uses clause. HTH, Marc _______________________________________________ fpc-pascal maillist - fpc-pascal@lists.freepascal.org http://lists.freepascal.org/mailman/listinfo/fpc-pascal