how to access and display apps that I've launched

Ken Brown kbrown@cornell.edu
Wed Jul 26 06:49:00 GMT 2017


On 7/25/2017 12:05 PM, Ian Lambert wrote:
> 
> --------------------------------------------
> On Tue, 7/25/17, Ken Brown <> wrote:
> 
>   Normally you don't ever
>   need to think about rebasing on x86_64.  The
>   perpetual postinstall script
>   /etc/postinstall/0p_000_autorebase.dash
>   should handle everything without any manual
>   intervention.  You might try
>   running that
>   script (and the rebaselst script that it calls) line by
>   line (preferably in a dash shell started
>   directly from Windows, with no
>   other Cygwin
>   processes running) to see if you can figure out what's
>    going wrong.
>   
> = = =
> Looks about the same to me, and all the /var/cache/rebase/...
> files are basically empty, FWIW, but I could be following
> the rebaselst script incorrectly.
> 
> 
> $ cat 0p_000_autorebase.dash
> #!/bin/dash
> export PATH=/bin
> b=/var/cache/rebase
> if [ -e ${b}/peflags ] ; then
>      noaslr=--noaslr
>      peflags=peflags
>      rm -f ${b}/peflags
> else
>      noaslr=''
>      peflags=''
> fi
> if [ ! -e ${b}/fullrebase.done ] ; then
>      rebase-trigger fullrebase
>      rebaselst --rebuild update --cleardb $noaslr rebase $peflags
>      mv ${b}/fullrebase ${b}/fullrebase.done
> else
>      rebaselst update $noaslr rebase $peflags
> fi
> 
> 
> 
> $ b=/var/cache/rebase
> $ ls ${b}/pe*
> ls: cannot access '/var/cache/rebase/pe*': No such file or directory
> $ ls ${b}/fullrebase.done
> /var/cache/rebase/fullrebase.done
> $ rebase-trigger fullrebase
> Note: _autorebase will do a full rebase the next time setup is run.
> $ rebaselst --rebuild update --cleardb rebase
> removing /var/cache/rebase/rebase_pkg
> creating empty /var/cache/rebase/rebase_pkg
> touch: setting times of '/var/cache/rebase/rebase_pkg': Invalid argument
> Updating package information in /var/cache/rebase/rebase_pkg.
> removing /var/cache/rebase/rebase_lst
> creating empty /var/cache/rebase/rebase_lst
> touch: setting times of '/var/cache/rebase/rebase_lst': Invalid argument
> Updating rebase information for installed executables in /var/cache/rebase/rebas
> e_exe.
> removing /var/cache/rebase/rebase_dyn
> creating empty /var/cache/rebase/rebase_dyn
> touch: setting times of '/var/cache/rebase/rebase_dyn': Invalid argument
> Looking for dynamic language modules/libraries in:
>    /usr/lib/R/site-library
>    /usr/lib/php/20151012
>    /usr/lib/python2.7/site-packages
>    /usr/lib/python3.6/site-packages
> Updating rebase information for dynamic language modules/libraries /var/cache/re
> base/rebase_dyn.
> removing /var/cache/rebase/rebase_user
> creating empty /var/cache/rebase/rebase_user
> touch: setting times of '/var/cache/rebase/rebase_user': Invalid argument
> Updating rebase information for user-defined dynamic objects /var/cache/rebase/r
> ebase_user.
> removing /var/cache/rebase/rebase_user_exe
> creating empty /var/cache/rebase/rebase_user_exe
> touch: setting times of '/var/cache/rebase/rebase_user_exe': Invalid argument
> Updating rebase information for user-defined executables /var/cache/rebase/rebas
> e_user_exe.
> Rebasing with list /var/cache/rebase/rebase_all, built from /var/cache/rebase/re
> base_lst /var/cache/rebase/rebase_dyn /var/cache/rebase/rebase_user.
> $
> 
> $ ls -ls /var/cache/rebase
> total 224
> 32 -rw-r--r-- 1 myuser Domain Users 115 Jul 25 10:50 fullrebase
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:34 rebase_all
> 32 -r--r--r-- 1 myuser Domain Users  31 Jul 25 11:34 rebase_dyn
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:33 rebase_dyn.old
> 32 -r--r--r-- 1 myuser Domain Users  31 Jul 25 11:33 rebase_exe
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:33 rebase_exe.old
> 32 -r--r--r-- 1 myuser Domain Users  31 Jul 25 11:33 rebase_lst
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:33 rebase_lst.old
> 32 -r--r--r-- 1 myuser Domain Users  31 Jul 25 11:33 rebase_pkg
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:33 rebase_pkg.old
> 32 -r--r--r-- 1 myuser Domain Users  31 Jul 25 11:34 rebase_user
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:34 rebase_user.old
> 32 -r--r--r-- 1 myuser Domain Users  31 Jul 25 11:34 rebase_user_exe
>   0 -rw-r--r-- 1 myuser Domain Users   0 Jul 25 11:34 rebase_user_exe.old

As Achim explained, the failure of 'touch' is causing rebaselst to think 
that no DLLs need to be rebased.  So that failure is the real problem to 
be solved.

This is a long shot, but I wonder if the touch failure is related to the 
bug reported in https://cygwin.com/ml/cygwin/2017-07/msg00114.html.  I 
think the bug is supposed to be fixed in the latest snapshot.  Can you 
try that snapshot and see if touch still fails?  If so, maybe you could 
run the touch command under strace to see if that sheds any light.

Ken


--
Problem reports:       http://cygwin.com/problems.html
FAQ:                   http://cygwin.com/faq/
Documentation:         http://cygwin.com/docs.html
Unsubscribe info:      http://cygwin.com/ml/#unsubscribe-simple



More information about the Cygwin mailing list