KDB+ installation on Linux error 'No such file or directory'

Hi All,

I have downloaded the Linux package (Personnel edition) from KX Community workshop files and setting up Q in my PC(virtual machine) but not able to run it on red hat Linux .

I am trying to launch the ‘q’ executable under q/l32/q  and keep getting a ‘No such file or directory’ message.

 

Please any help will be appreciate.

Below is the issue details:

[root@oracle ~]# uname -anu

Linux oracle 2.6.18-128.el5 #1 SMP Wed Dec 17 11:42:39 EST 2008 i686 i686 i386 GNU/Linux

[root@oracle ~]# cd ..

[root@oracle /]# cd q

[root@oracle q]# ls

l32  q.k  s.k  Workshop

[root@oracle q]# cd l32

[root@oracle l32]# ls

q

[root@oracle l32]# ls -ltr

total 560

-rwxr-xr-x 1 root root 569168 Nov 12  2015 q

[root@oracle l32]# q

bash: /l32/q: No such file or directory

Thanks

Neetha

Have you set QHOME?

export QHOME=/q

but yeah the error is a bit weird


From: personal-kdbplus@googlegroups.com <personal-kdbplus@googlegroups.com> on behalf of neethakdb@gmail.com <neethakdb@gmail.com>
Sent: August 20, 2016 1:07 AM
To: Kdb+ Personal Developers
Subject: [personal kdb+] KDB+ installation on Linux error ‘No such file or directory’
 

Hi All,

I have downloaded the Linux package (Personnel edition) from KX Community workshop files and setting up Q in my PC(virtual machine) but not able to run it on red hat Linux .

I am trying to launch the ‘q’ executable under q/l32/q  and keep getting a ‘No such file or directory’ message.

 

Please any help will be appreciate.

Below is the issue details:

[root@oracle ~]# uname -anu

Linux oracle 2.6.18-128.el5 #1 SMP Wed Dec 17 11:42:39 EST 2008 i686 i686 i386 GNU/Linux

[root@oracle ~]# cd ..

[root@oracle /]# cd q

[root@oracle q]# ls

l32  q.k  s.k  Workshop

[root@oracle q]# cd l32

[root@oracle l32]# ls

q

[root@oracle l32]# ls -ltr

total 560

-rwxr-xr-x 1 root root 569168 Nov 12  2015 q

[root@oracle l32]# q

bash: /l32/q: No such file or directory

Thanks

Neetha


Submitted via Google Groups

as david said - weird.

usually this sort of error happens when running 32bit kdb+ in 64bit linux, and googling your error message shows the solution.  but your uname shows a 32bit system..

double check:
[root@oracle l32]# ./q (note dot slash)

but it appears you have path set to /q/l32 already?

HI David,

Thanks for response.

I am new to Linux and bit difficulty understanding 

where to set export QHOME=/q in /etc/Profile or /etc/bashrc and how to set it?

Currently i have set in .bashrc in before changing directory to /q/l32 folder.

and unable to find save option in editor after setting environment variable.


please any help is appreciated.


Thanks & Regards

Neetha

Hi Effbiae,

Thanks for response.

in response to david i have explained details.

i have tried with ./q as well with no luck.

please any help will be appreciated.

Thanks & Regards

Neetha

Try uname -m, if the output is x86_64, then you will have to install 32-bit libs/loader to run any 32-bit application.

Here are the steps:

  1. sudo apt-get install gcc-multilib

  2. sudo apt-get install lib32ncurses5

  3. sudo apt-get install lib32z1

  4. sudo apt-get install ia32-libs

One of them will surely work.

try this command to check you are really on 32-bit.  let me know the output/error from this:

 $ echo ‘int printf(char*,…);int main(){printf(“hello\n”);}’ >t.c;gcc -m64 t.c -o t; ./t

Hi,

Thanks , i got below output.

[root@oracle ~]# uname -m

i686

i don’t know may be it’s setting environment variables giving me issue.

Thanks & Regards

Neetha

hi effbiae,

Getting below error:

[root@oracle /]# $ echo ‘int printf(char*,…);int main(){printf(“hello\n”);}’ >t.c;gcc -m64 t.c -o t; ./t

bash: $: command not found

t.c:1: sorry, unimplemented: 64-bit mode not compiled in

bash: ./t: No such file or directory

Thanks & Regards

Neetha

Well, you definitely seem to be on a 32bit system.

what does

$ ldd /q/l32/q

give you?  (leave out the $ sign - it just signifies this is a shell command)

Hi Jack,

output for the below command is :

[root@oracle ~]# idd /q/l32/q

bash: idd: command not found

Thanks & Regards

Neetha

>idd

that should be ldd, not idd.. 
i think you might need some help from someone who knows a little linux.

best, jack

Hi Jack,

below i the output:

[root@oracle ~]# ldd /q/l32/q

        linux-gate.so.1 =>  (0x004b0000)

        libm.so.6 => /lib/libm.so.6 (0x00617000)

        libnsl.so.1 => /lib/libnsl.so.1 (0x00a8b000)

        libdl.so.2 => /lib/libdl.so.2 (0x00640000)

        librt.so.1 => /lib/librt.so.1 (0x00900000)

        libpthread.so.0 => /lib/libpthread.so.0 (0x00646000)

        libc.so.6 => /lib/libc.so.6 (0x004d1000)

        /lib/ld-linux.so.2 (0x004b3000)

Thanks & Regards

Neetha

try these three commands:
$ export QHOME=/q
$ alias q=‘/q/l32/q’
$ q

did that work?  if not, what was the error message, exactly?

if it didn’t work, what is the output of

$ ls $QHOME $QHOME/l32

you are logged in as root… but that should not matter

hi jack,

Thanks its working if done on console:

[root@oracle ~]# export QHOME=/q

[root@oracle ~]# alias q=‘/q/l32/q’

[root@oracle ~]# q

KDB+ 3.3 2015.06.09 Copyright (C) 1993-2015 Kx Systems

l32/ 1()core 1010MB root oracle 127.0.0.1 NONEXPIRE  

q)

how to add to .bashrc or .bash_profile files so no need to give above commands again.

just out of curiosity tried below code and gives output :

[root@oracle ~]# $ ls $QHOME $QHOME/l32

bash: $: command not found

[root@oracle ~]# 

Thanks & Regards

Neetha