Hello, Many thanks for your response. I build apache qpid libraries and my application on a different compile machine and run my application on a different test machine. Test machine does not have access to location used on compile machine.
While building my application, I point it to the local install folder where the output of QPID builds are stored. -L points to the local qpid install path so that shared objects could be found by the linker. On the compile machine, I set the LD_LIBRARY_PATH with a local path where I copy the QPID install folder. Once the binary is ready, I copy it on the test machine. However, when I run my app or run strace on the test machine, I see this error and the reference to the path is not from the test machine but to the path on compile machine where I actually got the QPID builds installed. Details from strace open("PATH_ON_COMPILE_MACHINE/install/etc/qpid/qpidc.conf", O_RDONLY) = -1 EIO (Input/output error) open("PATH_ON_COMPILE_MACHINE/install/etc/qpid/qpidc.conf", O_RDONLY) = -1 EIO (Input/output error) Caught std::exception Invalid value for module-dir: Input/output error: Can't check directory PATH_ON_COMPILE_MACHINE/install/lib64/qpid/client Best Regards, Rahul -----Original Message----- From: Gordon Sim <g...@redhat.com> Sent: 21 June 2021 13:32 To: users@qpid.apache.org Subject: Re: RDMA shared object reliance for QPID AMQP C++Messaging APIv1.39 You should not need to have any client module directory. My first guess is that it is perhaps a permissions issue. Is your application running as a user able to list files under the <install-dir>/lib64/qpid directory? (The exception seems to come from stat() returning an error other than ENOENT). On Mon, Jun 21, 2021 at 11:34 AM rahul.sin...@morganstanley.com <rahul.sin...@morganstanley.com> wrote: > > Hello, > I am trying on run my C++ application on linux based on QPID AMQP messaging > API and connect to TCP endpoint with SSL authentication. At the moment, I am > just trying to test the correct usage and do nothing more than establishing > the connection. However, I get a runtime error which indicates the exe is > looking for some shared object at the QPID AMQP installed directory > (PATH_TO_INSTALL_DIRECTORY/lib64/qpid/client). However, I do not see any > client sub-folder within the lib64/qpid path. There is only a daemon folder > out there. The error I receive is "Caught std::exception Invalid value for > module-dir: Input/output error: Can't check directory: > PATH_TO_INSTALL_DIRECTORY/lib64/qpid/client" > > I have build both QPID Proton C v 0.34 and QPID AMQP Messaging C++ v1.39 > packages and point the shared objects build to the install directory. > Please note I do not have libibverbs and librdmacm packages which are > optional and required for RDMA transport protocol. ( > https://raw.githubusercontent.com/apache/qpid-cpp/main/INSTALL.txt ) Sounds > like for some reasons, my qpid amqp packages do not build shared objects > which are supposed to go under (installfolder)/lib64/qpid/client directory. I > only need C++ and hence exclude BINDINGS for PERL,RUBY and PYTHON in my cmake > options. > > In my main application, I use the following connection code so far - > > #include <qpid/messaging/Connection.h> > > const char *url = "amqp:tcp:IP:PORT"; > qpid::messaging::Connection conn(url); > > Looking forward to hearing from you. > > Best Regards, > Rahul > > ________________________________ > NOTICE: Morgan Stanley is not acting as a municipal advisor and the opinions > or views contained herein are not intended to be, and do not constitute, > advice within the meaning of Section 975 of the Dodd-Frank Wall Street Reform > and Consumer Protection Act. If you have received this communication in > error, please destroy all electronic and paper copies and notify the sender > immediately. Mistransmission is not intended to waive confidentiality or > privilege. Morgan Stanley reserves the right, to the extent required and/or > permitted under applicable law, to monitor electronic communications, > including telephone calls with Morgan Stanley personnel. This message is > subject to the Morgan Stanley General Disclaimers available at the following > link: http://www.morganstanley.com/disclaimers. If you cannot access the > links, please notify us by reply message and we will send the contents to > you. By communicating with Morgan Stanley you acknowledge that you have read, > understand and consent, (where applicable), to the foregoing and the Morgan > Stanley General Disclaimers. > > You may have certain rights regarding the information that Morgan Stanley > collects about you. Please see our Privacy Pledge > https://www.morganstanley.com/privacy-pledge for more information about your > rights. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org For additional commands, e-mail: users-h...@qpid.apache.org -------------------------------------------------------------------------------- NOTICE: Morgan Stanley is not acting as a municipal advisor and the opinions or views contained herein are not intended to be, and do not constitute, advice within the meaning of Section 975 of the Dodd-Frank Wall Street Reform and Consumer Protection Act. If you have received this communication in error, please destroy all electronic and paper copies and notify the sender immediately. Mistransmission is not intended to waive confidentiality or privilege. Morgan Stanley reserves the right, to the extent permitted under applicable law, to monitor electronic communications. This message is subject to terms available at the following link: http://www.morganstanley.com/disclaimers If you cannot access these links, please notify us by reply message and we will send the contents to you. By communicating with Morgan Stanley you consent to the foregoing and to the voice recording of conversations with personnel of Morgan Stanley. You may have certain rights regarding the information that Morgan Stanley collects about you. Please see our Privacy Pledge https://www.morganstanley.com/privacy-pledge for more information about your rights.