GCC + Python + Pip install errors got me like, "i can't even"

In my free time, I have been trying to pick up working on my side project, techconferenc.es again. However, I couldn’t even seem to simply pip install -r requirements.txt without getting errors.

error: command 'gcc-4.9' failed with exit status 1

This error has been tripping me up for so long! Googling for hours on the weekend, racking my head about what could possibly fix this, and trying every solution I found. Nothing.

Until, I found this blog post after the 321934th Google search pertaining to this issue. Apparently it’s a temporary fix, but OMG IT WORKED.

ARCHFLAGS=-Wno-error=unused-command-line-argument-hard-error-in-future

See the post here: Fix ‘clang: unknown argument’ error after updating to Xcode 5.1

So I just made a Ghost droplet on Digital Ocean, now what?

So I have been wanting to start a new blog for a while now. Being out of the blogging world for a bit, I knew there were some new options out there for a blogging platform. Jekyll has been my go-to choice for simple, static sites or blogs. I knew I needed something more powerful however.

I was just about to install Wordpress on my shared hosting server at Eleven2, a host I have been with for years. But then, I decided on a whim to try out Ditigal Ocean instead. Upon seeing their Ghost offering, I said “what the hell” and tried it out.

Here are some things I learned:

  • Ghost doesn’t have great documentation. At least, I feel like I couldn’t get a sense for it’s features from it’s site. It just pushes you to buy hosting from them with ghost pre-installed.

  • Ghost runs on node.js; if you’ve never used it then good luck (I’ve never used it before now)

  • Say good bye to FTP and navigating your files traditionally! Command line and SFTP is your new best friend. And did you know that ssh and sftp via the command line is not the same thing? You have to use the command line to interface with your server. (I’ve only done this a handful of times)

  • Ghost themes run on handlebars, .hbs files. (I’ve never used it before now)

And now, I guess the next thing to do is install Ghost locally and figure out how to theme with it.

Jekyll, WHY U NO LIVERELOAD (or, How to get Jekyll to play nice with LiveReload)

I have been a believer in LiveReload and its counterparts for a while now. It’s completely changed my development process and experience. Other than built-in rails preprocessing, I exclusively use LiveReload.

Anyways, I only update this site once every few months so the annoyance of not having styles reinjected was fine to deal with. (Jekyll regenerates the _site folder in a way that makes LiveReload impossible to reload the styles without a hard page refresh)

I’m refactoring the code to use neat instead of susy and figured I might as well figure out a solution to the problem I’ve been having.

Possible solutions include:

Don’t use the built-in Jekyll server

Idea came from this post. Seems like an interesting solution, possibly the easiest. Except I couldn’t get that to work. Note: this command is the best thing ever invented, try it! python -m SimpleHTTPServer 4000

Use the Jekyll-assets gem

I took a peek at the source of Tim Smith’s site and saw he was using this gem.

After much googling and fighting with installing the gem, finally I got it working. So I ended up ditching guard and guard-livereload, in favor of the LiveReload Mac app. I know, I know. It does a hard reload of the page 0.5 seconds after it detects changes.

I let jekyll-assets compile my sass, which works pretty well because you can include third-party resources, like bootstrap, compass, bourbon, etc. I was able to delete my Guardfile and config.rb.

My Gemfile looks like this:

gem 'jekyll', '~> 2.1.0'
gem 'jekyll-assets', ~> '0.8.1'
gem 'bourbon', '~> 4.0.2'
gem 'neat', '~> 1.6.0'

ext.rb

require "jekyll-assets"
require "jekyll-assets/bourbon"
require "jekyll-assets/neat"

piece of my config.yml

# Plugin: jekyll-assets
assets:
  sources:
    - assets/sass
    - assets/stylesheets
    - assets/images

  css_compressor: sass
  cachebust: hard
  cache: false
  gzip: [ text/css, application/javascript ]
See the archives