From: marcus AT bighorn DOT dr DOT lucent DOT com (139a80000-HallMDR313237x10) Subject: Re: Runtime error: Entry point not found 5 Sep 1998 02:20:09 -0700 Message-ID: <199809022055.OAA15147.cygnus.gnu-win32@chorus.dr.lucent.com> Reply-To: "139a80000-HallM(DR3132)37x10" Content-Type: text To: gnu-win32 AT cygnus DOT com, afc AT teri DOT superlink DOT net Augustine Cano writes: > After finally solving all the compile and link problems, I now encounter > the following error popup at runtime. > > The procedure entry point could not > be located in the dynamic link library SMAPI.dll This is, I am sure, because the import table for your process is not sane. The system is looking for garbage names (something that gives the thick vertical bar character) and they obviously cannout be found. > This minimal program was compiled with cygwin b19 and uses, as can be > seen from above, the smapi.lib (explicitely included in the makefile) > and SMAPI.dll from the IBM ViaVoice speech recognition product. > There are many link warnigs like this And the smapi.lib was produced by MSVC++ (or something else that works to that standard)? That is the problem. > /Cygnus/B19/H-i386-cygwin32/i386-cygwin32/bin/ld.exe: /ViaVoice/lib/smapi.lib\ > (SMAPI.dll): warning: ignoring duplacate section `.idata$5' This confirms it. The .idata$5 (and other .idata$* segments) perform a delicate dance to build the import table during linking. The conventions used by Microsoft and Gnuwin32 are different, and unfortunately, do not interoperate. It is possible to build a "smapi.a" file with dlltool that will work with gnuwin32, but I don't offhand recall how. Perhaps you can find it by searching the archive for this topic. marcus hall - For help on using this list (especially unsubscribing), send a message to "gnu-win32-request AT cygnus DOT com" with one line of text: "help".