failure of "port selfupdate"
joe davison
jwdavison at me.com
Mon Dec 20 16:36:54 PST 2010
Could this be a UMASK issue?
echo user UMASK is $UMASK
sudo echo root UMASK is $UMASK
On Dec 20, 2010, at 3:47 PM, Ryan Schmidt wrote:
> On Dec 20, 2010, at 12:28, William H. Magill wrote:
>> On Dec 19, 2010, at 11:42 PM, Ryan Schmidt wrote:
>>> On Dec 19, 2010, at 20:01, William H. Magill wrote:
>>>> ls: ./man: Permission denied
>>>> 4 lrwx------ 1 root admin 9 Feb 12 2010 ./man
>>>
>>> That seems to show that ./man is an actual directory, not a symlink as it should be, and that it has permissions 700 instead of 755. Fix the permissions of this directory with:
>>>
>>> sudo chmod 755 ./man
>>>
>>> If the files and directories inside it also have incorrect permissions, more involved permissions fixing may be necessary.
>>
>> I've seen this "problem" before, and I've never gotten a satisfactory explanation for it.
>> /opt/local/man IS a symbolic link, not a directory, yet the link has different permissions than the underlying directory.
>> (note, no acl involved.)
>>
>> As root:
>>
>> sudo ls -alse /opt/local
>> total 4
>> 0 drwxr-xr-x 13 root admin 442 Feb 12 2010 .
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 ..
>> 0 drwxr-xr-x 27 root admin 918 Feb 12 2010 bin
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 etc
>> 0 drwxr-xr-x 5 root admin 170 Sep 19 2009 include
>> 0 drwxr-xr-x 35 root admin 1190 Feb 12 2010 lib
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 libexec
>> 4 lrwx------ 1 root admin 9 Feb 12 2010 man -> share/man
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 sbin
>> 0 drwxr-xr-x 9 root admin 306 Feb 12 2010 share
>> 0 drwxr-xr-x 2 root admin 68 Feb 12 2010 src
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 var
>> 0 drwxr-xr-x 2 root admin 68 Feb 12 2010 www
>>
>> sudo ls -als /opt/local/share
>> total 0
>> 0 drwxr-xr-x 9 root admin 306 Feb 12 2010 .
>> 0 drwxr-xr-x 13 root admin 442 Feb 12 2010 ..
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 info
>> 0 drwxr-xr-x 5 root admin 170 Feb 12 2010 macports
>> 0 drwxr-xr-x 24 root admin 816 Aug 27 2009 man
>> 0 drwxr-xr-x 85 root admin 2890 Aug 27 2009 nls
>> 0 drwxr-xr-x 2 root admin 68 Feb 12 2010 skel
>> 0 drwxr-xr-x 6 root admin 204 Sep 19 2009 tabset
>> 0 drwxr-xr-x 44 root admin 1496 Sep 19 2009 terminfo
>>
>> as myself:
>>
>> ls -als /opt/local
>> total 4
>> 0 drwxr-xr-x 13 root admin 442 Feb 12 2010 .
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 ..
>> 0 drwxr-xr-x 27 root admin 918 Feb 12 2010 bin
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 etc
>> 0 drwxr-xr-x 5 root admin 170 Sep 19 2009 include
>> 0 drwxr-xr-x 35 root admin 1190 Feb 12 2010 lib
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 libexec
>>
>> ls: /opt/local/man: Permission denied
>> 4 lrwx------ 1 root admin 9 Feb 12 2010 man
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 sbin
>> 0 drwxr-xr-x 9 root admin 306 Feb 12 2010 share
>> 0 drwxr-xr-x 2 root admin 68 Feb 12 2010 src
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 var
>> 0 drwxr-xr-x 2 root admin 68 Feb 12 2010 www
>>
>> ls -als /opt/local/share
>> total 0
>> 0 drwxr-xr-x 9 root admin 306 Feb 12 2010 .
>> 0 drwxr-xr-x 13 root admin 442 Feb 12 2010 ..
>> 0 drwxr-xr-x 3 root admin 102 Aug 27 2009 info
>> 0 drwxr-xr-x 5 root admin 170 Feb 12 2010 macports
>> 0 drwxr-xr-x 24 root admin 816 Aug 27 2009 man
>> 0 drwxr-xr-x 85 root admin 2890 Aug 27 2009 nls
>> 0 drwxr-xr-x 2 root admin 68 Feb 12 2010 skel
>> 0 drwxr-xr-x 6 root admin 204 Sep 19 2009 tabset
>> 0 drwxr-xr-x 44 root admin 1496 Sep 19 2009 terminfo
>
> Curious. Well, you should be able to set the permissions of this man symlink right by running:
>
> sudo chmod -h 755 /opt/local/man
>
>
>> I would assume that the link was created by either macports or possibly darwinports, ages ago.
>
> Mhm, I think it's still part of the install process today. It's normal for it to be there, though it should have 755 permissions, not 700 like on your system.
>
>
>>> Ports should install manpages in /opt/local/share/man, not /opt/local/man; if you have any port that has a location in /opt/local/min registered to it, we need to fix that port, so please tell us what port it is.
>>
>> Man pages are apparently all installed in /opt/local/share/man (or at least that is were the files wind up by virtue of that link.
>
> Still, ports must install files to /opt/local/share/man; attempting to install files to /opt/local/man is an error which must be corrected in any port where this problem is found. Such ports should be easy enough to spot, since they will print a warning during the destroot phase that they are violating the mtree.
>
>
>> There seems to be a mix of them... "most" are fine, but many are of the same nature as the /opt/local/man link.
>>
>> Again, from my account... just the top of the list.
>>
>> ls -alse /opt/local/man/man3
>> total 2784
>> 0 drwxr-xr-x 691 root admin 23494 Sep 19 2009 .
>> 0 drwxr-xr-x 24 root admin 816 Aug 27 2009 ..
>> 0 -rw-r--r-- 1 root admin 0 Aug 27 2009 .turd_MacPorts
>>
>> ls: /opt/local/man/man3/COLOR_PAIR.3x.gz: Permission denied
>> 4 lrwx------ 1 root admin 16 Sep 19 2009 COLOR_PAIR.3x.gz
>>
>> ls: /opt/local/man/man3/PAIR_NUMBER.3x.gz: Permission denied
>> 4 lrwx------ 1 root admin 15 Sep 19 2009 PAIR_NUMBER.3x.gz
>>
>> ls: /opt/local/man/man3/_nc_free_and_exit.3x.gz: Permission denied
>> 4 lrwx------ 1 root admin 19 Sep 19 2009 _nc_free_and_exit.3x.gz
>>
>> ...
>> just picking the first two...
>> 4 -rw-r--r-- 1 root admin 3810 Sep 19 2009 curs_attr.3x.gz
>> 4 -rw-r--r-- 1 root admin 1478 Sep 19 2009 curs_beep.3x.gz
>> 4 -rw-r--r-- 1 root admin 1852 Sep 19 2009 curs_bkgd.3x.gz
>> 4 -rw-r--r-- 1 root admin 1838 Sep 19 2009 curs_bkgrnd.3x.gz
>> 4 -rw-r--r-- 1 root admin 2088 Sep 19 2009 curs_border.3x.gz
>> 4 -rw-r--r-- 1 root admin 1980 Sep 19 2009 curs_border_set.3x.gz
>> 4 -rw-r--r-- 1 root admin 2114 Sep 19 2009 curs_clear.3x.gz
>> 4 -rw-r--r-- 1 root admin 4033 Sep 19 2009 curs_color.3x.gz
>>
>>
>> but from root
>>
>> sudo ls -alse /opt/local/man/man3
>> total 2784
>> 0 drwxr-xr-x 691 root admin 23494 Sep 19 2009 .
>> 0 drwxr-xr-x 24 root admin 816 Aug 27 2009 ..
>> 0 -rw-r--r-- 1 root admin 0 Aug 27 2009 .turd_MacPorts
>> 4 lrwx------ 1 root admin 16 Sep 19 2009 COLOR_PAIR.3x.gz -> curs_color.3x.gz
>> 4 lrwx------ 1 root admin 15 Sep 19 2009 PAIR_NUMBER.3x.gz -> curs_attr.3x.gz
>> 4 lrwx------ 1 root admin 19 Sep 19 2009 _nc_free_and_exit.3x.gz -> curs_memleaks.3x.gz
>> 4 lrwx------ 1 root admin 19 Sep 19 2009 _nc_freeall.3x.gz -> curs_memleaks.3x.gz
>>
>> ....
>>
>> 4 -rw-r--r-- 1 root admin 3810 Sep 19 2009 curs_attr.3x.gz
>> 4 -rw-r--r-- 1 root admin 1478 Sep 19 2009 curs_beep.3x.gz
>> 4 -rw-r--r-- 1 root admin 1852 Sep 19 2009 curs_bkgd.3x.gz
>> 4 -rw-r--r-- 1 root admin 1838 Sep 19 2009 curs_bkgrnd.3x.gz
>> 4 -rw-r--r-- 1 root admin 2088 Sep 19 2009 curs_border.3x.gz
>> 4 -rw-r--r-- 1 root admin 1980 Sep 19 2009 curs_border_set.3x.gz
>> 4 -rw-r--r-- 1 root admin 2114 Sep 19 2009 curs_clear.3x.gz
>> 4 -rw-r--r-- 1 root admin 4033 Sep 19 2009 curs_color.3x.gz
>
> Ok, all those seem to be part of the ncursesw port. On my system, they have the correct permissions. You could try deactivating and then reactivating ncursesw:
>
> sudo port -f deactivate ncursesw
> sudo port activate ncursesw
>
> If that doesn't help, you could try rebuilding the port:
>
> sudo port -n upgrade --force ncursesw
>
>
>> checking build system type... i386-apple-darwin10.5.0
>> checking host system type... i386-apple-darwin10.5.0
>> checking target system type... i386-apple-darwin10.5.0
>> checking MacPorts version... 1.9.2
>> checking for sw_vers... /usr/bin/sw_vers
>> checking for defaults... /usr/bin/defaults
>> checking for xcode-select... no
>> checking Mac OS X version... 10.6.5
>> checking Xcode version... 3.2.5
>> checking for gcc... no
>> checking for cc... no
>> checking for cl.exe... no
>> configure: error: in `/opt/local/var/macports/sources/rsync.macports.org/release/base':
>> configure: error: no acceptable C compiler found in $PATH
>> See `config.log' for more details
>
> Seeing the config.log might be interesting, but it will probably just confirm that you don't seem to have an acceptable C compiler, though it seemed to identify that you do have Xcode 3.2.5. Did you install Xcode in a nonstandard location? If so, tell MacPorts of it by editing the developer_dir setting in macports.conf. Or did you omit the UNIX development tools when installing Xcode? If so, install Xcode again, including those components; they're required for MacPorts.
>
>
>
> _______________________________________________
> macports-users mailing list
> macports-users at lists.macosforge.org
> http://lists.macosforge.org/mailman/listinfo.cgi/macports-users
--
joe
joda at ieee.org
More information about the macports-users
mailing list