michaelbrooks / uw-message-coding

Early prototype of a web-based message coding tool.
MIT License
2 stars 1 forks source link

Adding FAQ to Readme.md #27

Open nanchenchen opened 9 years ago

nanchenchen commented 9 years ago

just want to start an issue for FAQ.

nanchenchen commented 9 years ago

I spent 2 hours trying to set it up on my home machine but I could not started the VM. It turned out that I have to turn on virtualization in my BIOS...Orz|||

How did I figure that out? => I accidentally started VM via Virtualbox GUI interface and it gave me the message "vt-x/amd-v hardware acceleration is not available on your system". Without getting that message accidentally, I could have spent more time trying to figure out the problem since Vagrant makes the machine status "on" in Virtualbox GUI but it is actually not. And it kept giving me the messages related to ssh problems.

michaelbrooks commented 9 years ago

Yes, I had that problem on one of my windows machines before I eventually saw the same error message. I suppose there might be an even easier or less error-prone way of getting it set up but I don't know what it might be.

This is a problem often encountered with Vagrant:

michaelbrooks commented 9 years ago

There are two issues with running Virtualbox VMs with Vagrant on Windows, since we are using Node.js:

People have been complaining about these problems for a while.

The first is more commonly encountered and easier to work around. This can be solved by running npm with a special flag: npm install --no-bin-links. This is already being done when needed in our setup script.

The second issue requires the following workarounds:

  1. Add special flag in Vagrantfile to enable symlinks (this is already done)
  2. When you run vagrant up, use an administrator shell. This makes Virtualbox enable symlinks. Coincidentally this also solves the first issue.
  3. On the guest machine, run this:

    cd ~/uw-message-coding && mkdir ~/node_modules && ln-s ~/node_modules node_modules

    This will create a node_modules folder above the project and outside the windows share and symlink to it from the project folder, tricking npm. Note that this is done automatically during the creation of new vagrant machines. Thus, only the 2nd step above would actually be required.