------- Comment #2 from rob1weld at aol dot com 2007-01-19 12:48 ------- Thank you for your assistance. I've looked into this and found the new names. If someone wished to either fix or delete (hopefully not) the libobjc.dll support I'd consider this resolved (for me) and this complaint could be closed.
This is the suggestion I came up with. Files gcc-4_2-branch/libobjc/hash.c and gcc-4_2-branch/libobjc/objc/hash.h define: objc_hash_new(), objc_hash_delete(), objc_hash_add(), objc_hash_remove(), objc_hash_next(), objc_hash_value_for_key(), and objc_hash_is_key_in_hash() . The file gcc-4_2-branch/libobjc/libobjc.def defines both the 4.1.1 versions (which do not exist) and the 4.2.0 versions (same name as 4.1.1 version with "objc_" prepended) of these functions. Running the make as described above creates the file (depending on your build directory and target name) /gcc-4_2-branch-build/i686-pc-cygwin/libobjc/libobjc.exp which contains the 4.1.1 and 4.2.0. named functions. One of the authors mentions not having a Windows system to test the above on - I hope I have helped. Based on the above it is my suggestion to fix this bug by doing the following: 1) delete all 4.1.1 references of the function names from gcc-4_2-branch/libobjc/libobjc.def . 2) Make the above changes to the makefile AND, in addition, delete or rename the file /gcc-4_2-branch-build/i686-pc-cygwin/libobjc/libobjc.a (Please Note: I do NOT say to delete or rename /gcc-4_2-branch-build/i686-pc-cygwin/libobjc/.libs/libobjc.a , only the copy). It is neccesary to copy (and not move) libobjc.a from the ".libs" directory because the makefile (as it was written) uses the file for input and eventually overwrites it as the output - but the file size is different from the input. For the rest of gcc's makefiles and tests to operate the ".a" file should be in the ".libs" directory. 3) Consider creating ".dll" (and ".dll.a") files in addition to the ".a" file for _every_ library. I am using "--enable-shared --enable-static" when running configure but I don't get any ".so" or ".dll" files. The configure script rejects "--enable-shared" for Cygwin. I need to look into that more before filing a report on that. Both the sources for Mplayer-1.0rc1 and ffmpeg are GPL and show great examples of using ".dll" files under Cygwin - in the event someone needs somes code to refer to. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30445