之前一直用的windows电脑,突然间切换成mac,各种不习惯,刚开始的时候连文件夹都找不到,悲催……

还好,熟悉了两天之后,基本上也能够操作了。

然后就是安装各种开发软件,由于个人习惯了使用sass开发css,所以使用命令行安装了sass,可是当安装compass的时候,悲剧发生了。

一直提示:

Building native extensions.  This could take a while...
ERROR: Error installing compass:
ERROR: Failed to build gem native extension. current directory: /Library/Ruby/Gems/2.0.0/gems/ffi-1.9.17/ext/ffi_c
/System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/bin/ruby -r ./siteconf20170302-3213-i36x9b.rb extconf.rb
mkmf.rb can't find header files for ruby at /System/Library/Frameworks/Ruby.framework/Versions/2.0/usr/lib/ruby/include/ruby.h extconf failed, exit code 1 Gem files will remain installed in /Library/Ruby/Gems/2.0.0/gems/ffi-1.9.17 for inspection.
Results logged to /Library/Ruby/Gems/2.0.0/extensions/universal-darwin-16/2.0.0/ffi-1.9.17/gem_make.out

然后就是各种求助,也搜索了很多解决方案,可是真的,没有完全解决。知道在知乎上看到一个答案

先xcode-select --install, 再sudo gem install compass, 然后compass -v 看到版本号,说明成功了,自 Xcode 5.0 开始,安装 Xcode 的命令行工具

然后就是命令行执行xcode-select --install,不幸的是,又提示安装xcode软件,没办法,只能安装软件咯!

漫长的下载时间,终于安装好之后,执行命令

Building native extensions.  This could take a while...
[[ASuccessfully installed ffi-1.9.17
Fetching: rb-inotify-0.9.8.gem (100%)
Successfully installed rb-inotify-0.9.8
Fetching: compass-1.0.3.gem (100%)
ERROR: While executing gem ... (Errno::EPERM)
Operation not permitted - /usr/bin/compass

就是说依然安装失败,然后仔细看看这段报错提示, Operation not permitted - /usr/bin/compass  就是说/usr/bin/compass这个文件夹禁止操作,之前二次安装sass的时候,遇到过类似的提示,那就执行 sudo gem install -n /usr/local/bin compass

终于提示安装成功了。反复折腾当中,对这几个安装命令都比较熟练了。

  

Mac安装compass失败的原因的更多相关文章

  1. 【解决】安装compass失败(gem install compass)

    原始日期:2016-01-25 16:26 这个问题比较常见.   很多人在安装ruby后再使用gem install compass命令安装compass,发现安装失败.     [解决方法:] / ...

  2. mac安装webpack失败

    最近开始接触构建工具webpack,公司电脑是 windows,而我自己的呢是mac.本来以为在自己电脑安装很简单,但是出了点问题,所以写出来分享下. 这里用npm的方式安装,首先你要安装node.j ...

  3. Ubuntu上pip安装uwsgi失败的原因之一(未联网)

    ubuntu@ubuntu:~$ sudo pip install uwsgi 报错:The directory '/home/ubuntu/.cache/pip/http' or its paren ...

  4. mac 安装mvn 失败

    安装过程遇到2个问题 1.java版本不对 2.Error: JAVA_HOME is not defined correctly. We cannot execute $/usr/libexec/j ...

  5. Windows 2008 R2 64位上安装wamp失败的原因

    Exception Exception in module wampmanager.exe at 000F15A0... 因测试PHP程序需要,需要在windows系统上布署WAMP环境测试程序,对性 ...

  6. mac 安装yarn失败

    转载:https://www.jianshu.com/p/d4298239e1e4, yarn 下载一些包的时候总是报错,在控制台执行下面的语句后可以下载,具体原因尚未清楚待研究 git config ...

  7. CAD安装激活失败的原因

    1.如何激活的流程我就不赘述了,直奔主题!当出现“未激活”界面时,点击激活,跳出如图所示的窗口.复制“申请号”. 2.“以管理员身份运行”CAD注册机(示例的注册机是CAD2013 32位).这就是注 ...

  8. 安装ruby compass失败

    安装compass失败 ERROR: Could not ), here is why: Unable to download data from https://rubygems.org/ - SS ...

  9. 2018最新win10 安装tensorflow1.4(GPU/CPU)+cuda8.0+cudnn8.0-v6 + keras 安装CUDA失败 导入tensorflow失败报错问题解决

    原文作者:aircraft 原文链接:https://www.cnblogs.com/DOMLX/p/9747019.html 基本开发环境搭建 1. Microsoft Windows 版本 关于W ...

随机推荐

  1. CF 316G3 Good Substrings——广义后缀自动机

    题目:http://codeforces.com/contest/316/problem/G3 对询问串和模式串一起建一个后缀自动机,做出在每个串上的 right 集合大小之后枚举自动机上的每个点看看 ...

  2. Jmeter使用流程及简单分析监控

    本文摘自:一颗糖果   https://www.cnblogs.com/linglingyuese/archive/2013/03/04/linglingyuese-one.html 1.下载Jmet ...

  3. Go并发控制--context的使用

    并发控制 Cancel Example 通过使用WithCancel可以取消一个或多个goroutine的执行,以实现对并发的控制. package main import ( "conte ...

  4. C# 生成指定N位随机码

    /// <summary> /// 获取随机码 /// </summary> /// <param name="length">长度</p ...

  5. SpringMVC和Struts是线程安全的吗?为什么?

    线程不安全的.(其实我觉得回答为:存在线程安全问题 这样比较好点) 原因如下: 第一点,先理解为何线程不安全 1 struts1的action是单例的,所以存在线程安全问题(struts2是多例的,不 ...

  6. max_result_window

    PUT http://192.168.1.12:9200/_settings { "index": { "max_result_window": "1 ...

  7. 关于Quad PLL /CPLL参考时钟的选择

    关于Quad PLL /CPLL参考时钟的选择 1.参考时钟 2.channel PLL具体分析 CPLL端口描述 一张图说清了时钟为怎么被分成了north or south

  8. 内存共享【Delphi版】

    一.原理     通过使用“内存映射文件”,实现内存共享 二.主要操作     共享内存结构: PShareMem = ^TShareMem; TShareMem = Record id:string ...

  9. Delphi实现树型结构

    unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms ...

  10. Java多线程编程——并发编程原理(分布式环境中并发问题)

    在分布式环境中,处理并发问题就没办法通过操作系统和JVM的工具来解决,那么在分布式环境中,可以采取一下策略和方式来处理: 避免并发 时间戳 串行化 数据库 行锁 统一触发途径 避免并发 在分布式环境中 ...