This is the mail archive of the gdb@sourceware.cygnus.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: how to include iwidgets3.0


hua yan wrote:

>  In my C file there have include the following
> sentences:
> int Tcl_AppInit(Tcl_Interp *interp) {
> 
> 
>       if (Tcl_Init(interp) != TCL_OK)    {
>           return TCL_ERROR;
>         }
> 
>       if (Tk_Init(interp) != TCL_OK)     {
>           return TCL_ERROR;
>         }
> 
>       if (Itcl_Init(interp) != TCL_OK)   {
>            return TCL_ERROR;
>          }
> 
>       if (Itk_Init(interp) != TCL_OK)    {
>            return TCL_ERROR;
>          }
> 
>       return TCL_OK;
> }
> 
> In my main.tcl file, there have include the following
> sentences:
> package require Tcl 8.0
> package require Tk 8.0
> package require Itcl 3.0
> package require Itk 3.0
> package require Iwidgets 3.0

"package require" commands tell the tcl interpreter
to augment itself with the listed extension.  If the
extension is statically linked and initialized with
an explicit call (as in the C file above) a package
require should not be necessary - and vice versa.  I
think you're problem is doing both is causing the
program to try to dynamically link to something that
is already statically linked and then try to initialize
twice - and who knows what might happen with that?

-- 
 .-.    .-. .---. .---. .-..-. | Waco.  Ruby Ridge.  Now Diallo.
 | |__ / | \| |-< | |-<  >  /  | When will we learn that police
 `----'`-^-'`-'`-'`-'`-' `-'   | must be held accountable when
       My opinions only.       | they murder innocents?

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]