Installing libxml-ruby 2.9.0 with native extensions

Ubuntu 12.04 源码安装 Ruby on Rails 实操指南 Ruby 是一种动态、开源的编程语言,Rails 是基于 Ruby 构建的高效 Web 应用框架;二者依赖底层系统环境与编译工具链。在老旧发行版如 Ubuntu 12.04 中,因包管理器(apt)提供的 Ruby 和 Rails 版本严重滞后,且存在 OpenSSL、libxml2 等关键库的 ABI 不兼容问题,导致标准 install 方式失效。此时必须回归源码编译路径,通过精准控制 configure 参数、隔离安装路径、降级 Bundler 版本、强制 Nokogiri 内置编译等工程手段,重建可 阅读详情

最近调研使用openstreetmap生态体系,在本地安装openstreetmap-website遇到执行安装命令失败的问题:安装步骤按照官网https://github.com/openstreetmap/openstreetmap-website/blob/master/INSTALL.md 进行的(本地mac环境安装),在执行命令

bundle install

报如下错误:

Using libv8 3.16.14.15
Fetching libxml-ruby 2.9.0
Installing libxml-ruby 2.9.0 with native extensions
Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

current directory: /Users/vlad/.rvm/gems/ruby-2.3.1/gems/libxml-ruby-2.9.0/ext/libxml
/Users/vlad/.rvm/rubies/ruby-2.3.1/bin/ruby -r ./siteconf20181109-46682-fvgifh.rb extconf.rb --use-system-libraries
checking for libxml/xmlversion.h in /opt/include/libxml2,/opt/local/include/libxml2,/usr/local/include/libxml2,/usr/include/libxml2... no
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of necessary
libraries and/or headers.  Check the mkmf.log file for more details.  You may
need configuration options.

Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/Users/vlad/.rvm/rubies/ruby-2.3.1/bin/$(RUBY_BASE_NAME)
--with-xml2-config
--without-xml2-config
--with-xml2-dir
--without-xml2-dir
--with-xml2-include
--without-xml2-include=${xml2-dir}/include
--with-xml2-lib
--without-xml2-lib=${xml2-dir}/lib
 extconf failure: need libxml2.

    Install the library or try one of the following options to extconf.rb:

      --with-xml2-config=/path/to/xml2-config
      --with-xml2-dir=/path/to/libxml2
      --with-xml2-lib=/path/to/libxml2/lib
      --with-xml2-include=/path/to/libxml2/include

原因是libxml-ruby插件加载不到,需要确保本地已经安装了libxml2插件,然后执行命令安装libxml-ruby成功(ps:/usr/local/Cellar/libxml2/2.9.9_2 根据实际libxml2安装目录配置):

gem install libxml-ruby -v '3.1.0' -- --use-system-libraries --with-xml2-dir=/usr/local/Cellar/libxml2/2.9.9_2/include/libxml2/libxml/ --with-xml2-config=/usr/bin/xml2-config

然后重新执行命令bundle install 继续安装

RubyGems不是包管理器,而是Ruby运行时契约栈 RubyGems是Ruby语言与外部生态交互的核心协议栈,其本质远超‘包安装工具’——它融合版本协商、依赖求解、C扩展编译桥接、安全签名验证与本地缓存管理五大能力。基于语义化版本(SemVer)的Ruby特化解析、HTTP/2多路复用网络层、原生扩展沙箱构建及三层Gem路径隔离模型,共同支撑起Bundler的确定性依赖锁定机制。在工业控制(如SECS/GEM协议集成)、嵌入式Ruby、Docker容器及macOS Homebrew portable-ruby等受限环境里,RubyGems的运行时契约完整性直 阅读详情

相关推荐

RubyGems 深度解析:Ruby 生态的呼吸系统与依赖治理

RubyGems 是 Ruby 语言原生集成的包管理与运行时加载系统,远不止于‘Ruby 的 npm’。其核心原理涵盖 ABI 版本绑定、约束满足式依赖解析(Molinillo 引擎)、gemspec 元数据驱动的契约机制,以及与 Ruby 解释器深度耦合的加载路径管理。技术价值在于保障语义化版本兼容性、跨平台二进制可移植性及安全可信的依赖分发。广泛应用于 Rails 应用部署、CI/CD 构建流水线、嵌入式固件配置工具等工程场景。本文深入 RubyGems 的环境诊断、依赖图谱生成、gem 发布链路与企业

weixin_34344403的博客 408

解决 libv8 安装失败问题、therubyracer 安装失败问题(CenterOS、MAC、ubuntu)

向上方的报错、或者是 提示我runing gem install libv8 --source…therubyracer -v ‘0.12.3’ – --with-v8-dir=…国内百度了一下,除了删除gem 缓存就没有其他解决方案了,这很不好。1.在安装 gem ‘therubyracer’ 报错了。方案1.我的解决方案 macOS 10.15 系统。按照自带提示安装了一下、没好用。我这里归档了一些解决方案。这里使用你自己的版本号。首先是libv8报错。............

weixin_42800181的博客 1640

在编译 PHP 8.3.8 时遇到 configure: error: Package requirements (libxml-2.0 >= 2.9.0)

在编译 PHP 8.3.8 时遇到错误时,可能是因为pkg-config无法找到libxml2的开发文件或路径。

天地不仁,以万物为刍狗! 2228

关于 安装php 7、8 过程中提示 缺少libxml2依赖问题。

第一步确定是否缺少libxml依赖。 缺少依赖 使用 yum install libxml-dev yum install libxml 进行安装依赖服务。 重新使用./configure 命令依旧提示报错: checking for libxml-2.0 >= 2.7.6... no configure: error: Package requirements (libxml-2.0 >= 2.7.6) were not met: No package 'libxml-2.0' f

Ji_9904092的博客 3330

记录一下源码编译PHP报libxml2的问题

configure PHP的时候,提示如下报错 checking whether to build with LIBXML support... yes checking for libxml-2.0 >= 2.7.6... no configure: error: Package requirements (libxml-2.0 >= 2.7.6) were not met: No...

yanchao963852741的博客 3448

Rapid SCADA MQTT

一、配置RapidSCADA 1、准备KpMqtt.dll、Jint.dll库文件,从网盘下载。 2、将以上两个文件拷贝到SCADA安装目录的Comm/KP目录下,如下: C:\SCADA\ScadaComm\KP 3、新建SCADA项目 4、新建Line 5、新建Device 6、拷贝Config目录下的KpMqtt_001.xml文件、KpMqtt_Job.js文件到项目Comm\Config下,如下示例链接 C:\SCADA\Projects\MQTTProject\Instances\Defau

mumanquan1的博客 3007

PHP源码编译安装

目录编译环境编译过程运行配置运行环境1. 创建php.ini文件2. 创建 php-fpm.conf文件3. 创建 www.conf文件4. 配置连接socket为文件(可选)5. 配置nginx启动phpphp与php-fpm的关系phpphp-fpm小技巧遇到的问题 编译环境 编译机器 Ubuntu 18.04 源码包 https://www.php.net/distributions/php-8.1.5.tar.gz 源码包从何获取?https://www.php.net/releas

一亩田 2404

D触发器(D Flip-Flop)与D锁存器(D Latch)

在解释这个练习题之前,我们先来简单回顾一下D触发器(D flip-flop)和D锁存器(D latch)的概念,以及它们在数字电路中的作用。这将帮助我们理解所提到的练习。

weixin_65190179的博客 9161

windows下Rails应用执行bundle install报错无法安装racc1.5.2

Installing racc 1.5.2 with native extensions Gem::Ext::BuildError: ERROR: Failed to build gem native extension.

小牛bu牛的博客 963

C语言实现AES加解密

C语言实现AES加解密 #include<stdio.h> #include<string.h> #include<time.h> #include<windows.h> #define Nb 4 //数据块行数 #define Nk 4 //密码块行数 #define Nr 10 //轮加密次数 unsigned char RoundKey[4*Nb*(Nr+1)]; //轮密钥 unsigned char Key[17];

qq_44310495的博客 8889

直流耦合系统介绍

参考《SMA如何使用直流耦合技术实现更高效的光伏电站-白皮书》

圆桌骑士的博客 731

ruby gem 安装mysql2_gem安装mysql2 出现编译问题

sudo apt-get install libmysql-ruby libmysqlclient-dev引用Installing mysql2 (0.3.11) with native extensionsGem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension./home/livegamer...

weixin_42470969的博客 251

STM32F103VCT6+W5500 TCP 服务端通信

STM32F103VCT6 W5500的TCP连接通讯的程序

坚韧与专注 7818

Redhat安裝 nokogiri 時要求升級 libxml2

安裝 nokogiri 時出現以下錯誤信息: Installing nokogiri (1.5.0) with native extensions /opt/oracle/otk/home/.rvm/rubies/ruby-1.9.2-p290/lib/ruby/site_ruby/1.9.1/rubygems/installer.rb:552:in `rescue in block in bu...

whz110的专栏 156

Cadence PSpice 仿真0:绘制电路图方法图文教程

在使用PSpice进行电路的仿真时,首先需要使用带有PSpice模型的元器件来绘制电路图,本文简单介绍进行电路图绘制是常用的几种需要掌握的方法,以满足PSpice仿真绘制简单电路图所用。

fydar的博客 4703

FastAPI 高级特性:同异步路由函数、依赖注入与后台任务

在现代 Web 开发中,高效的性能和简洁的代码结构是至关重要的。FastAPI 作为一个现代、快速(高性能)的 Web 框架,凭借其对异步编程的原生支持和直观的依赖注入系统,迅速成为开发者的热门选择。在本文中,将深入探讨 `FastAPI` 中的几个核心概念:同异步函数的区别、`Depends` 依赖以及后台任务。

qq_43629857的博客 203

Ubuntu 16.04 搭建 Jekyll 开发环境实战指南

Jekyll 是基于 Ruby 的静态网站生成器,其运行依赖于特定版本的 Ruby 运行时、Gem 包管理机制及 Bundler 依赖协调工具。在老旧但仍在长期支持(ESM 至 2026)的 Ubuntu 16.04 系统上,系统默认 Ruby 2.3.1 无法满足 Jekyll 最低要求(Ruby ≥ 2.5.0),必须通过 rbenv 构建用户级 Ruby 环境,并借助 Bundler 锁定 gem 版本链以规避依赖冲突。该方案不仅解决兼容性问题,更体现静态站点工程中‘最小可靠栈’的设计哲学——强调环境

weixin_34252686的博客 396

文献综述三大痛点用AI轻松解决!借助Gemini 3 Pro搞定检索难、阅读慢、框架乱问题(附 AI 提示词)

4)“漏斗式”结构:先介绍宏观领域的研究现状,再缩小范围,聚焦于与你课题直接先关的子领域,深入探讨与你研究变量直接相关的文献, 指出前人没做过、没做全或结论有矛盾的地方,再顺势提出你的研究课题,这种结构逻辑最清晰,能直接引导读者发现你研究的必要性。想要有针对性的搜到相关文献,必须先把模糊的研究题目拆解成精准的检索语言,这个时候就需要建立一个关键词矩阵,如核心词、同义词、学术术语、上下位词,以及对应的英文表达。请围绕【我的研究主题/关键词】,检索近5年发表的高被引的中英文文献,优先选择顶刊综述/论文。

智能AI让学术科研更容易 277

install nokogiri error

sudo gem install nokogiri Building native extensions. This could take a while... ERROR: Error installing nokogiri: ERROR: Failed to build gem native extension. /usr/bin/ruby1.8 extconf...

dingchunlai 198

VB摄像头监控

该VB模块可对摄像头捕获的画面进行录像等,可在创建的窗口进行控制

visio安装包

Microsoft Office Visio 是一款专业的制图软件。利用经过更新的形状、协作工具和数据链接图表,创建专业级图表以简化复杂的信息。

Gem::Installer::ExtensionBuildError: ERROR: Failed to build gem native extension.

Red Hat / CentOS The easiest way to get Nokogiri installed on CentOS and RHEL seems to be the EPEL repository which contains a prebuilt nokogiri package. To use it, install the appropriate epel-

u011345213的专栏 1846

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

php8.4.3源码安装 configue配置遇到错误 checking for libxml-2.0 >= 2.9.4... noconfigure: error: Package require

当你在编译安装软件(如 PHP)时遇到这个错误,表明系统中libxml2库的版本低于软件编译所需的最低版本要求(2.9.4)。

xuwei1210的博客 1057

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

Linux(centos8):编译安装php8.0正式版并启用jit及php8安装时的报错处理(centos8.2 / php8.0.0 )inux(centos8):编译安装php8.0正式版并启用

今天是php8.0.0正式版发布的第一天, php8也是第一次引入jit特性, php8正式版在生产环境应该如何安装? jit特性应该如何开启?本文供大家参考 一,下载并解压php8.0.0正式版的安装包: 1,下载 [root@kubemaster source]# wget https://www.php.net/distributions/php-8.0.0.tar.gz 2,解压 [root@kubemaster source]# tar -zxvf php-8.0....

firstcode666的博客 4270

树莓派docker安装lnmp

【超详细】Docker 配置 nginx、php-fpm、mysql 、phpmyadmin_docker php-fpm-优快云博客 https://blog.csdn.net/nexttrial/article/details/119458277。打包成一个镜像,打包好之后他不不会自动,但是有我们的启动文件,所以利用 Dockerfile 可以打包成调用上面自定义里面的那个可以执行的启动脚本,可以自动启动我们的php-fpm。里面有我们的php-fpm 和一个启动脚本,都是没被调用,不会自己启动。

cyuyan的专栏 1120

windows安装ruby rails报错

Fetching mimemagic 0.3.10 Installing mimemagic 0.3.10 with native extensions Gem::Ext::BuildError: ERROR: Failed to build gem native extension. current directory: C:/Ruby26/lib/ruby/gems/2.6.0/gems/mimemagic-0.3.10/ext/mimemagic C:/Ruby26/bin/ruby.exe -r.

661

在linux中安装应用程序时出现的问题

1、centos5.5里安装软件时发现了访问权限的问题: SELinux和iptables cannot restore segment prot after reloc: Permission denied ############################ 在red hat linux上安装有些东西时会出现 Permission denied 的情况:以

zhaoxinglei0309的专栏 3760
上一篇: The last packet successfully received from the server was 1,266,537 milliseconds ago. The last pack
下一篇: 图解G1
java1993666
博客等级 码龄11年 22粉丝 29原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值