[MacPorts] #63656: Compiling MacPorts for installation in home directory on Catalina fails at "make install" with: make: *** [install] Killed: 9

MacPorts noreply at macports.org
Fri Oct 22 14:19:50 UTC 2021


#63656: Compiling MacPorts for installation in home directory on Catalina fails at
"make install" with: make: *** [install] Killed: 9
--------------------+--------------------
 Reporter:  jgrg    |      Owner:  (none)
     Type:  defect  |     Status:  new
 Priority:  Normal  |  Milestone:
Component:  base    |    Version:  2.7.1
 Keywords:          |       Port:
--------------------+--------------------
 Installing MacPorts 2.7.1 from source into my home directory on my work
 laptop where I do not have administrator rights:

 {{{
 ./configure --prefix /Users/jgrg/opt/local --with-no-root-privileges
 --with-install-group=localaccounts
 }}}

 `make install` fails with:

 {{{
 Not creating group "jgrg" (not root)
 make: *** [install] Killed: 9
 }}}

 I found that removing this condition from the `Makefile`:

 {{{
         if ! ${DSCL} -q . -list "/Users/${RUNUSR}" > /dev/null 2>&1 ; then
 \
             if test `id -u` -eq 0; then \
                 echo "Creating user \"${RUNUSR}\"" ; \
                 NEXTUID=501; \
                 while test -n "`${DSCL} -q /Search -search /Users UniqueID
 $$NEXTUID`"; do \
                     let "NEXTUID=NEXTUID+1"; \
                 done; \
                 ${DSCL} -q . -create "/Users/${RUNUSR}" UniqueID $$NEXTUID
 ; \
                 \
                 ${DSCL} -q . -delete "/Users/${RUNUSR}"
 AuthenticationAuthority ; \
                 ${DSCL} -q . -delete "/Users/${RUNUSR}"
 PasswordPolicyOptions ; \
                 ${DSCL} -q . -delete "/Users/${RUNUSR}"
 dsAttrTypeNative:KerberosKeys ; \
                 ${DSCL} -q . -delete "/Users/${RUNUSR}"
 dsAttrTypeNative:ShadowHashData ; \
                 \
                 ${DSCL} -q . -create "/Users/${RUNUSR}" RealName MacPorts
 ; \
                 ${DSCL} -q . -create "/Users/${RUNUSR}" Password \* ; \
                 ${DSCL} -q . -create "/Users/${RUNUSR}" PrimaryGroupID
 $$(${DSCL} -q . -read "/Groups/${RUNUSR}" PrimaryGroupID | /usr/bin/awk
 '{print $$2}') ; \
                 ${DSCL} -q . -create "/Users/${RUNUSR}" NFSHomeDirectory
 "${localstatedir}/macports/home" ; \
                 ${DSCL} -q . -create "/Users/${RUNUSR}" UserShell
 /usr/bin/false ; \
             else \
                 echo "Not creating user \"${RUNUSR}\" (not root)" ; \
             fi ; \
         fi ; \
 }}}

 allowed `make install` to complete. As far as I can tell (from adding an
 echo to print the command and running it in the shell) the first line of
 this block returns false (since my user account in `${RUNUSR}` exists) so
 it shouldn't be entered.

-- 
Ticket URL: <https://trac.macports.org/ticket/63656>
MacPorts <https://www.macports.org/>
Ports system for macOS


More information about the macports-tickets mailing list