This is the mail archive of the insight@sourceware.org mailing list for the Insight project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Insight 64bit windows version


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


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