Skip to main content

Posts

Showing posts from 2016

Building and installing python3.x with python2.x in Linux

RHEL 6.x doesn't comes with python3. So if any of your project require python3 and also some of the projects need python2 then you may need those 2 version same time in your system. Prerequisite: gcc (C89)/g++ ld ranlib How: 1. Download python3.x package from https://www.python.org/downloads/release/python-343/ 2. Extract it and move inside the package python-3.4.3 $ cd /python-3.4.3 3. Open a console and run the following configure command. We will build python with shared library support as many of the other project will require python3 dynamic library linking. so, configure it by, $ ./configure --prefix=/opt/python3 --enable-shared We are putting build output directory as /opt/python3. 4. After completion now build it by, $ make  5. Then install it by alternate installation by, $ make altinstall 6. Now create a symlink of the newly created python3 binary and copy the shared library to the /lib64/ directory of filesystem. $ ln -s /opt/python3/b...

Various address reachability scope on IPv6 network

IPv6 comes with various IP address terminology which can be assign to a system. Lets simply clarify their name and scope of reachability respect to IPv6.  In general it has four address type one of which is depreciated by RFC standard. 1. Link Local Address (LLA) Description:  Link-local address can be access in directly connected router. Its basically same as IPv4 private address.   2. Unique Local Address (ULA) Description: Unique Local Address(ULA), they will often be advertised by IPv6 home gateways for subscriber local use only, and won't be reachable anywhere outside the home. Unique Local Address (ULA), which is an address that is used for local communication in a site – within a company, within a campus or within a set of networks in branch offices. 3. Site Local Address Description: Deprecated. 4. Global Unicast Address Description:  Global unicast address is basically reachable from anywhere in internet. IPv6 unicast glob...

[MySql] relocation error: /usr/lib64/libmyodbc5.so: symbol strmov, version libmysqlclient_16 not defined

When using myDSN and connection to remote DB(MySQL) this issue arise. Error: : relocation error: /usr/lib64/libmyodbc5.so: symbol strove  version libmysqlclient_16 not defined in file libmysqlclient_r.so.16 with link time reference Cause: this is an issue of back dated odbc-connector. You can check by systems'  isql  command that   it's also returning same error. It's happen when there is a mismatch between the version of,  mysql-connector-odbc-5.1. 5r114 4-7.el6.x86_64.rpm & MySQL-shared-compat-advanced- 5 .6.22-1.el6.x86_64 Solution: Download and install mysql-connector-odbc-5.3.4-1. el6.x86_64.rpm by, wget  http://ftp.kaist.ac.kr/ mysql/Downloads/Connector- ODBC/5.3/mysql-connector-odbc- 5.3.4-1.el6.x86_64.rpm rpm -Uvh mysql-connector-odbc-5.3.4-1. el6.x86_64.rpm And after that change the following file, $ vi /etc/odbcinst.ini [MySQL] Description     ...

[Node.js] https connection return curl: (35) Unknown SSL protocol error

Error: curl: (35) Unknown SSL protocol error Cause: For node.js https connection you are using invalid certificate. Invalid certificate is because the procedure you create the certificate. Solution:  Use the following mechanism to generate certificate and key. openssl req -x509 -sha256 -newkey rsa:2048 -keyout key.pem -out cert.pem -days XXX

[Node.js] Error: EISDIR, illegal operation on a directory at Error (native)

Error: fs.js:552   var r = binding.read(fd, buffer, offset, length, position);                   ^ Error: EISDIR, illegal operation on a directory     at Error (native)     at Object.fs.readSync (fs.js:552:19)     at Object.fs.readFileSync (fs.js:384:28)     at /usr/eyeball/auth_server/js/ server.js:98:15     at Socket.<anonymous> (/usr/eyeball/auth_server/js/ util/process.js:11:5)     at Socket.emit (events.js:129:20)     at _stream_readable.js:908:16     at process._tickCallback (node.js:355:11) This error happen when you use invalid file path for opening and reading using nodejs dependency library fs.  Solution: File must be the file path with the file name. Not the file directory.

[Node.Js] squel.js:167 throw _iteratorError2; ^ ReferenceError: Symbol is not defined

When you are using nodejs on RHEL 6.7 with the following version of default RHEL 6.7 repo, "node":"0.10.41","npm":"1.4. 29" This is basically a version mismatch of squel library with node. So you just need to downgrade the squel version  or upgrade the nodjs version. Upgrading over 0.10.X in RHEL 6.7 is tough without custom build or some online rpm. Error: /usr/eyeball/auth_server/node_ modules/squel/squel.js:167         throw _iteratorError2;               ^ ReferenceError: Symbol is not defined     at _registerValueHandler (/usr/eyeball/auth_server/ node_modules/squel/squel.js: 148:36)     at Object._buildSquel.cls. registerValueHandler (/usr/eyeball/auth_server/ node_modules/squel/squel.js: 294:5)     at _buildSquel (/usr/eyeball/auth_server/ node_modules/squel/squel.js: 1222:7)     at /usr/eyeball/auth_server/n...

[MYSQL] relocation error: /usr/lib64/libmyodbc5.so: symbol strove, version libmysqlclient_16 not defined in file ...

Ok, this is an issue of back dated odbc-connector. You can check by systems'  isql  command that   it's also returning same error. It's happen when there is a mismatch between the version of,  mysql-connector-odbc-5.1. 5r114 4-7.el6.x86_64.rpm & MySQL-shared-compat-advanced- 5 .6.22-1.el6.x86_64 download and install mysql-connector-odbc-5.3.4-1. el6.x86_64.rpm by, wget  http://ftp.kaist.ac.kr/ mysql/Downloads/Connector- ODBC/5.3/mysql-connector-odbc- 5.3.4-1.el6.x86_64.rpm rpm -Uvh mysql-connector-odbc-5.3.4-1. el6.x86_64.rpm And after that change the following file, cat /etc/odbcinst.ini [MySQL] Description             = ODBC for MySQL Driver          = /usr/lib64/ libmyodbc5w.so Setup           = /usr/lib64/libodbcmyS.so Driver64       ...

[PLAY-FRAMEWORK] UnsupportedClassVersionError: com/typesafe/config/ConfigException : Unsupported major.minor version 52.0

[PLAYFRAMEWORK] Using JRE for running java binary/application made of PLAY framework:: On production system its better not to use JDK as it has compiler on it. So only JAVA runtime installation should do the trick for running PLAY-FRAMEWORK based java application. Its basically REST service providing server. So lets see how it is done, code for symbolic link:   $ export JAVA_HOME=/usr/java/jre1.8.0_ 91/   $ export PATH=$PATH:$JAVA_HOME/bin   $ ./your_play_frameworkbased_app All are done in the same console which doesn't store the JAVA HOME on the system path.  If the specified  JRE/JDK version is not available on system path or on execution console then running PLAY framework based application will provide following error trace, Exception in thread "main" java.lang. UnsupportedClassVersionError: com/typesafe/config/ ConfigException : Unsupported major.minor version 52.0     at java.lang.ClassLoader. defineClass1(Native Method...

[HACKERRANK] Problem analysis Manasa and Stone

Problem link: https://www.hackerrank.com/challenges/manasa-and-stones Manasa is out on a hike with friends. She finds a trail of stones with numbers on them. She starts following the trail and notices that two consecutive stones have a difference of either a a or b b . Legend has it that there is a treasure trove at the end of the trail and if Manasa can guess the value of the last stone, the treasure would be hers. Given that the number on the first stone was 0 0 , find all the possible values for the number on the last stone. Note : The numbers on the stones are in increasing order. Analysis: On this problem the questioner is asking for the possible combination of addition of a and b integer in an increasing series and the last number of the series. As it is an increasing series then it is must that either a or b will be added to the next number of the series. So possible combination for the n stone with 2 number (a and b) is 2^n number of solution. But as start...