gpt4 book ai didi

ruby-on-rails - 我可以将我编译的系统库(例如 libxml2)合并到可以部署到 Heroku 的 gem(例如 nokogiri)中吗?

转载 作者:行者123 更新时间:2023-12-04 05:34:30 25 4
gpt4 key购买 nike

Nokogiri 在与来自 libxml2 的 UTF-8 字符进行相互转换时遇到问题,特别是版本 2.7.6,这是 Ubuntu 10.04 LTS 上支持的最高版本。该错误在 2.7.7 及更高版本中已修复,但由于我们的应用托管在 Heroku(bamboo-ree-1.8.7 堆栈,基于 Ubuntu 10.04)上,因此我们必须使用 2.7.6 版本,并继续体验错误,除非:

  • 有人可以/已经破解了 nokogiri 来解决这个问题
  • Canonical 为 Ubuntu 10.04(和/或 Heroku 更新其堆栈中的 libxml2)增加了受支持的 libxml2 版本
  • 我可以想出一种方法让 nokogiri 使用 libxml2 的一个版本,我可以将它与应用程序捆绑在一起,以便它可以部署到 Heroku。

  • 很高兴听到关于 1 或 2 的任何反馈,但很好奇 3 是否可行。这是我所知道的可能:
  • Nokogiri 可以链接到位于非标准位置的库 - http://nokogiri.org/tutorials/installing_nokogiri.html
  • 以这种方式创建的 gem 可以安装到 vendor/gems,因此优先于系统 gem

  • 我的问题是,我是否可以将更高版本的 libxml2 包含在应用程序中,以便编译后的供应商 gem 在我提交并将其推送到 Heroku 时使用它?

    最佳答案

    这不是最用户友好的解决方案,但这是我为获得自定义版本的 libpq 所做的一次。我是在雪松上做的,但如果你先进入 tmp,它可能对竹子有用

  • heroku 运行 bash
  • curl 要构建的源
  • build 它
  • 将二进制文件发送出 dyno
  • 供应商在供应商/任何东西中构建的二进制文件
  • heroku 配置:添加 LD_LIBRARY_PATH=/app/vendor/whatever

  • 抱歉,目前还没有更好的方法来获得自定义二进制文件。祝你好运。

    关于ruby-on-rails - 我可以将我编译的系统库(例如 libxml2)合并到可以部署到 Heroku 的 gem(例如 nokogiri)中吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8598958/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com