From: Gene Smith <gds@chartertn.net>
To: insight@sources.redhat.com
Subject: Re: 20090609-cvs bad on linux (build fail cygwin)
Date: Fri, 12 Jun 2009 22:04:00 -0000 [thread overview]
Message-ID: <h0u37b$8g1$1@ger.gmane.org> (raw)
In-Reply-To: <4A31F1FF.6060707@redhat.com>
Keith Seitz wrote:
> Gene Smith wrote:
>> I built the current cvs head code on linux (fedora 8) OK (target arm)
>> but when I run it I see nothing useful in the main "Source Window". I
>> can set breakpoints, step, continue and stop but I never see the green
>> highlight marker for the current position. Assembly and Mixed views
>> show an empty screen.
>
> I have been using 20090605-cvs in my daily work (on F10 -- using system
> Tcl, Tk, etc), and I have not noticed your problems. Are you using the
> supplied versions of Tcl or the system versions? [i.e., Are src/tcl,
> src/tk, and src/itcl in your source tree?]
Yes they are.
>
> Try opening the debug window or enable logging (see the README). That
> might provide some "insight" into what may be going wrong.
Right now on linux I have gone back to 6.8 which runs OK. (Right now I
am experimenting with a i686-pc-ming32 cross build of Insight on linux,
which is another subject :) )
>
> Remind me: what's your target's triple? arm-what? What target are you
> using to run executables, simulator, a board?
I am following the Codesourcery convention: arm-none-eabi. They provide
a build of arm-none-eabi-gdb/gdbtui but not arm-none-eabi-insight.
>
> Out of curiosity, if you open a console window in insight (when your
> target is stopped at a breakpoint) and type "tk
> gdb_target_has_execution" what does it return?
(gdb) tk gdb_target_has_execution
1
However, this is with the mingw32 build of 6.8: Per help:
This GDB was configured as "--host=i386-pc-mingw32 --target=arm-none-eabi
>
>> Also, after unsuccessful build in cygwin with -mno-cygwin (mingw) and
>> under msys shell (also mingw) I tried a straight cygwin build. It went
>> a lot farther but eventually got this error:
>
> I have never used mingw; I am glad you tried this under cygwin...
>
> Tonight I updated to CVS HEAD and rebuilt the whole thing. It took
> several hours (I only have a 500MHz Pentium III that runs Win2k -- I
> *really* got to set up a virtualized host!), but my build succeeded.
>
> I updated my cygwin installation immediately prior to configuring,
> building, and installing:
>
> $ CFLAGS="-g" ../src/configure
> --prefix=/home/keiths/sources/insight/head/built
> [snip]
> $ make all-gdb install-gdb
> [snip]
>
> [I set the CFLAGS to "-g" so that I can debug the resultant executable,
> if I need to. You need not specify it.]
>
> There must be something magical about my machine that it works every
> time... :-P
It may just be your --prefix (see below) ??
>
>> make[3]: Entering directory
>> `/cygdrive/c/insight_make/insight_build/tcl/cygwin'
>> gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\"
>> -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\"
>> -DPACKAGE=\"libtcl_cygwin\" -DVERSION=\"8.4\" -DHAVE_GETCWD=1
>> -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_TMPNAM=1
>> -DHAVE_WAITPID=1 -DNO_VALUES_H=1 -DHAVE_UNISTD_H=1 -DUSE_TERMIOS=1
>> -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_ST_BLKSIZE=1
>> -DSTDC_HEADERS=1 -DNO_UNION_WAIT=1 -DNEED_MATHERR=1 -DRETSIGTYPE=void
>> -DHAVE_SIGNED_CHAR=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_TM_ZONE=1 -I.
>> -I../../../insight_sources/tcl/cygwin
>> -I../../../insight_sources/tcl/cygwin/../generic
>> -DTCL_LIBRARY='"/usr/local//lib"' -g -O2 -mno-win32 -c
>> ../../../insight_sources/tcl/cygwin/../unix/tclUnixInit.c
>> ../../../insight_sources/tcl/cygwin/../unix/tclUnixInit.c:66: error:
>> missing terminating " character
>> ../../../insight_sources/tcl/cygwin/../unix/tclUnixInit.c:66: error:
>> parse error before ')' token
>> ../../../insight_sources/tcl/cygwin/../unix/tclUnixInit.c:66: error:
>> missing terminating " character
>> ../../../insight_sources/tcl/cygwin/../unix/tclUnixInit.c:66: error:
>> parse error before ';' token
>
> Line 66 of tclUnixInit.c is (and the accompanying comment):
>
> /*
> * Directory in which to look for packages (each package is typically
> * installed as a subdirectory of this directory). The symbol is
> * defined by Makefile.
> */
>
> static char pkgPath[sizeof(TCL_PACKAGE_PATH)+200] = TCL_PACKAGE_PATH;
>
> What does your Makefile say the value of TCL_PACKAGE_PATH is? In my
> build (cygwin/Makefile), this is defined:
>
> TCL_PACKAGE_PATH = NONE/lib /home/keiths/insight/head/built/lib
>
> I configured with --prefix=/home/keiths/insight/head/built, so this
> looks okay. Right below this is the Makefile portion that uses this:
>
> AM_CFLAGS = -DTCL_LIBRARY='"$(TCL_LIBRARY)"'
> -DTCL_PACKAGE_PATH='"$(TCL_PACKAGE_PATH)"'
>
> Does this look the same in your Makefile?
>
> For this file on my cygwin box, the following build command was executed:
>
> gcc -DPACKAGE_NAME=\"\" -DPACKAGE_TARNAME=\"\" -DPACKAGE_VERSION=\"\"
> -DPACKAGE_STRING=\"\" -DPACKAGE_BUGREPORT=\"\"
> -DPACKAGE=\"libtcl_cygwin\" -DVERSION=\"8.4\" -DHAVE_GETCWD=1
> -DHAVE_OPENDIR=1 -DHAVE_STRSTR=1 -DHAVE_STRTOL=1 -DHAVE_TMPNAM=1
> -DHAVE_WAITPID=1 -DNO_VALUES_H=1 -DHAVE_UNISTD_H=1 -DUSE_TERMIOS=1
> -DHAVE_SYS_TIME_H=1 -DTIME_WITH_SYS_TIME=1 -DHAVE_ST_BLKSIZE=1
> -DSTDC_HEADERS=1 -DNO_UNION_WAIT=1 -DNEED_MATHERR=1 -DRETSIGTYPE=void
> -DHAVE_SIGNED_CHAR=1 -DHAVE_SYS_IOCTL_H=1 -DHAVE_TM_ZONE=1 -I.
> -I../../../src/tcl/cygwin -I../../../src/tcl/cygwin/../generic
> -DTCL_LIBRARY='"/home/keiths/sources/insight/head/built/share/tcl8.4"'
> -DTCL_PACKAGE_PATH='"NONE/lib
> /home/keiths/sources/insight/head/built/lib"' -g -mno-win32 -c
> ../../../src/tcl/cygwin/../unix/tclUnixInit.c
>
> As you can see, both our builds have the define for TCL_LIBRARY (in your
> build it is not set correctly for some reason -- this value is generated
> by configure), yet only my build defines TCL_PACKAGE_PATH -- in yours it
> is missing for some reason. Did you paste the entire command?
I think so.
Right now (6.8/-mno-cygwin build) With grep, I only see:
./tcl/win/tclConfig.sh:TCL_PACKAGE_PATH=''
and i see nothing when I grep for DTCL_LIBRARY.
But I will need to try again a head pure cygwin build to compare apples
to apples. See more below:
>
> Keith
>
Keith,
Going back to windows/cygwin I was able to build 6.8 and run insight 6.8
OK (pure cygwin, no mingw). Then I tried 6.8 on msys shell and it stops
pretty quick due to and error about MAKEINFO being missing or wrong
version. So I tried again under cygwin with -mno-cygwin and finally got
it make/install and run OK. Here is how I built it under cygwin as a
mingw32 executable:
insight_make
insight_sources
unpacked insight-6.8 tarball
insight_build (directory)
makeInsight.sh
makeInsight.sh (run from insight_make)looks like this:
#!/bin/sh
export TARGET=arm-none-eabi
export PREFIX=/cygdrive/c/Progra~1/Raisonance/Ride/arm-gcc
export PATH=$PATH:$PREFIX/bin
export PATH=$PATH:$PREFIX/$TARGET
#cd insight_build && rm -rf *
#../insight_sources/configure -v --quiet --prefix=$PREFIX \
# --target=$TARGET --enable-interwork --enable-multilib \
# --with-gnu-ld --with-gnu-as
#make all
cd insight_build
../insight_sources/configure -v --quiet --prefix=$PREFIX \
--target=$TARGET --enable-interwork --enable-multilib \
--with-gnu-ld --with-gnu-as \
--host=i686-pc-mingw32 --build=i686-pc-cygwin \
CC="gcc -mno-cygwin" AR="ar"
make
make install
<eof>
When building for pure cygwin I leave off the last two lines of the
configure command. This is loosely based on some insight build scripts
provided by this guy:
http://openhardware.net/Embedded_ARM/Toolchain/
I have not tried this again with the cvs head with this exact setup. I
don't know how important the --prefix setting is during the make stage.
I thought it was only used during "make install" but not sure. That may
be why my TCL_LIBRARY was pointing to the wrong place since I may have
had the prefix pointing somewhere else when I was building the head?
(Build on cygwin on my fairly fast machine takes a couple hours. Build
on msys seems like it would be much faster if I could get past the
MAKEINFO/textinfo error.)
-gene
next prev parent reply other threads:[~2009-06-12 17:28 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-06-10 19:04 Gene Smith
2009-06-12 17:28 ` Keith Seitz
2009-06-12 22:04 ` Gene Smith [this message]
2009-06-12 23:38 ` Gene Smith
2009-06-16 18:01 ` Gene Smith
2009-06-16 18:40 ` Keith Seitz
2009-06-16 18:48 ` Gene Smith
2009-06-16 18:53 ` Keith Seitz
2009-07-07 3:22 ` Gene Smith
2009-07-07 3:29 ` Gene Smith
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to='h0u37b$8g1$1@ger.gmane.org' \
--to=gds@chartertn.net \
--cc=insight@sources.redhat.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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).