我正在尝试使用专门为其设置的自定义heroku buildpack来构建C
应用程序。问题是在编译之后它会到达最后一个阶段-----> Installing
并失败。有人能够解释我需要做什么才能成功部署它吗?
命令:
$ git clone https://github.com/znc/znc.git && cd znc
$ heroku create --stack cedar --buildpack http://github.com/lonnen/heroku-buildpack-znc.git
Creating dark-clouds-666...
done, stack is cedar
BUILDPACK_URL=http://github.com/lonnen/heroku-buildpack-znc.git
http://dark-clouds-666.herokuapp.com/ | git@heroku.com:dark-clouds-666.git
Git remote heroku added
$ git push heroku master
......然后它继续构建看似正常的一切......
-----> Fetching custom git buildpack... done
-----> C app detected
-----> Running autogen.sh
-----> Configuring
-----> Compiling with Make
Linking znc...
ZNC was successfully compiled.
Use 'make install' to install ZNC to '/usr/local'.
-----> Installing
test -d /usr/local/bin || /usr/bin/install -c -d /usr/local/bin
test -d /usr/local/include/znc || /usr/bin/install -c -d /usr/local/include/znc
/usr/bin/install: cannot change permissions of `/usr/local/include/znc': No such file or directory
make: *** [install] Error 1
! Push rejected, failed to compile C app
To git@heroku.com:dark-clouds-666.git
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'git@heroku.com:dark-clouds-666.git'
答案 0 :(得分:0)
您的用户无权使用/usr/local
进行撰写。通常,make install
由root用户完成,其中make
可以由普通用户完成。
最快的方法是由root用户执行,这是不安全的,因为你可以修改所有内容,导致系统损坏。
您可以设置与/usr/local
不同的安装位置,也可以强制heroku请求root权限(sudo make install
)。