public inbox for insight@sourceware.org
 help / color / mirror / Atom feed
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





  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).