[fpc-pascal] Linking object file

md at rpzdesign.com md at rpzdesign.com
Thu Mar 20 00:10:35 CET 2014


Darius:

I just went through this and it is fresh in my mind, but with 32 bit code.

I used CodeBlocks with MingGW to compile the c source code to a static 
library with an mylib.A suffix.

I am pretty sure you cannot use MSVC to compile the c code.

Then use the {$LINKLIB path/mylib.a} directive to link.

You do not need to use individual object files since many times there 
are many that are combined into a single static library.

When you use codeblocks, you will need to make an adjustment to produce 
64 bit binary.

It is just easier to stay with 32 bit if you can.

Let us know how it turns out in 64 bit {$LINKLIB xxxx}

Cheers,

md


On 3/19/2014 6:49 PM, Darius Blaszyk wrote:
>
> Hi,
>
> I was wondering if it's possible to link FPC object files by using the 
> $Link directive? At least I have troubles in getting this to work and 
> therefore I'm asking here. Please consider the minimal example I have 
> attached to this email.
>
> When linking the object file that implements the test_proc procedure I 
> get the following compiler output:
>
> Hint: Start of reading config file 
> C:\lazarus\fpc\2.6.2\bin\x86_64-win64\fpc.cfg
> Hint: End of reading config file 
> C:\lazarus\fpc\2.6.2\bin\x86_64-win64\fpc.cfg
> Free Pascal Compiler version 2.6.2 [2014/02/28] for x86_64
> Copyright (c) 1993-2012 by Florian Klaempfl and others
> Target OS: Win64 for x64
> Compiling test.pp
> Linking test.exe
> test.pp(8,1) Error: Undefined symbol: TEST_INT_TEST_PROC
> test.pp(8,1) Fatal: There were 1 errors compiling module, stopping
>
> What is needed in the test_impl.pas file so the linker can find the 
> implemented function? Do I need to create a library and export the 
> function perhaps?
>
> Regards, Darius Blaszyk
>
>
>
> _______________________________________________
> fpc-pascal maillist  -  fpc-pascal at lists.freepascal.org
> http://lists.freepascal.org/cgi-bin/mailman/listinfo/fpc-pascal

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freepascal.org/pipermail/fpc-pascal/attachments/20140319/6712a53d/attachment.html>


More information about the fpc-pascal mailing list