Re: Re: [msysGit] [PATCH 2/3] git-gui: fix PATH environment for mingw development environment

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Sun, Feb 28, 2010 at 12:57:14AM +0000, Pat Thoyts wrote:
> On 27 February 2010 20:47, Heiko Voigt <hvoigt@xxxxxxxxxx> wrote:
> > When creating a desktop shortcut from the gui the shortcut directly
> > starts wish with the git-gui script. In the msysgit development
> > environment some dll's reside in the mingw/bin directory which causes
> > that git can not start because libiconv2.dll is not found.
> >
> > When using such a link the error is even more cryptic stating:
> > "child killed: unknown signal"
> >
> > Signed-off-by: Heiko Voigt <hvoigt@xxxxxxxxxx>
> > ---
> > I am not sure whether this is the most elegant solution, but making this
> > work would definitely ease the development workflow.
[...]
> > -set bindir [file dirname \
> > +set basedir [file dirname \
> >             [file dirname \
> >              [file dirname [info script]]]]
> > -set bindir [file join $bindir bin]
> > +set bindir [file join $basedir bin]
> > +set bindir "$bindir;[file join $basedir mingw bin]"
[...]

> I have not tried to test this - I use cmd shell all the time so I
> always run this using 'git gui' which runs the git.cmd script in
> ProgramFiles\Git\cmd or in the development environment in
> msysgit\cmd\. It makes me wonder if the Windows shortcut shouldn;t be
> pointing to the cmd script rather than to a tcl script like this as
> the cmd script does some quite extensive environment setup. It assigns
> HOME if it is not set, extends the PATH to include the git
> installation locations, sets the PLINK_PROTOCOL and the codepages for
> the console.

Problem here is that AFAIK the cmd script is part of msysgit and not
upstream git which would break the desktop icon on cygwin. So this
solution seems to me the most unintrusive one because on cygwin (and
installed msysgit) you just end up having one obsolete path in PATH.
And the current heuristic does not always work. Depending on where you
put your prefix variable in your make call you have to manually add to
your path. For example if you, like me, usually install git in your home
directory.

Of course if we had a way to tell where the dll's of git are stored that
would be a way nicer solution.

> Probably only the PATH and HOME fixups are necessary for
> git-gui and in fact tcl's configuration of "~" in the path as HOME
> probably deals with that too.
> This is just for the development setup right? An installation of
> msysGit doesn't have a mingw\bin directory.

Yes it is for development only. But we have this paths in other locations
as well: For example I noticed that even the installation of msysgit has
/mingw/bin in PATH (from etc/profile probably) when starting git bash.

We need something for the development setup. Otherwise testing bugfixes
in this area becomes very tedious. And as stated above the error message
you get is way worse than my patch ;)

cheers Heiko
--
To unsubscribe from this list: send the line "unsubscribe git" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel Development]     [Gcc Help]     [IETF Annouce]     [DCCP]     [Netdev]     [Networking]     [Security]     [V4L]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Linux SCSI]     [Fedora Users]