diff options
Diffstat (limited to 'README_d/README.cygwin-dynamic')
-rw-r--r-- | README_d/README.cygwin-dynamic | 88 |
1 files changed, 0 insertions, 88 deletions
diff --git a/README_d/README.cygwin-dynamic b/README_d/README.cygwin-dynamic deleted file mode 100644 index 948538fd..00000000 --- a/README_d/README.cygwin-dynamic +++ /dev/null @@ -1,88 +0,0 @@ -From: courierdavid@hotmail.com -Newsgroups: comp.lang.awk -Subject: Re: Compiling gawk extensions under Cygwin -Date: 14 Mar 2005 20:47:09 -0800 -Organization: http://groups.google.com -Lines: 67 -Message-ID: <1110862029.175727.109280@o13g2000cwo.googlegroups.com> -References: <1e4e8dbe.0501140813.18248833@posting.google.com> - <u62nb2-pro.ln1@news.heiming.de> -NNTP-Posting-Host: 194.237.142.24 -Mime-Version: 1.0 -Content-Type: text/plain; charset="iso-8859-1" -X-Trace: posting.google.com 1110862033 8921 127.0.0.1 (15 Mar 2005 04:47:13 GMT) -X-Complaints-To: groups-abuse@google.com -NNTP-Posting-Date: Tue, 15 Mar 2005 04:47:13 +0000 (UTC) -User-Agent: G2/0.2 -Complaints-To: groups-abuse@google.com -Injection-Info: o13g2000cwo.googlegroups.com; posting-host=194.237.142.24; - posting-account=Iz4C5wwAAABx1yG_ft8eEAI99Wu1Tku1 -Path: news.012.net.il!seanews2.seabone.net!newsfeed.albacom.net!news.mailgate.org!newsfeed.stueberl.de!proxad.net!64.233.160.134.MISMATCH!postnews.google.com!o13g2000cwo.googlegroups.com!not-for-mail -Xref: news.012.net.il comp.lang.awk:21835 - -Thanks for your help there Michael. I wouldn't have thought of that one -myself without your help :-) - -Anyway - for those who must stick with Cygwin here's a method that -works using the mingw32 makefiles and some modifications: - -Basically you need to extract all exportable symbol names from the -gawk.exe file into a text file and then create a dummy library file -which we can link against on Cygwin. You then throw the library file -away because in reality we use the gawk.exe file as the provider of -those functions. - -1. First grab the gawk source, e.g. gawk-3.1.4.tar.bz2 and decompress -it. -2. Move to the gawk-3.1.4 directory you just created. -3. cp pc/* . (copy the pc directory into the main one) -4. edit makefile - uncomment lines "DYN_FLAGS", "DYN_EXP", "DYN_OBJ" -and "DYN_MAKEXP=$(DMEmingw32) -5. make mingw32 (make a gawk.exe) -6. run "gcc -o gawk.exe array.o builtin.o eval.o field.o gawkmisc.o -io.o main.o ext.o msg.o node.o profile.o re.o version.o dlfcn.o -gawk.exp awkgram.o getid.o popen.o getopt.o getopt1.o dfa.o regex.o -random.o" (i.e. remove the -s from the compile command from the -makefile so the symbols are left in gawk.exe) - -now export all symbols from gawk.exe into foo.def so that we can put -these in our library -7. echo EXPORTS > foo.def -8. nm gawk.exe | grep -E ' [TBD] _' | sed 's/.* [TBD] _//' >> foo.def -9. cp foo.def gawkw32.def - -build the new library with all symbols included -10. make mingw32 - -Now you will see a file "libgawk.a" which you can link against to -create extensions. For example to build an extension called "file" run: - -gcc -shared -dll -DHAVE_CONFIG_H -I . extension/file.c -o file.dll -L . --lgawk - -Then you can load it in gawk using the expression: - -extension("./file.dll", "dlload"); - -You must use the gawk you compiled from source though. It won't work -with any other gawk unfortunately :-( But that's OK because the -stripped gawk is not too big in size. - -Cheers, -Dave. - -Michael Heiming wrote: -> In comp.lang.awk David Smith <courierdavid@hotmail.com>: -> > Has anyone managed to compile gawk extensions (such as "filefuncs") -> > under Cygwin? -> -> Solution is pretty simple, install a real OS, Linux/*BSD or any -> other unix and this and further problems won't happen. -> -> Good luck -> -> -- -> Michael Heiming (X-PGP-Sig > GPG-Key ID: EDD27B94) -> mail: echo zvpunry@urvzvat.qr | perl -pe 'y/a-z/n-za-m/' -> #bofh excuse 242: Software uses US measurements, but the OS -> is in metric... |