X-Spam-Check-By: sourceware.org From: "Harold Mills" To: Subject: dll link error using Cygwin gcc Date: Tue, 12 Jun 2007 11:47:21 -0400 Message-ID: <000001c7ad08$f72b9280$e582b780$@mills@novaspeech.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit X-Mailer: Microsoft Office Outlook 12.0 Content-Language: en-us Mailing-List: contact cygwin-help@cygwin.com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner@cygwin.com Mail-Followup-To: cygwin@cygwin.com Delivered-To: mailing list cygwin@cygwin.com Hello, I'm trying to use Cygwin's gcc to link a small test program (Hello.c) against a commercial DLL (ibmeci.lib), the source code for which I don't have. I followed the instructions at www.cygwin.com/cygwin-ug-net/dll.html to try to build a Cygwin-compatible import library: echo EXPORTS > ibmeci.def nm ibmeci.lib | grep ' T _' | sed 's/.* T _//' >> ibmeci.def dlltool --def ibmeci.def --dllname ibmeci.lib --output-lib ibmeci.a but when I try: gcc -I../include Hello.c ibmeci.a I get the ld error message "undefined reference to '_eciSpeakText'". The Hello.c program calls a function 'eciSpeakText'. What can I do to fix this? Thank you, Harold Mills P.S. In case they might help, here are Hello.c and ibmeci.def: <<<< Hello.c>>>> #include int main(int argc, char *argv[]) { eciSpeakText("Hello, world!", 0); return 0; } <<<>>> EXPORTS eciActivateFilter@8 eciAddText@8 eciClearErrors@4 eciClearInput@4 eciCopyVoice@12 eciDeactivateFilter@8 eciDelete@4 eciDeleteDict@8 eciDeleteFilter@8 eciDictFindFirst@20 eciDictFindFirstA@24 eciDictFindNext@20 eciDictFindNextA@24 eciDictLookup@16 eciDictLookupA@24 eciErrorMessage@8 eciGeneratePhonemes@12 eciGetAvailableLanguages@8 eciGetDefaultParam@4 eciGetDict@4 eciGetFilteredText@16 eciGetIndex@4 eciGetParam@8 eciGetVoiceName@12 eciGetVoiceParam@12 eciInsertIndex@8 eciIsBeingReentered@4 eciLoadDict@16 eciNew@0 eciNewDict@4 eciNewEx@4 eciNewFilter@12 eciPause@8 eciProgStatus@4 eciRegisterCallback@12 eciRegisterVoice@16 eciReset@4 eciSaveDict@16 eciSetDefaultParam@8 eciSetDict@8 eciSetFilter@8 eciSetOutputBuffer@12 eciSetOutputDevice@8 eciSetOutputFilename@8 eciSetParam@12 eciSetVoiceName@12 eciSetVoiceParam@16 eciSpeakText@8 eciSpeakTextEx@12 eciSpeaking@4 eciStop@4 eciSynchronize@4 eciSynthesize@4 eciSynthesizeFile@8 eciTestPhrase@4 eciUnregisterVoice@16 eciUpdateDict@20 eciUpdateDictA@24 eciUpdateFilter@16 eciVersion@4 -- Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple Problem reports: http://cygwin.com/problems.html Documentation: http://cygwin.com/docs.html FAQ: http://cygwin.com/faq/