简体   繁体   中英

Homebrew package can't be build because of file permissions issues

I want to submit a PR to Homebrew # 20409 that should update libp11 from version 0.2.8 to 0.4.7 however I have some problems running the installation locally.

I am pulling my patch 20409 and to an interactive installation.

brew pull https://github.com/Homebrew/homebrew-core/pull/20409
brew install --interactive libp11

after

./configure
make
make install

Make install complains about cannot create regular file ... Operation not permitted It seems that sudo rights are needed, but I am not sure if its the correct way to do so.

make install     
Making install in src
 /usr/local/bin/gmkdir -p '/usr/local/Cellar/openssl/1.0.2m/lib/engines'
 /usr/local/bin/gmkdir -p '/usr/local/lib'
 /usr/local/bin/gmkdir -p '/usr/local/include'
 /bin/sh ../libtool   --mode=install /usr/local/bin/ginstall -c   libp11.la '/usr/local/lib'
 /bin/sh ../libtool   --mode=install /usr/local/bin/ginstall -c   pkcs11.la '/usr/local/Cellar/openssl/1.0.2m/lib/engines'
 /usr/local/bin/gmkdir -p '/usr/local/lib/pkgconfig'
 /usr/local/bin/ginstall -c -m 644 libp11.h p11_err.h '/usr/local/include'
 /usr/local/bin/ginstall -c -m 644 libp11.pc '/usr/local/lib/pkgconfig'
ginstall: cannot create regular file '/usr/local/include/libp11.h': Operation not permitted
ginstall: cannot create regular file '/usr/local/include/p11_err.h': Operation not permitted
make[2]: *** [install-includeHEADERS] Error 1
make[2]: *** Waiting for unfinished jobs....
ginstall: cannot create regular file '/usr/local/lib/pkgconfig/libp11.pc': Operation not permitted
make[2]: *** [install-pkgconfigDATA] Error 1
libtool: install: /usr/local/bin/ginstall -c .libs/libp11.2.dylib /usr/local/lib/libp11.2.dylib
libtool: install: /usr/local/bin/ginstall -c .libs/pkcs11.dylib /usr/local/Cellar/openssl/1.0.2m/lib/engines/pkcs11.dylib
ginstall: cannot create regular file '/usr/local/lib/libp11.2.dylib': Operation not permitted
ginstall: cannot create regular file '/usr/local/Cellar/openssl/1.0.2m/lib/engines/pkcs11.dylib': Operation not permitted
make[2]: *** [install-libLTLIBRARIES] Error 1
make[2]: *** [install-enginesexecLTLIBRARIES] Error 1
make[1]: *** [install-am] Error 2
make: *** [install-recursive] Error 1

Usually I would call sudo make install however this is not permitted operation not permitted: sudo with Homebrew.

I am running the tests on MAC OS Sierra and not Hight Sierra, so this issues does not apply

I know you said you're running Sierra, but this still just looks like a file permissions problem. For Sierra, you should be able to do this:

sudo chown -R $(whoami) $(brew --prefix)

That other article you linked said that /usr/local cannot be chown'd (good to know, I'll hit that soon.....) so the "fix" was just to chown everything underneath there:

sudo chown -R $(whoami) $(brew --prefix)/*

which would work fine if the directories you need to write to are already created.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM