delorie.com/archives/browse.cgi   search  
Mail Archives: cygwin/2007/06/12/11:47:56

X-Spam-Check-By: sourceware.org
From: "Harold Mills" <harold DOT mills AT novaspeech DOT com>
To: <cygwin AT cygwin DOT com>
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
X-Mailer: Microsoft Office Outlook 12.0
Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm
List-Id: <cygwin.cygwin.com>
List-Subscribe: <mailto:cygwin-subscribe AT cygwin DOT com>
List-Archive: <http://sourceware.org/ml/cygwin/>
List-Post: <mailto:cygwin AT cygwin DOT com>
List-Help: <mailto:cygwin-help AT cygwin DOT com>, <http://sourceware.org/ml/#faqs>
Sender: cygwin-owner AT cygwin DOT com
Mail-Followup-To: cygwin AT cygwin DOT com
Delivered-To: mailing list cygwin AT cygwin DOT 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 <eci.h>

int main(int argc, char *argv[]) {
   
    eciSpeakText("Hello, world!", 0);
   
    return 0;
   
}


<<<<ibmeci.def >>>>

EXPORTS
eciActivateFilter AT 8
eciAddText AT 8
eciClearErrors AT 4
eciClearInput AT 4
eciCopyVoice AT 12
eciDeactivateFilter AT 8
eciDelete AT 4
eciDeleteDict AT 8
eciDeleteFilter AT 8
eciDictFindFirst AT 20
eciDictFindFirstA AT 24
eciDictFindNext AT 20
eciDictFindNextA AT 24
eciDictLookup AT 16
eciDictLookupA AT 24
eciErrorMessage AT 8
eciGeneratePhonemes AT 12
eciGetAvailableLanguages AT 8
eciGetDefaultParam AT 4
eciGetDict AT 4
eciGetFilteredText AT 16
eciGetIndex AT 4
eciGetParam AT 8
eciGetVoiceName AT 12
eciGetVoiceParam AT 12
eciInsertIndex AT 8
eciIsBeingReentered AT 4
eciLoadDict AT 16
eciNew AT 0
eciNewDict AT 4
eciNewEx AT 4
eciNewFilter AT 12
eciPause AT 8
eciProgStatus AT 4
eciRegisterCallback AT 12
eciRegisterVoice AT 16
eciReset AT 4
eciSaveDict AT 16
eciSetDefaultParam AT 8
eciSetDict AT 8
eciSetFilter AT 8
eciSetOutputBuffer AT 12
eciSetOutputDevice AT 8
eciSetOutputFilename AT 8
eciSetParam AT 12
eciSetVoiceName AT 12
eciSetVoiceParam AT 16
eciSpeakText AT 8
eciSpeakTextEx AT 12
eciSpeaking AT 4
eciStop AT 4
eciSynchronize AT 4
eciSynthesize AT 4
eciSynthesizeFile AT 8
eciTestPhrase AT 4
eciUnregisterVoice AT 16
eciUpdateDict AT 20
eciUpdateDictA AT 24
eciUpdateFilter AT 16
eciVersion AT 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/

- Raw text -


  webmaster     delorie software   privacy  
  Copyright © 2019   by DJ Delorie     Updated Jul 2019