Difference between revisions of "Installation of PIONE"

From EosPedia
Jump to: navigation, search
(If ruby/gem is installed)
(PIONE install example)
 
(14 intermediate revisions by the same user not shown)
Line 22: Line 22:
 
<br>
 
<br>
  
 +
== Installation ==
 +
=== When [[ruby]]/gem has been installed ===
 +
 gem in [[ruby]] does work in the installation。Installation is done in the same directory as gem. When /usr/local or /sw/ are destinations, the administrator must do the installation.
 +
<br>
 +
<br>
  
 +
<pre>
 +
$ gem install pione
 +
</pre>
 +
<br>
  
== If ruby/gem is installed ==
+
 On update,
  
 You can install PIONE by using functions of gem in ruby. It use /usr/local and /sw/ when install, therefore the privileges of the user who install need to be an administrator. Currently, only 1.9 version can work. Consequently, it may need gem1.9 depending on the version of ruby/gem.
+
<pre>
 +
$ gem update pione
 +
</pre>
  
$ gem install pione
+
<br>
or
+
<br>
$ gem1.9 install pione
+
  
 If you want to update, try running the following.
+
== Installing directly from github ==
  
  $ gem update pione
+
 Download POINE from github.
or
+
<pre>
  $ gem1.9 update pione
+
  $ git clone https://github.com/pione/pione.git
 +
</pre>
 +
<br>
 +
  Update by bundle.  
 +
<br>
 +
Firstly, check if you have "bundle". If yes, you will see a line including bundle <br>
 +
<pre>
 +
$ which bundle
 +
/Eos/util/X86MAC64/bin/bundle
 +
</pre>
 +
<br>
  
== In case to install directly from github ==
+
Secondly, update bundle, if you have it. It is to be noted that the bundle install command is run in /pione, or
 +
set its path beforehand (Gemfile, vender/bundle and files below it are necessary). <br>
 +
<pre>
 +
$ cd pione
 +
$ bundle install --path vender/bundle
 +
</pre>
  
 Download POINE form github.
+
<br>
 
+
$ git clone https://github.com/pione/pione.git
+
$ bundle install --path vender/bundle
+
  
 
=== Setting environment ===
 
=== Setting environment ===
Line 53: Line 75:
  
 
 or running pione/misc/env.sh is able to set the environment.
 
 or running pione/misc/env.sh is able to set the environment.
 +
 +
<br>
 +
 You may well have  this setting to be performed after your shell starts, as in [[Setting environment of Eos]].<br>
 +
 Those environment variables, and commands such as bundle install, are not needed on install. <br>
 +
<br>
 +
 +
 +
=== Installation with  [[PIONE Webclient]], using a installation shell ===
 +
 +
The following commands can be used to start a shell for installation.
 +
 +
$ wget -q -O - https://raw.githubusercontent.com/pione/pione-webclient/master/install.sh | sh
 +
 +
If wget is not available, using curl,
 +
 +
$ curl https://raw.githubusercontent.com/pione/pione-webclient/master/install.sh | sh
 +
 +
 However, you need [[ruby]]/gem/bundler([[ruby]] tool)for this. Install [[ruby]]/gem, if you have not.
 +
When gem has been installed, but not bundler, you can install using gem. You input the following beforehand.
 +
 +
$ sudo gem install bundler
 +
<br>
 +
 +
=== Check the install ===
 +
 +
Submit the following command [[commands]] to check if the install of [[PIONE]] was OK.<br>
 +
<pre>
 +
$ pione -v
 +
pione 0.5.0
 +
</pre>
 +
<br>
 +
To run [[PIONE]] and [[PIONE Webclient]]、refer to [[PIONE starting]]。<br>
 +
<br>
  
 
== The problem about install ==
 
== The problem about install ==
Line 67: Line 122:
  
 
 bundle can be installed by gem.
 
 bundle can be installed by gem.
 
+
 
 +
=== An error and how to get around ===
 +
An error message:
 +
<pre>
 +
$ bundle install --path vender/bundle
 +
 
 +
Could not load OpenSSL.
 +
You must recompile Ruby with OpenSSL support or change the sources in your Gemfile from 'https' to 'http'. Instructions
 +
for compiling with OpenSSL using RVM are available at http://rvm.io/packages/openssl.
 +
</pre>
 +
<br>
 +
 
 +
may suggest that OpenSSL is not included in [[ruby]] that you use. Use irb command as below. (if [[Ruby TIPS#irb]])is not included, you may have to recompile [[ruby]]。<br>
 +
<br>
 +
An example when not included in [[ruby]]<br>
 +
<pre>
 +
$ irb
 +
irb(main):001:0> require 'openssl'
 +
LoadError: libssl.so.0.9.8: cannot open shared object file: No such file or directory
 +
</pre>
 +
<br>
 +
 
 +
When included in [[ruby], you will see "true"。<br>
 +
<pre>
 +
$ irb
 +
irb(main):001:0> require 'openssl'
 +
=> true
 +
</pre>
 +
<br>
 +
 
 +
=== Compilation of [[ruby]] ===
 +
 Compilation of [[ruby]] is described. <br>
 +
<br>
 +
 
 +
==== Checking of autoconf ====
 +
 Check if you have installed autoconf, which is used for compilation.<br>
 +
<pre>
 +
$ which autoconf
 +
/usr/local/bin/autoconf
 +
</pre>
 +
<br>
 +
 
 +
If not installed, you download its zipped form from [http://savannah.gnu.org/projects/autoconf Autoconf - summary], unzip, and compile as sown below.(Note: a diff file is only a difference. You download the most recent version, which is other than the diff file.)<br>
 +
<pre>
 +
cd (directory having autoconf)
 +
./configure
 +
make
 +
make install
 +
</pre>
 +
<br>
 +
 
 +
==== Checking the libraries ====
 +
Before compilation, you check if you have all the necessary libraries .In case of openssl described above,  you need to have openssl to be installed. When [[Eos]] has been installed, all the libraries are under the [[Eos]]directory.  Update those according to [[Downlaod#Update by make|Eos update]].You can find the libraries in /Eos/hostdepend/X86MAC/util/X86MAC/(In case of Mac). For a quick update, you visit [http://sourceforge.jp/projects/eos/scm/git/base/tree/master/hostdepend/], select your OS, download only util directory, and then update.<br>
 +
<br>
 +
 
 +
==== Download and install ====
 +
After installing the libraries, download the source code of your choice version from [https://www.ruby-lang.org/ja/ オブジェクト指向スクリプト言語 Ruby]. (Version numbers greater than or equal to 1.9.2, and less than 2.0.0)<br>
 +
<br>
 +
You complile the source code as below。<br>
 +
<br>
 +
How you compile (Do this at the root directory of the source code)<br>
 +
<pre>
 +
$ autoconf
 +
$ ./configure --prefix="(absolute path of your destination directory)"
 +
$ make
 +
$ make install
 +
</pre>
 +
(Note) The destination directory(where you can find bin and lib directories)should be given in the absolute path。When you update [[ruby]] from within Eos, you have to be careful. This is because${EOSHOME}/util/${EOS_HOSTDIR} and directories below it are linked to ${EOS_HOME}/hostdepend/${EOS_HOSTDIR}/util/${EOS_HOSTDIR}.(Refer to :[[よく使うシェルコマンド#pwdによる注意事項]])<br>
 +
<br>
 +
 
 +
==== Check the update ====
 +
When those commands are successful, check if the version number and the libraries have been updated as shwon below. <br>
 +
<pre>
 +
$ ruby -v
 +
ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-darwin12.5.0]
 +
$ gem -v
 +
1.8.23.2
 +
/Eos$ irb
 +
irb(main):001:0> require 'openssl'
 +
=> true
 +
</pre>
 +
<br>
 +
 
 +
 
 +
=== [[PIONE]] install example ===
 +
<pre>
 +
Install YAMLand others.
 +
 +
Install (compile) Ruby (greater than 1.9.2, but less tahn 2).
 +
 +
Install bundle by gem.
 +
 +
Install PIONE by gem.
 +
 +
Install PIONE Webclient.
 +
</pre>
 +
<br>
 +
 
 +
== Notes on the update ==
 +
 [[PIONE]] update can be done in two ways, via github and via gem. The update via github requires that [[PIONE]] is downloaded/installed from github beforehand. The update via gem is possible if you have [[ruby]], [[gem]], [[bundle]]. Both updates make your version the newest.  In the gem use, its update reflects the data immediately after a verion up. In the github use, this update reflects the source code changes. Therefore, github is recommended when you like to check very new bug corrections.<br>
 +
<br>

Latest revision as of 04:41, 24 May 2017

Installation of PIONE

Introduction

 PIONE is based on ruby, gem, bundle. Check if ruby, gem, bundle have been installed。ruby should have a version number greater than or equla to 1.9.2. Versions and installed directories of ruby, gem, bundle can be checked as bellow. If Eos has been installed previously, they may be found under the Eos directory. If the directories are not the same, PIONE may have problems in installation and execution. It is recommended that they are in the same directory.

$ which ruby
/Eos/util/X86MAC64/bin/ruby
$ which gem
/Eos/util/X86MAC64/bin/gem
$ which bundle
/Eos/util/X86MAC64/bin/bundle
$ ruby -v
ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-darwin12.5.0]
$ gem -v
1.8.23.2
$ bundle -v
Bundler version 1.7.7

If there are more than one ruby/gem, the unused versions should be deleted or renamed like gem1.9

Installation

When ruby/gem has been installed

 gem in ruby does work in the installation。Installation is done in the same directory as gem. When /usr/local or /sw/ are destinations, the administrator must do the installation.

$ gem install pione


 On update,

$ gem update pione



Installing directly from github

 Download POINE from github.

 $ git clone https://github.com/pione/pione.git


Update by bundle. 


Firstly, check if you have "bundle". If yes, you will see a line including bundle

$ which bundle
/Eos/util/X86MAC64/bin/bundle


Secondly, update bundle, if you have it. It is to be noted that the bundle install command is run in /pione, or

set its path beforehand (Gemfile, vender/bundle and files below it are necessary). 
$ cd pione
$ bundle install --path vender/bundle


Setting environment

 Run the following for defining variables of PATH and RUBYLIB.

$ cd ${PIONE_REP}
$ export PATH=$PWD/bin:$PATH
$ export RUBYLIB=$PWD/lib

 or running pione/misc/env.sh is able to set the environment.


 You may well have this setting to be performed after your shell starts, as in Setting environment of Eos.
 Those environment variables, and commands such as bundle install, are not needed on install.


Installation with PIONE Webclient, using a installation shell

The following commands can be used to start a shell for installation.

$ wget -q -O - https://raw.githubusercontent.com/pione/pione-webclient/master/install.sh | sh

If wget is not available, using curl,

$ curl https://raw.githubusercontent.com/pione/pione-webclient/master/install.sh | sh

 However, you need ruby/gem/bundler(ruby tool)for this. Install ruby/gem, if you have not. When gem has been installed, but not bundler, you can install using gem. You input the following beforehand.

$ sudo gem install bundler


Check the install

Submit the following command commands to check if the install of PIONE was OK.

$ pione -v
pione 0.5.0


To run PIONE and PIONE Webclient、refer to PIONE starting

The problem about install

 Currently, working on LINUX/OS-X is sure. But, There is problems on Windows, in relation to implementation of Ruby's Thread.

 In some environments, git/ruby/gem/bundle it may not have been installed git/ruby/gem/bundle and etc... .

 gitcan be installed in each environment (e.g. apt-get/yum). Most packages are supported.

 Currently, about the version of ruby is 1.9.2 of higher and 1.9-generations required. It is a plan that corresponds to the 2.1 in the future. If your LINUX corresponds only version 1.9 of ruby, you need to download the source code and install. Then, ZLIB/YAML is required. First install those, and next install configure/make/make of ruby.

 About gem, install it by downloading rubygems.

 bundle can be installed by gem.

An error and how to get around

An error message:

$ bundle install --path vender/bundle

Could not load OpenSSL.
You must recompile Ruby with OpenSSL support or change the sources in your Gemfile from 'https' to 'http'. Instructions
for compiling with OpenSSL using RVM are available at http://rvm.io/packages/openssl.


may suggest that OpenSSL is not included in ruby that you use. Use irb command as below. (if Ruby TIPS#irb)is not included, you may have to recompile ruby

An example when not included in ruby

$ irb
irb(main):001:0> require 'openssl'
LoadError: libssl.so.0.9.8: cannot open shared object file: No such file or directory


When included in [[ruby], you will see "true"。

$ irb
irb(main):001:0> require 'openssl'
=> true


Compilation of ruby

 Compilation of ruby is described.

Checking of autoconf

 Check if you have installed autoconf, which is used for compilation.

$ which autoconf
/usr/local/bin/autoconf


If not installed, you download its zipped form from Autoconf - summary, unzip, and compile as sown below.(Note: a diff file is only a difference. You download the most recent version, which is other than the diff file.)

cd (directory having autoconf)
./configure
make
make install


Checking the libraries

Before compilation, you check if you have all the necessary libraries .In case of openssl described above, you need to have openssl to be installed. When Eos has been installed, all the libraries are under the Eosdirectory. Update those according to Eos update.You can find the libraries in /Eos/hostdepend/X86MAC/util/X86MAC/(In case of Mac). For a quick update, you visit [1], select your OS, download only util directory, and then update.

Download and install

After installing the libraries, download the source code of your choice version from オブジェクト指向スクリプト言語 Ruby. (Version numbers greater than or equal to 1.9.2, and less than 2.0.0)

You complile the source code as below。

How you compile (Do this at the root directory of the source code)

$ autoconf
$ ./configure --prefix="(absolute path of your destination directory)"
$ make
$ make install

(Note) The destination directory(where you can find bin and lib directories)should be given in the absolute path。When you update ruby from within Eos, you have to be careful. This is because${EOSHOME}/util/${EOS_HOSTDIR} and directories below it are linked to ${EOS_HOME}/hostdepend/${EOS_HOSTDIR}/util/${EOS_HOSTDIR}.(Refer to :よく使うシェルコマンド#pwdによる注意事項)

Check the update

When those commands are successful, check if the version number and the libraries have been updated as shwon below.

$ ruby -v
ruby 1.9.3p551 (2014-11-13 revision 48407) [x86_64-darwin12.5.0]
$ gem -v
1.8.23.2
/Eos$ irb
irb(main):001:0> require 'openssl'
=> true



PIONE install example

Install YAMLand others.
↓
Install (compile) Ruby (greater than 1.9.2, but less tahn 2).
↓
Install bundle by gem.
↓
Install PIONE by gem.
↓
Install PIONE Webclient.


Notes on the update

 PIONE update can be done in two ways, via github and via gem. The update via github requires that PIONE is downloaded/installed from github beforehand. The update via gem is possible if you have ruby, gem, bundle. Both updates make your version the newest. In the gem use, its update reflects the data immediately after a verion up. In the github use, this update reflects the source code changes. Therefore, github is recommended when you like to check very new bug corrections.