【问题标题】:heroku buildpack for installing libmosquitto用于安装 libmosquitto 的 heroku buildpack
【发布时间】:2014-05-27 23:07:38
【问题描述】:

我正在尝试为使用MQTT 代理的Heroku 应用程序创建一个小型buildpack。为了与代理建立通信渠道,我使用了mosquitto gem,它本身需要我在系统上安装一个包并构建它。

gem 有非常简单的说明:

sudo apt-get update
sudo apt-get install pkg-config cmake openssl libc-ares-dev

wget http://mosquitto.org/files/source/mosquitto-1.3.1.tar.gz
tar xzf mosquitto-1.3.1.tar.gz
cd mosquitto-1.3.1
cmake .
sudo make install

我需要一个可以在 Heroku cedar 应用程序上执行此操作的 buildpack。我试了一下heroku-buildpack-mosquitto,但我失败了,我得到了一个错误。我不是 shell 专家,也不知道自己在做什么。

我使用以下.buildpack,以及heroku-buildpack-multi

https://github.com/ddollar/heroku-buildpack-apt.git
https://github.com/rolandjitsu/heroku-buildpack-mosquitto.git
https://github.com/heroku/heroku-buildpack-ruby.git

还有Aptfile 代表heroku-buildpack-apt

pkg-config
cmake
openssl
libc-ares-dev

我收到以下错误:

/tmp/buildpack_23cdb652-73cc-461b-b70f-ec3f386ebee1/bin/compile: line 44: /tmp/buildpack5JP7B/bin/detect: No such file or directory

我将不胜感激,因为我自己无法解决这个问题:)

【问题讨论】:

    标签: heroku buildpack


    【解决方案1】:

    您的 buildpack 中缺少 bin/detect 脚本。 这是确认您推送的代码在我们的例子中是否是 Ruby 项目的脚本。所以你可能想试试这个:

    #!/usr/bin/env bash
    # bin/detect <build-dir>
    
    if [ -f $1/Gemfile ]; then
      echo "Ruby" && exit 0
    else
      echo "no" && exit 1
    fi
    

    【讨论】:

    • 这不再是问题了,我已经设法让它工作了。现在似乎cmake 命令不存在,即使我使用apt 安装了构建所需的包。我有点卡住了,我不知道如何解决它。我已经添加了关于错误的更多描述,并且我已经更新了 repo。
    • 好吧,我不会像这样更新问题。最初的问题是关于缺少bin/detect 脚本,我回答了那部分。现在你已经改变了问题,我的回答看起来完全不相关,这不会帮助其他面临类似问题的人。
    • 如果我是你,我会将问题恢复为原来的问题并发布一个关于 cmake 问题的新问题。也许你应该问“如何在 Heroku 上安装 cmake?”并描述你的尝试。
    • 完成了,我已经改了:)
    猜你喜欢
    • 1970-01-01
    • 2019-06-21
    • 2016-06-20
    • 1970-01-01
    • 2020-03-05
    • 1970-01-01
    • 2016-10-26
    • 2019-04-02
    • 1970-01-01
    相关资源
    最近更新 更多