public inbox for insight@sourceware.org
 help / color / mirror / Atom feed
* Insight 64bit windows version
@ 2012-03-07 16:01 Roland Schwingel
  2012-03-08 13:47 ` [SOLVED]: " Roland Schwingel
  0 siblings, 1 reply; 2+ messages in thread
From: Roland Schwingel @ 2012-03-07 16:01 UTC (permalink / raw)
  To: insight

Hi...

Has anyone already tried that too? Any experiences?

Since a few days I am trying to build an insight (based on gdb 7,4) for 
windows 64bit using mingw-w64 compilers.
I got already quite far, but not far enough.

I got a big problem in the beginning with the intree tcl/tk/itcl/itk 8.4 
based versions. They are IMHO way to old to work on 64bit windows. I 
looked at tcl 8.5 which is already way better in regard of win64bit but 
still not as good as win64 friendly as tcl/tk 8.6beta.

So I updated my system to the current tcl/tk 8.6 source from the tcl/tk 
repos. When running tk's 64bit wish on windows 7 64 I can run the tk 
supplied tests just fine. I upgraded itcl/itk also to the most recent 
versions (4.0beta) to match the tcl/tk versions. I am using iwidgets 4.0.2.

I also had to give some love to libgui in regard of windows 64bit. It 
hasn't got any attention for around a decade so it just refused to build 
for win64.

So I can link insight now. For regressions reasons I am also compiling 
insight for windows 32 bit and linux 32 bit from the very same source 
with the very same compilers and the very same settings. On all 
platforms I do get the very same result. Insight bails out with some tcl 
errors on startup. I am just starting out to learn tcl to get insight 
going but maybe someone can give me a hint whats going wrong here. My 
tcl knowledge is still VERY MUCH limited.

Error message appearing in a window:

invalid command name "::.srcwin0.srcwin"
invalid command name "::.srcwin0.srcwin"
     while executing
"::.srcwin0.srcwin sizeWinByChild toolbar"
     ("after" script)

When setting GDBTK_DEBUG to 1 my insight writtes an insight.log. I have 
cutted out the relevant pieces:
I GDBWin my {}
I TopLevelWin my .srcwin0.srcwin
I SrcWin my {}
I SrcBar my {No plugins configured, go remove the PlugIn menu...}
I GDBMenuBar .srcwin0.srcwin.container.pane0.childsite.con.menubar 
{Enable list is: Color normal}
I SrcBar my normal
I SrcBar my {2 - Browsing=0}
I GDBMenuBar .srcwin0.srcwin.container.pane0.childsite.con.menubar 
{Enable list is: Control disabled  Trace disabled  Other normal  Attach 
normal  Detach disabled }
I GDBToolBar .srcwin0.srcwin.container.pane0.childsite.con.toolbar 
{Enable list is: Control disabled  Trace disabled  Other normal  Attach 
normal  Detach disabled }
E SrcWin my _build_win\ returned:\ can't\ use\ empty\ string\ as\ 
operand\ of\ \"!\"\n\ \ \ \ while\ executing\n\"if\ \{!\$Tracing\}\ 
\{\n\ \ \ \ \ \ #\ In\ source-only\ mode,\ disable\ these\ buttons.\ \ 
Otherwise,\ enable\n\ \ \ \ \ \ #\ them.\n\ \ \ \ \ \ if\ 
\{\$displaymode\ ==\ \"SOURCE\"\}\ \{\n\tset\ state...\"\n\ \ \ \ 
(object\ \"::.srcwin0.srcwin.container.pane0.childsite.con\"\ method\ 
\"::SrcBar::_set_stepi\"\ body\ line\ 4)\n\ \ \ \ invoked\ from\ 
within\n\"_set_stepi\"\n\ \ \ \ (error\ in\ configuration\ of\ public\ 
variable\ \"::SrcBar::displaymode\")\n\ \ \ \ (while\ configuring\ 
option\ \"-displaymode\"\ for\ widget\ 
\"::.srcwin0.srcwin.container.pane0.childsite.con\")\n\ \ \ \ invoked\ 
from\ within\n\"::itcl::builtin::Archetype\ itk_initialize\ 
\{*\}\$args\"\n\ \ \ \ (object\ 
\"::.srcwin0.srcwin.container.pane0.childsite.con\"\ method\ 
\"::itk::Archetype::itk_initialize\"\ body\ line\ 2)\n\ \ \ \ invoked\ 
from\ within\n\"itk_initialize\ -updatecommand\ \{::.srcwin0.srcwin\ 
toggle_updates\}\ -updatevalue\ 1\"\n\ \ \ \ (\"eval\"\ body\ line\ 
1)\n\ \ \ \ invoked\ from\ within\n\"eval\ itk_initialize\ \$args\"\n\ \ 
\ \ while\ constructing\ object\ 
\"::.srcwin0.srcwin.container.pane0.childsite.con\"\ in\ 
::SrcBar::constructor\ (body\ line\ 34)\n\ \ \ \ invoked\ from\ 
within\n\"SrcBar\ \$_toolbar\ \$this\ \ -updatecommand\ \[list\ \$this\ 
toggle_updates\]\ \ -updatevalue\ \$do_updates\"\n\ \ \ \ (object\ 
\"::.srcwin0.srcwin\"\ method\ \"::SrcWin::_build_win\"\ body\ line\ 
6)\n\ \ \ \ invoked\ from\ within\n\"_build_win\"
I SrcWin my {}
E ManagedWin _create {object creation of SrcWin failed: ::.srcwin0.srcwin}
E ManagedWin _create {::.srcwin0.srcwin
     invoked from within
"SrcWin .srcwin0.srcwin"
     ("eval" body line 1)
     invoked from within
"eval SrcWin .srcwin0.srcwin"
     ("uplevel" body line 1)
     invoked from within
"uplevel \#0 eval $class $newwin $args"}
I Session notice_file_change {noticed file change event for 
D:/OneVision/users/roland/builds/Frameworks/boot/3/_build/mingwin-x86-64/debug/obj/ovcore_unittest/ovcore_unittest.exe}
E global gdbtk_idle {no_inferior_hook error: {hook=::.srcwin0.srcwin 
no_inferior args="" invalid command name "::.srcwin0.srcwin"
}}


When I am unwrapping the one big error in the middle It looks like this:

_build_win returned: can't use empty string as operand of "!"
     while executing
     "if {!$Tracing}
     {
     # In source-only mode, disable these buttons.  Otherwise, enable
     # them.
     if {$displaymode == "SOURCE"} {
         tset state..."
         (object "::.srcwin0.srcwin.container.pane0.childsite.con" 
method "::SrcBar::_set_stepi" body line 4)
         invoked from within
         "_set_stepi"
         (error in configuration of public variable "::SrcBar::displaymode")
         (while configuring option "-displaymode" for widget 
"::.srcwin0.srcwin.container.pane0.childsite.con")
         invoked from within
         "::itcl::builtin::Archetype itk_initialize {*}$args"
         (object "::.srcwin0.srcwin.container.pane0.childsite.con" 
method "::itk::Archetype::itk_initialize" body line 2)
         invoked from within
         "itk_initialize -updatecommand {::.srcwin0.srcwin 
toggle_updates} -updatevalue 1"
         ("eval" body line 1)
         invoked from within
         "eval itk_initialize $args"
         while constructing object 
"::.srcwin0.srcwin.container.pane0.childsite.con" in 
::SrcBar::constructor (body line 34)
         invoked from within
         "SrcBar $_toolbar $this  -updatecommand [list $this 
toggle_updates]  -updatevalue $do_updates"
         (object "::.srcwin0.srcwin" method "::SrcWin::_build_win" body 
line 6)
         invoked from within
         "_build_win"

The error at the end is the same as presented in the alert panel and 
maybe results from the first error.

The plain commandline gdb generated with my setup appears to work 
without problems on all platforms, so I believe the problems comes from 
somewhere iwidgets/itcl/itk/gdbtk tcl code not from C code. It also not 
a win64 only problem as I have it on win32 and linux, too. I think there 
must be something (hopefully small) which needs to be changed in the tcl 
parts of insight/iwidgets.

Any help is very much appreciated,

Roland

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [SOLVED]: Insight 64bit windows version
  2012-03-07 16:01 Insight 64bit windows version Roland Schwingel
@ 2012-03-08 13:47 ` Roland Schwingel
  0 siblings, 0 replies; 2+ messages in thread
From: Roland Schwingel @ 2012-03-08 13:47 UTC (permalink / raw)
  To: insight

Hi...

Am 07.03.2012 17:01, schrieb Roland Schwingel:
> Hi...
>
> Has anyone already tried that too? Any experiences?
>
> Since a few days I am trying to build an insight (based on gdb 7,4) 
> for windows 64bit using mingw-w64 compilers.
> I got already quite far, but not far enough.
>
> I got a big problem in the beginning with the intree tcl/tk/itcl/itk 
> 8.4 based versions. They are IMHO way to old to work on 64bit windows. 
> I looked at tcl 8.5 which is already way better in regard of win64bit 
> but still not as good as win64 friendly as tcl/tk 8.6beta.
>
> So I updated my system to the current tcl/tk 8.6 source from the 
> tcl/tk repos. When running tk's 64bit wish on windows 7 64 I can run 
> the tk supplied tests just fine. I upgraded itcl/itk also to the most 
> recent versions (4.0beta) to match the tcl/tk versions. I am using 
> iwidgets 4.0.2.
>
> I also had to give some love to libgui in regard of windows 64bit. It 
> hasn't got any attention for around a decade so it just refused to 
> build for win64.
>
> So I can link insight now. For regressions reasons I am also compiling 
> insight for windows 32 bit and linux 32 bit from the very same source 
> with the very same compilers and the very same settings. On all 
> platforms I do get the very same result. Insight bails out with some 
> tcl errors on startup. I am just starting out to learn tcl to get 
> insight going but maybe someone can give me a hint whats going wrong 
> here. My tcl knowledge is still VERY MUCH limited.
  [....]

After a sleepless night and a bunch of searching up and down the 
internet I finally have a working
version of a native 64bit windows insight! Hooray!

itcl/itk4 do not work very well at present. So I made myself a chimera 
version of itcl 3.4.1/itk 3.3 that (appears to) work fine with tcl/tk 8.6.

And voila: Insight starts up and appears to work!

Roland

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2012-03-08 13:47 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-03-07 16:01 Insight 64bit windows version Roland Schwingel
2012-03-08 13:47 ` [SOLVED]: " Roland Schwingel

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).