Hello, I actually set the QPID Messaging and QPID Proton install path to a machine relative path eg /var/tmp/qpid. And eventually copied the resulting folder to equivalent location on the test machine. This helped me to resolve the problem. Subsequently, I have been able to run my app but unable to connect to a tcp endpoint with SSL authentication. I am wondering if my connection parameters are correct.
const char *url = "amqp:tcp:x.x.x.x:yyyyy"; // amqp:tcp:IP:PORT qpid::messaging Connection conn(url); conn.setOption("transport", qpid::types::Variant("ssl")); conn.setOption("ssl_cert_name", qpid::types::Variant("AAAAAAAAAA")); conn.setOption("container_id", qpid::types::Variant("BBBBBBB")); conn.open(); But this does not connect successfully. I am using AMQP1.0 and wondering if the connection parameters are correct. The "transport" field is currently set to "ssl", however, I tried with "tcp" before, but it did not work either. The Qpid messaging connection API suggested to use "protocol" field as "amqp1.0", however, it throws an exception that this "parameter" field is not recognized. I actually uncommented a line within the INSTALLED_DIR/etc/qpid/qpidc.conf to select amqp 1.0 protocol-defaults=amqp1.0,amqp0-10 Any suggestions about the correctness of the API usage would be really appreciated. Further, are there any ways to get logs out of QPID libraries so that I can know how far it is going. Best Regards, Rahul -----Original Message----- From: Gordon Sim <g...@redhat.com> Sent: 21 June 2021 20:52 To: users@qpid.apache.org Subject: Re: RDMA shared object reliance for QPID AMQP C++Messaging APIv1.39 My suggestion is to edit the src/config.h before building to specify the QPIDC_MODULE_DIR path on the target system. (I thought there would be a way of setting it automatically via a cmake variable but I can't seem to do that). On Mon, Jun 21, 2021 at 5:38 PM rahul.sin...@morganstanley.com <rahul.sin...@morganstanley.com> wrote: > > 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. > --------------------------------------------------------------------- > To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org For > additional commands, e-mail: users-h...@qpid.apache.org > --------------------------------------------------------------------- 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. --------------------------------------------------------------------- To unsubscribe, e-mail: users-unsubscr...@qpid.apache.org For additional commands, e-mail: users-h...@qpid.apache.org