From a668c520b2aa80aef8eb6c71c7507e48e111a2ae Mon Sep 17 00:00:00 2001 From: Eli Zaretskii Date: Mon, 6 May 2013 20:16:40 +0300 Subject: doc/make.texi (Loaded Object Example): Add a note about building shared objects on MS-Windows. --- doc/make.texi | 14 ++++++++++++++ 1 file changed, 14 insertions(+) (limited to 'doc') diff --git a/doc/make.texi b/doc/make.texi index a75cf4f..69de5b7 100644 --- a/doc/make.texi +++ b/doc/make.texi @@ -11221,6 +11221,20 @@ mk_temp.so: mk_temp.c @end group @end example +On MS-Windows, due to peculiarities of how shared objects are +produced, the compiler needs to scan the @dfn{import library} produced +when building @code{make}, typically called +@file{libgnumake-@var{version}.dll.a}, where @var{version} is the +version of the load object API. So the recipe to produce a shared +object will look on Windows like this (assuming the API version is 1): + +@example +@group +mk_temp.dll: mk_temp.c + $(CC) -shared -o $@ $< -lgnumake-1 +@end group +@end example + Now when you run @code{make} you'll see something like: @example -- cgit v1.2.3