Discussion:
openqm: qmclient on raspberry pi question
(too old to reply)
l***@gmail.com
2017-10-27 01:52:49 UTC
Permalink
open qm (3.4.11) works fine on raspberry pi 3, that is from the site auto extract archive

the qmclient.py program requires qmclilib.so (client library, shared object file). The archive file on the download site

libqmclient.a - (QMClient library Raspberry Pi)

provides

qmclilib.o

that goes into
/usr/qmsys/bin, permissions set

qmclient.py tries to load it but:

OSError: /usr/qmsys/bin/qmclilib.so: only ET_DYN and ET_EXEC can be loaded

I copy the qmclilib.o to qmclilib.so (hopefully) & get the same message

have looked for qmclient.py file specifically for raspberry pi .. the SYSCOM (qmclient.py) is same, looks for qmclilib.so. qmclient.py is same for all platforms

Anyone know how to get the qmclient working

test I use is

qm.Connect(Host, -1, UserName, Password, Account) obviously

libqmclient.a is in the pi version (is in /usr/qmsys/bin) so you don't need that from the site (site provides the self extracting archive & the client for the pi)

libqmclient.a contains qmclilib.o and aes.o (don't know what that is)

issue is the provision of .o files for pi3 , requirement of qmclient.py of .so
.so = "shared object"
l***@gmail.com
2017-10-27 03:29:31 UTC
Permalink
solved

make required object (.o) files into shared object (.so)

using command form g++ -shared -fPIC -o myshared.so *.o

so .. for the .o files extracted from archive (in /usr/qmsys/bin)

g++ -shared -fPIC -o qmclilib.o *.o

links all object files (including aes.o from archive, required)

into a qmclilib.so that qmclient.py will load happily (all works)
l***@gmail.com
2017-10-27 04:01:29 UTC
Permalink
corrected command:

python qmclient appears to work fine after this .. but o file convert gives warning

g++ -shared -fPIC -o qmclilib.so *.o

/usr/bin/ld: warning: aes.o uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
l***@gmail.com
2017-10-27 04:03:24 UTC
Permalink
qmclient appears to work ok after this (connects)

corrected command (qmclilib.so) .. 1 warning given

g++ -shared -fPIC -o qmclilib.so *.o

/usr/bin/ld: warning: aes.o uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
l***@gmail.com
2017-10-27 04:07:49 UTC
Permalink
qmclient appears to work ok after this (connects)

corrected command (qmclilib.so) .. 1 warning given
- hide quoted text -

g++ -shared -fPIC -o qmclilib.so *.o

/usr/bin/ld: warning: aes.o uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
l***@gmail.com
2017-10-27 04:10:51 UTC
Permalink
qmclient appears to work ok after this (connects)

corrected command (qmclilib.so) .. 1 warning given

g++ -shared -fPIC -o qmclilib.so *.o

/usr/bin/ld: warning: aes.o uses 2-byte wchar_t yet the output is to use 4-byte wchar_t; use of wchar_t values across objects may fail
Loading...