Hello,<div>I'm going to start a new program in Lazarus based on Win32, Linux and Mac OSX. I'm making some previous test and I've found a problem. I write a DLL project and a Executable project. Executable project calls a very simple function in DLL. I cannot compile Exe project because a LD error in Mac. DLL (dylib) project compiles OK and with NM and OTOOL I can see function in OK.</div>
<div><br></div><div>If I include in Exe project:</div><div><br></div><div>function DllMessage(): Longint; stdcall; external 'project1';</div><div><br></div><div>and:</div><div><br></div><div>x:= DllMessage();</div>
<div><br></div><div>I get:</div><div><br></div><div><div>ld: symbol(s) not found for architecture i386</div><div>Error: Error while linking</div></div><div><br></div><div>at compiling.</div><div><br></div><div>I've tried with GetProcedureAddress (adapting code) and LoadLibrary loads the library but GetProcedureAddress returns nil.</div>
<div><br></div><div>Function in DLL is very simple:</div><div><br></div><div><div>function DllMessage(): Integer;</div><div>begin</div><div> Result:= 1;</div><div>end;  </div></div><div><br></div><div>I would like someone could help me.</div>
<div><br></div><div>Thanks a lot.</div><div>Best regards,</div><div>Juan.</div>