====== Mac ===== - If you haven't already done so, type the code below into the command line this is because in order to build with a Mac we need to switch Xcode library to the developer library sudo code-select -switch /Applications/Xcode.app/Contents/Developer {{:sudo_switch.png?900|}} - Go to the HomeBrew link, in your browser at: http://brew.sh/ {{ :homebrew_home_page.png?400 | The bottom of the HomeBrew Page}}. There is a command at the bottom of the screen which needs to be run from a terminal command line. To start a terminal go to ''Applications -> Utilities -> Terminal.app''. Homebrew is an Mac OS X Package Manager (PM) that installs the software you need that Apple doesn't provide by default. There are thousands of packages (known as ''formulae'') contributioned by thousands of users. The command is: ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"\\ {{:screen_shot_2015-01-15_at_3.57.58_pm.png?900|}} * **Note:** Any Passwords for installation is admin password for your ''userid'' on the computer - The use Brew to add the [[http://git-scm.com/book/en/v2/Getting-Started-Git-Basics | Git]] which is a distributed revision control system with an emphasis on speed, data integrity, and support for distributed, non-linear workflows. To add Git, use the following command in the terminal window: brew install git {{:screen_shot_2015-01-15_at_4.01.04_pm.png?500|}} - Then install the [[http://nodejs.org/ | Node.js]] software by entering the following command at the terminal prompt: brew install nodejs {{:screen_shot_2015-01-15_at_4.02.27_pm.png?500|}} - Make sure that the app store says that Xcode is installed. See the article [[http://stackoverflow.com/questions/21272479/how-can-i-find-out-if-i-have-xcode-commandline-tools-installed | How can I find out if I have Xcode commandline tools installed?]] - Then install [[http://bower.io/ | Bower]] which helps by fetching and installing packages from all over, taking care of hunting, finding, downloading, and saving the things you’re looking for. Bower keeps track of these packages in a manifest file, ''bower.json''. Copy the following command at the terminal prompt: npm install -g bower {{:bower.png?500|}} - Then install [[http://gruntjs.com/ | Grunt]] which is a task-based command line build tool for JavaScript projects. Copy the following command at the terminal prompt: npm install -g grunt-cli {{:grunt.png?500|}} - Then install the [[https://github.com/rogerwang/node-webkit | node-webkit]] which is an app runtime based on Chromium and node.js. You can write native apps in HTML and JavaScript with ''node-webkit''. It also lets you call Node.js modules directly from the DOM and enables a new way of writing native applications with all Web technologies. Copy the following command at the terminal prompt: npm install -g nodewebkit@0.8.6 {{:nodewebkit.png?500|}} - Then install the [[https://github.com/rogerwang/nw-gyp | nw-gyp]] which is a hack on node-gyp to build native modules for node-webkit. We are trying to provide a smooth way for developers rather than specifying a lot of command line arguments. Copy the following command at the terminal prompt: npm install -g nw-gyp {{:nw-gyp.png?500|}} - Then use GIT to clone the sbvrteam repository to your local machine. Copy the following command at the terminal prompt: git clone https://[username]@bitbucket.org/sbvrteam/sbvr.git - Then using GIT check out the 32 bit SBVR developed for the MAC OS X (this will still work for all versions before) version of the editor. Copy the following command at the terminal prompt: git checkout macosx32 {{:gitcheckout.png?500|}} - Then use the command line to verify that the folder ''client'' is there. First change directory (''cd'') to the client sub-directory, if it is there, then install ''bower'' and finally, if that is successful, then install ''npm''. Copy the following command at the terminal prompt: cd sbvr/client && bower install && npm install {{:cd_sbvr:client.png?700|}} - Then use the command line to change directory into app directory and install ''npm''. cd app npm install {{:appnpm.png?500|}} - now we need to build both the NodeJS Foreign Function Interface (FFI) and ref module. [[https://github.com/node-ffi/node-ffi/wiki/Node-FFI-Tutorial | ''node-ffi'']] provides a powerful set of tools for interfacing with dynamic libraries using pure JavaScript in the Node.js environment. It can be used to build interface bindings for libraries without using any C++ code. Copy the following command at the terminal prompt: cd app/node_modules/ffi {{:screen_shot_2014-11-16_at_8.44.30_pm.png?500|}} - Then we need to build the FFI modules for the SBVR editor with NodeWebKit nw-gyp rebuild --target=0.8.6 --arch=ia32 {{:nw-gyp_rebuild.png?700|}} - Then build [[https://github.com/TooTallNate/ref | ''ref'']] module using Node.js fast Buffer instances instead of a slow C++ Pointer class. These two concepts were previously very similar, but now this module brings over the functionality that Pointers had and Buffers are missing, so now Buffers are a lot more powerful. Copy the following command into the terminal window cd ../ref {{:ref.png?400|}} - Then we need to build the REF modules for the SBVR editor with NodeWebKit nw-gyp rebuild --target=0.8.6 --arch=ia32 {{:nw-gyp_ref.png?700|}} - Then in the command terminal type in the code below to change directory back into the client in order to move into the node module and then ref directory cd client/node_modules/ref {{:client:node.png?500|}} - Then we need to build the REF modules for the SBVR editor with NodeWebKit nw-gyp rebuild --target=0.8.6 --arch=ia32 {{:nw-gyp_ref.png?700|}} - If you have developer access, cd back to sbvr folder and ls the directory. Make sure that gitignore does not have .conf at the end so that we arent messing up the repository mv gitgnore.conf .gitgnore{{:screen_shot_2014-11-16_at_8.35.47_pm.png?500|}} - type cd then copy the code below or you can open a new terminal mv usr/local/lib/node_moudles/nodewebkit/package.json usr/local/lib/node_moudles/nodewebkit/_package.json {{:json.png?900|}} - cd ../client and type the following code, this will build the SBVR editor and apply the changes done. scripts/build {{:screen_shot_2014-11-16_at_9.01.03_pm.png?500|}} - While we are still in the Client directory we start the SBVR editor by copying the code into the command line. scripts/starteditor {{:screen_shot_2014-11-16_at_9.10.02_pm.png?500|}} ====== Linux ====== ====== Windows ======