2014-07-23 70 views
0

我正在尝试使用专门为它定制的heroku buildpack构建一个C应用程序。问题是编译后到达最后阶段-----> Installing并失败。有人能够解释我需要做什么才能成功部署吗?Heroku应用程序buildpack在编译成功后失败

命令:

$ 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/ | [email protected]: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 [email protected]:dark-clouds-666.git 
! [remote rejected] master -> master (pre-receive hook declined) 
error: failed to push some refs to '[email protected]:dark-clouds-666.git' 

回答

0

您的用户没有权限在/usr/local写。通常,make install由root用户完成,其中make可以由普通用户完成。

最快的方法是通过root用户执行所有操作,这是不安全的,因为您可以修改所有内容,导致系统损坏。

您可以设置与/usr/local不同的安装位置,或者您可以强制heroku询问根权限(sudo make install)。

相关问题