You are viewing a plain text version of this content. The canonical link for it is here.
Posted to users@qpid.apache.org by "Do, Eling" <LD...@analogic.com.INVALID> on 2023/04/12 14:12:33 UTC

RE: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Thanks for your response Robbie.  It seems as though the error I'm getting comes from a released version of qpid-python that is automatically downloaded during the install (See below).  Do you know if there is a way to have it download a snapshot version that includes the fix for the python3 syntax errors or if there is a snapshot of qpid-cpp that would download a newer version of qpid-python that supports python3?  Sorry I am very new to qpid and github so I'm not very familiar with how to find specific snapshots on the site.

Installed /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qpid_tools-1.40.0-py3.9.egg
Processing dependencies for qpid-tools==1.40.0
Searching for qpid-python>=0.26
Reading https://pypi.org/simple/qpid-python/
Downloading https://files.pythonhosted.org/packages/2a/33/026ac50a29a85d5d54dd7784a98d624f6142cb07ce185ed268ef9bd3b6dc/qpid-python-1.36.0-1.tar.gz#sha256=1a341981723a7980163e6d33530f29133433742f6f9b5b12b46d5d239548afee
Best match: qpid-python 1.36.0.post1
Processing qpid-python-1.36.0-1.tar.gz
Writing /tmp/easy_install-u03_e80q/qpid-python-1.36.0-1/setup.cfg
Running qpid-python-1.36.0-1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-u03_e80q/qpid-python-1.36.0-1/egg-dist-tmp-_sievita
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 152, in save_modules
    yield saved
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193, in setup_context
    yield
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 254, in run_setup
    _execfile(setup_script, ns)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 42, in _execfile
    code = compile(script, filename, 'exec')
  File "/tmp/easy_install-u03_e80q/qpid-python-1.36.0-1/setup.py", line 42
    raise DistutilsFileError, \
                            ^
SyntaxError: invalid syntax





-----Original Message-----
From: Robbie Gemmell <ro...@gmail.com>
Sent: Wednesday, April 12, 2023 5:37 AM
To: users@qpid.apache.org
Subject: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Related JIRA(s..see description):
https://issues.apache.org/jira/browse/QPID-8631

On Wed, 12 Apr 2023 at 10:33, Robbie Gemmell <ro...@gmail.com> wrote:
>
> Your mail looks to be incomplete but it probably doesnt matter.
>
> There has been minimal activity around qpid-cpp and qpid-python in
> recent years, being a bit under or over 5 years since their last
> releases
> (https://qpi/
> d.apache.org%2Freleases%2Findex.html%23current-releases&data=05%7C01%7
> CLDo%40analogic.com%7Ca50a962df6984159135108db3b398cf1%7C8d6cef0176744
> e8e9b9f1753140a64ea%7C1%7C0%7C638168890717978844%7CUnknown%7CTWFpbGZsb
> 3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%
> 7C3000%7C%7C%7C&sdata=LR8mhTZVe9KT0IVDFW98b%2FHi%2FMuvmotTOuYN4jPlz6U%
> 3D&reserved=0), and they have mostly not been updated to Python 3 to
> this point. The old client (qpid-python) in particular ceded developer
> activity to the newer AMQP 1.0 qpid-proton Python binding for the past
> several years, and Proton was updated to Python 3 years ago. I dont
> think its really expected that qpid-cpp and qpid-python currently work
> on RHEL9, given they last released before RHEL8 came out.
>
> All that said, as coincidence would have it there has been some
> activity in just the last few days which that you have just missed on
> qpid-cpp around building on newer OS, and highly related to that
> qpid-python around Python 3 since its used in a lot of the qpid-cpp
> tests...so if it's something you are interested in, maybe take a look
> there and perhaps join in.
>
> https://gith/
> ub.com%2Fapache%2Fqpid-cpp%2Fcommits%2Fmain&data=05%7C01%7CLDo%40analo
> gic.com%7Ca50a962df6984159135108db3b398cf1%7C8d6cef0176744e8e9b9f17531
> 40a64ea%7C1%7C0%7C638168890717978844%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiM
> C4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C
> %7C&sdata=bu0O23flAzdZjh0mawlANZJcotVr7zA0TJIRe3a%2B40k%3D&reserved=0
> https://gith/
> ub.com%2Fapache%2Fqpid-python%2Fcommits%2Fmain&data=05%7C01%7CLDo%40an
> alogic.com%7Ca50a962df6984159135108db3b398cf1%7C8d6cef0176744e8e9b9f17
> 53140a64ea%7C1%7C0%7C638168890717978844%7CUnknown%7CTWFpbGZsb3d8eyJWIj
> oiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C
> %7C%7C&sdata=5a6S5L4%2BCbaB07FeF%2BCJXy5%2F0KWX9JznnWidDzCFW9c%3D&rese
> rved=0
>
>
> On Tue, 11 Apr 2023 at 20:37, Do, Eling <LD...@analogic.com.invalid> wrote:
> >
> > Hi, I'm new to qpid and am trying to build/install qpid-cpp on RHEL9 with python3.  After download snapshot qpid-cpp-43d6b96.tar.gz I was able to successfully build it but when I try to install it I'm getting the following errors.  Has anyone come across this issue and know if there is a fix or workaround?  Thank you.
> >
> > Installed
> > /usr/local/lib/python3.9/site-packages/qpid_tools-1.40.0-py3.9.egg
> > Processing dependencies for qpid-tools==1.40.0 Searching for
> > qpid-python>=0.26 Reading
> > https://py/
> > pi.org%2Fsimple%2Fqpid-python%2F&data=05%7C01%7CLDo%40analogic.com%7
> > Ca50a962df6984159135108db3b398cf1%7C8d6cef0176744e8e9b9f1753140a64ea
> > %7C1%7C0%7C638168890717978844%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLj
> > AwMDAiLCJQIjoiV2luMzIiLCJBTiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C
> > &sdata=q3P0ZOv6i58gJdX23EbX13CrMd9L7rhn0wbvUDe5qfY%3D&reserved=0
> > Downloading
> > https://fi/
> > les.pythonhosted.org%2Fpackages%2F2a%2F33%2F026ac50a29a85d5d54dd7784
> > a98d624f6142cb07ce185ed268ef9bd3b6dc%2Fqpid-python-1.36.0-1.tar.gz%2
> > 3sha256%3D1a341981723a7980163e6d33530f29133433742f6f9b5b12b46d5d2395
> > 48afee&data=05%7C01%7CLDo%40analogic.com%7Ca50a962df6984159135108db3
> > b398cf1%7C8d6cef0176744e8e9b9f1753140a64ea%7C1%7C0%7C638168890717978
> > 844%7CUnknown%7CTWFpbGZsb3d8eyJWIjoiMC4wLjAwMDAiLCJQIjoiV2luMzIiLCJB
> > TiI6Ik1haWwiLCJXVCI6Mn0%3D%7C3000%7C%7C%7C&sdata=sBC2aqXyNehXsJpuQqc
> > 5SuRD%2B%2FClaFCn2KcQ7hu6EEo%3D&reserved=0
> > Best match: qpid-python 1.36.0.post1 Processing
> > qpid-python-1.36.0-1.tar.gz Writing
> > /tmp/easy_install-9dotofd5/qpid-python-1.36.0-1/setup.cfg
> > Running qpid-python-1.36.0-1/setup.py -q bdist_egg --dist-dir
> > /tmp/easy_install-9dotofd5/qpid-python-1.36.0-1/egg-dist-tmp-w9rgkk1
> > 6
> > Traceback (most recent call last):
> >   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 152, in save_modules
> >     yield saved
> >   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193, in setup_context
> >     yield
> >   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 254, in run_setup
> >     _execfile(setup_script, ns)
> >   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 42, in _execfile
> >     code = compile(script, filename, 'exec')
> >   File "/tmp/easy_install-9dotofd5/qpid-python-1.36.0-1/setup.py", line 42
> >     raise DistutilsFileError, \
> >                             ^
> > SyntaxError: invalid syntax
> >
> > During handling of the above exception, another exception occurred:

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org For additional commands, e-mail: users-help@qpid.apache.org

CAUTION: This email originated from outside of the organization. Please report any suspicious attachments, links, or requests for sensitive information.


---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by Virgilio Fornazin <vi...@gmail.com>.
I've managed to build and get all those working on RHEL8 & RHEL9 some time
ago.
Let me search for these files here to check what I did and I can bring you
some info on how to proceed.

On Sat, Apr 15, 2023 at 3:41 PM Jiri Daněk <jd...@redhat.com> wrote:

> I created a Dockerfile/Containerfile that compiles qpid-cpp on CentOS 9.
> I'm linking to it below, after a few more progress updates. Try it out (at
> https://github.com/apache/qpid-cpp/pull/40) if you want.
>
> On Fri, Apr 14, 2023 at 10:51 PM Do, Eling <LD...@analogic.com.invalid>
> wrote:
>
>> Hi Jiri,
>>
>> Thank you very much for the suggestions.  I will discuss these different
>> options with our development team.  I'm not sure that there are specific
>> qpid features that we are attached to but more concerned about the
>> effort/time needed to make any significant changes.
>>
>
> It turned out that getting the basic build to work on RHEL 9 was not that
> hard. It required only minimal changes on the qpid-cpp side [1] and
> relatively modest changes on the qpid-python [2] side after all
>
> [1] https://issues.apache.org/jira/browse/QPID-8635
> [2] https://issues.apache.org/jira/browse/QPID-8631 (up to commit
> 6d96be6 QPID-8631: make package version string in setup.py compliant with
> PEP-440)
>
> As you can see in the CI, the current main of qpid-cpp is running through
> the install and only fails on running the tests [3]. In the job, the
> current main of qpid-python is installed before trying to install qpid-cpp.
> To do this, the GitHub workflow does, in essence
>
> ```
> git clone https://github.com/apache/qpid-python.git
> cd qpid-python
> python3 setup.py install --user
> ```
>
> which is what I am putting into the Containerfile.
>
> [3]
> https://github.com/apache/qpid-cpp/actions/runs/4699600134/jobs/8341756181?pr=39#step:18:1283
>
> Here is a GitHub pull request that adds a Dockerfile/Containerfile based
> on CentOS 9 that builds qpid-cpp, similarly to how the build from Irina (
> https://github.com/irinabov/docker-qpid-cpp-broker) worked.
>
> Please try it out, whether what is built there seems sufficient for your
> use: https://github.com/apache/qpid-cpp/pull/40
>
> docker build -f Containerfile -t jdanekrh/jd_qpid-cpp .
> docker run --name qpidd --rm -it -p 5672:5672 jdanekrh/jd_qpid-cpp
>
> Regarding what's missing, and the issues I am aware of:
> 1) bindings (perl, python, ruby client) don't work. the binding code
> requires swig3 but rhel9 only has swig4, leading to runtime crashes due to
> incompatibilities when trying to use the bindings
> 2) qpid-tools (for managing the broker, such as `docker exec qpidd
> qpid-stat`) don't work, the broker has to be managed by qpid-tools running
> somewhere else, where python2 is available
>
> Does this help you move forward? What is the next issue that you are
> hitting?
> --
> Mit freundlichen Grüßen / Kind regards
> Jiri Daněk
>
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
> For additional commands, e-mail: users-help@qpid.apache.org

Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by Jiri Daněk <jd...@redhat.com>.
On Wed, Apr 19, 2023 at 2:36 PM Do, Eling <LD...@analogic.com.invalid> wrote:

> Hi Jiri,
>
> I downloaded qpid-cpp-4b1afd9.tar.gz and was able to build and complete
> the install.


That includes the fixes in
https://github.com/apache/qpid-cpp/commit/9f711b8863b8c16d1df2de7116adc1f388c970d4
and in
https://github.com/apache/qpid-cpp/commit/dd442da25a7d175467d7f0348d88ce6a6df1ceff,
which means that cmake no longer fails on trying to byte-compile python and
installing the resulting pyc files.

The fact that installing qpid-python still fails and the build script seems
to ignore that is immensely convenient here, but probably actually a build
script bug in qpid-cpp ;)


> Installed
> /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qpid_tools-1.40.0-py3.9.egg
> Processing dependencies for qpid-tools==1.40.0
> Searching for qpid-python>=0.26
> Reading https://pypi.org/simple/qpid-python/
> Downloading
> https://files.pythonhosted.org/packages/2a/33/026ac50a29a85d5d54dd7784a98d624f6142cb07ce185ed268ef9bd3b6dc/qpid-python-1.36.0-1.tar.gz#sha256=1a341981723a7980163e6d33530f29133433742f6f9b5b12b46d5d239548afee
> Best match: qpid-python 1.36.0.post1
> Processing qpid-python-1.36.0-1.tar.gz
> Writing /tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/setup.cfg
> Running qpid-python-1.36.0-1/setup.py -q bdist_egg --dist-dir
> /tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/egg-dist-tmp-azikm86v
> Traceback (most recent call last):
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 152,
> in save_modules
>     yield saved
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193,
> in setup_context
>     yield
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 254,
> in run_setup
>     _execfile(setup_script, ns)
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 42,
> in _execfile
>     code = compile(script, filename, 'exec')
>   File "/tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/setup.py", line 42
>     raise DistutilsFileError, \
>                             ^
> SyntaxError: invalid syntax
>
> During handling of the above exception, another exception occurred:
>
> Traceback (most recent call last):
>   File "/tmp/qpid/python3.9/qpid-cpp-4b1afd9/management/python/setup.py",
> line 57, in <module>
>     setup(name="qpid-tools",
>   File "/usr/lib/python3.9/site-packages/setuptools/__init__.py", line
> 153, in setup
>     return distutils.core.setup(**attrs)
>   File "/usr/lib64/python3.9/distutils/core.py", line 148, in setup
>     dist.run_commands()
>   File "/usr/lib64/python3.9/distutils/dist.py", line 966, in run_commands
>     self.run_command(cmd)
>   File "/usr/lib64/python3.9/distutils/dist.py", line 985, in run_command
>     cmd_obj.run()
>   File "/usr/lib/python3.9/site-packages/setuptools/command/install.py",
> line 67, in run
>     self.do_egg_install()
>   File "/usr/lib/python3.9/site-packages/setuptools/command/install.py",
> line 117, in do_egg_install
>     cmd.run(show_deprecation=False)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 408, in run
>     self.easy_install(spec, not self.no_deps)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 650, in easy_install
>     return self.install_item(None, spec, tmpdir, deps, True)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 697, in install_item
>     self.process_distribution(spec, dist, deps)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 744, in process_distribution
>     distros = WorkingSet([]).resolve(
>   File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line
> 766, in resolve
>     dist = best[req.key] = env.best_match(
>   File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line
> 1051, in best_match
>     return self.obtain(req, installer)
>   File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line
> 1063, in obtain
>     return installer(requirement)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 669, in easy_install
>     return self.install_item(spec, dist.location, tmpdir, deps)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 695, in install_item
>     dists = self.install_eggs(spec, download, tmpdir)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 890, in install_eggs
>     return self.build_and_install(setup_script, setup_base)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 1162, in build_and_install
>     self.run_setup(setup_script, setup_base, args)
>   File
> "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line
> 1146, in run_setup
>     run_setup(setup_script, args)
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 257,
> in run_setup
>     raise
>   File "/usr/lib64/python3.9/contextlib.py", line 137, in __exit__
>     self.gen.throw(typ, value, traceback)
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193,
> in setup_context
>     yield
>   File "/usr/lib64/python3.9/contextlib.py", line 137, in __exit__
>     self.gen.throw(typ, value, traceback)
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 164,
> in save_modules
>     saved_exc.resume()
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 139,
> in resume
>     raise exc.with_traceback(self._tb)
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 152,
> in save_modules
>     yield saved
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193,
> in setup_context
>     yield
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 254,
> in run_setup
>     _execfile(setup_script, ns)
>   File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 42,
> in _execfile
>     code = compile(script, filename, 'exec')
>   File "/tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/setup.py", line 42
>     raise DistutilsFileError, \
>                             ^
> SyntaxError: invalid syntax
>

Yeah, this, it is unexpected that `make install` proceeds after this has
happened.
-- 
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

RE: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by "Do, Eling" <LD...@analogic.com.INVALID>.
Hi Jiri,

I downloaded qpid-cpp-4b1afd9.tar.gz and was able to build and complete the install.  I received the same python syntax error as before (my understanding is that this is expected), however, this time the installation completed.  The output of the install is below.   I still need to resolve some other 3rd party dependencies for our software but once that is complete I will try to build our code and see if it works ok with the newer qpid-proton and qpid-cpp version on RHEL9.  This is very helpful.  Thanks very much for your efforts on this.

-Eling

[ldo@rhel9-devel1 bld]$ make install
running build
running build_py
running build_scripts
[  0%] Built target management_python_build
[  1%] Built target cppabi
[  2%] Built target expand_types
[  3%] Built target qpidtypes
[ 33%] Built target qpidcommon
[ 38%] Built target qpidclient
[ 44%] Built target qpidmessaging
[ 66%] Built target qpidbroker
[ 69%] Built target ha
[ 73%] Built target amqp
[ 74%] Built target linearstoreutils
[ 78%] Built target linearstore
[ 78%] Built target qpidd
[ 81%] Built target qmf2
[ 81%] Built target store
[ 81%] Built target sasl_version
[ 81%] Built target qpid-txtest
[ 82%] Built target sasl_config
[ 82%] Built target header_test
[ 82%] Built target replaying_sender
[ 83%] Built target qpid-topic-publisher
[ 83%] Built target qpid-ping
[ 83%] Built target test_store
[ 83%] Built target txshift
[ 83%] Built target resuming_receiver
[ 83%] Built target receiver
[ 83%] Built target ha_test_max_queues
[ 83%] Built target qpid-client-test
[ 84%] Built target qpid-latency-test
[ 84%] Built target qpid-perftest
[ 84%] Built target sender
[ 84%] Built target publish
[ 85%] Built target declare_queues
[ 85%] Built target qpid-txtest2
[ 85%] Built target qpid-topic-listener
[ 85%] Built target qpid-send
[ 85%] Built target datagen
[ 93%] Built target unit_test
[ 93%] Built target shlibtest
[ 94%] Built target qpid-receive
[ 95%] Built target msg_group_test
[ 95%] Built target echotest
[ 95%] Built target consume
[ 96%] Built target txjob
[ 96%] Built target dlclose_noop
[ 96%] Built target qpid_messaging_swig_compilation
[ 96%] Built target _qpid_messaging
[ 96%] Built target cqpid_ruby_swig_compilation
[ 96%] Built target cqpid_ruby
[ 96%] Built target drain
[ 97%] Built target map_receiver
[ 98%] Built target spout
[ 98%] Built target client
[ 98%] Built target map_sender
[ 99%] Built target hello_world
[ 99%] Built target server_reconnect
[ 99%] Built target hello_xml
[100%] Built target server
Install the project...
-- Install configuration: "RelWithDebInfo"
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/doc/qpid-cpp-1.40.0/LICENSE.txt
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/doc/qpid-cpp-1.40.0/NOTICE.txt
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/qmf2.i
running install
running bdist_egg
running egg_info
writing lib/qpid_tools.egg-info/PKG-INFO
writing dependency_links to lib/qpid_tools.egg-info/dependency_links.txt
writing requirements to lib/qpid_tools.egg-info/requires.txt
writing top-level names to lib/qpid_tools.egg-info/top_level.txt
reading manifest file 'lib/qpid_tools.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE.txt'
adding license file 'NOTICE.txt'
writing manifest file 'lib/qpid_tools.egg-info/SOURCES.txt'
installing library code to build/bdist.linux-x86_64/egg
running install_lib
running build_py
creating build/bdist.linux-x86_64/egg
creating build/bdist.linux-x86_64/egg/qpidtoollibs
copying build/lib/qpidtoollibs/__init__.py -> build/bdist.linux-x86_64/egg/qpidtoollibs
copying build/lib/qpidtoollibs/broker.py -> build/bdist.linux-x86_64/egg/qpidtoollibs
copying build/lib/qpidtoollibs/config.py -> build/bdist.linux-x86_64/egg/qpidtoollibs
copying build/lib/qpidtoollibs/disp.py -> build/bdist.linux-x86_64/egg/qpidtoollibs
creating build/bdist.linux-x86_64/egg/qmf
copying build/lib/qmf/__init__.py -> build/bdist.linux-x86_64/egg/qmf
copying build/lib/qmf/client.py -> build/bdist.linux-x86_64/egg/qmf
copying build/lib/qmf/console.py -> build/bdist.linux-x86_64/egg/qmf
byte-compiling build/bdist.linux-x86_64/egg/qpidtoollibs/__init__.py to __init__.cpython-39.pyc
byte-compiling build/bdist.linux-x86_64/egg/qpidtoollibs/broker.py to broker.cpython-39.pyc
byte-compiling build/bdist.linux-x86_64/egg/qpidtoollibs/config.py to config.cpython-39.pyc
byte-compiling build/bdist.linux-x86_64/egg/qpidtoollibs/disp.py to disp.cpython-39.pyc
byte-compiling build/bdist.linux-x86_64/egg/qmf/__init__.py to __init__.cpython-39.pyc
byte-compiling build/bdist.linux-x86_64/egg/qmf/client.py to client.cpython-39.pyc
byte-compiling build/bdist.linux-x86_64/egg/qmf/console.py to console.cpython-39.pyc
installing package data to build/bdist.linux-x86_64/egg
running install_data
creating build/bdist.linux-x86_64/egg/libexec
copying bin/qpid-qls-analyze -> build/bdist.linux-x86_64/egg/libexec
creating build/bdist.linux-x86_64/egg/share
creating build/bdist.linux-x86_64/egg/share/qpid-tools
creating build/bdist.linux-x86_64/egg/share/qpid-tools/python
creating build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
copying lib/qlslibs/__init__.py -> build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
copying lib/qlslibs/analyze.py -> build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
copying lib/qlslibs/efp.py -> build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
copying lib/qlslibs/err.py -> build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
copying lib/qlslibs/jrnl.py -> build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
copying lib/qlslibs/utils.py -> build/bdist.linux-x86_64/egg/share/qpid-tools/python/qlslibs
creating build/bdist.linux-x86_64/egg/EGG-INFO
installing scripts to build/bdist.linux-x86_64/egg/EGG-INFO/scripts
running install_scripts
running build_scripts
creating build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-config -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-ha -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-printevents -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-queue-stats -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-route -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-stat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-tool -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-config.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-ha.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-printevents.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-queue-stats.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-route.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-stat.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
copying build/scripts-3.9/qpid-tool.bat -> build/bdist.linux-x86_64/egg/EGG-INFO/scripts
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-config to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-ha to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-printevents to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-queue-stats to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-route to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-stat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-tool to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-config.bat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-ha.bat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-printevents.bat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-queue-stats.bat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-route.bat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-stat.bat to 755
changing mode of build/bdist.linux-x86_64/egg/EGG-INFO/scripts/qpid-tool.bat to 755
copying lib/qpid_tools.egg-info/PKG-INFO -> build/bdist.linux-x86_64/egg/EGG-INFO
copying lib/qpid_tools.egg-info/SOURCES.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying lib/qpid_tools.egg-info/dependency_links.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying lib/qpid_tools.egg-info/requires.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
copying lib/qpid_tools.egg-info/top_level.txt -> build/bdist.linux-x86_64/egg/EGG-INFO
zip_safe flag not set; analyzing archive contents...
creating 'dist/qpid_tools-1.40.0-py3.9.egg' and adding 'build/bdist.linux-x86_64/egg' to it
removing 'build/bdist.linux-x86_64/egg' (and everything under it)
Processing qpid_tools-1.40.0-py3.9.egg
Removing /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qpid_tools-1.40.0-py3.9.egg
Copying qpid_tools-1.40.0-py3.9.egg to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages
qpid-tools 1.40.0 is already the active version in easy-install.pth
Installing qpid-config script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-config.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-ha script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-ha.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-printevents script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-printevents.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-queue-stats script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-queue-stats.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-route script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-route.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-stat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-stat.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-tool script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin
Installing qpid-tool.bat script to /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin

Installed /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qpid_tools-1.40.0-py3.9.egg
Processing dependencies for qpid-tools==1.40.0
Searching for qpid-python>=0.26
Reading https://pypi.org/simple/qpid-python/
Downloading https://files.pythonhosted.org/packages/2a/33/026ac50a29a85d5d54dd7784a98d624f6142cb07ce185ed268ef9bd3b6dc/qpid-python-1.36.0-1.tar.gz#sha256=1a341981723a7980163e6d33530f29133433742f6f9b5b12b46d5d239548afee
Best match: qpid-python 1.36.0.post1
Processing qpid-python-1.36.0-1.tar.gz
Writing /tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/setup.cfg
Running qpid-python-1.36.0-1/setup.py -q bdist_egg --dist-dir /tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/egg-dist-tmp-azikm86v
Traceback (most recent call last):
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 152, in save_modules
    yield saved
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193, in setup_context
    yield
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 254, in run_setup
    _execfile(setup_script, ns)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 42, in _execfile
    code = compile(script, filename, 'exec')
  File "/tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/setup.py", line 42
    raise DistutilsFileError, \
                            ^
SyntaxError: invalid syntax

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/tmp/qpid/python3.9/qpid-cpp-4b1afd9/management/python/setup.py", line 57, in <module>
    setup(name="qpid-tools",
  File "/usr/lib/python3.9/site-packages/setuptools/__init__.py", line 153, in setup
    return distutils.core.setup(**attrs)
  File "/usr/lib64/python3.9/distutils/core.py", line 148, in setup
    dist.run_commands()
  File "/usr/lib64/python3.9/distutils/dist.py", line 966, in run_commands
    self.run_command(cmd)
  File "/usr/lib64/python3.9/distutils/dist.py", line 985, in run_command
    cmd_obj.run()
  File "/usr/lib/python3.9/site-packages/setuptools/command/install.py", line 67, in run
    self.do_egg_install()
  File "/usr/lib/python3.9/site-packages/setuptools/command/install.py", line 117, in do_egg_install
    cmd.run(show_deprecation=False)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 408, in run
    self.easy_install(spec, not self.no_deps)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 650, in easy_install
    return self.install_item(None, spec, tmpdir, deps, True)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 697, in install_item
    self.process_distribution(spec, dist, deps)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 744, in process_distribution
    distros = WorkingSet([]).resolve(
  File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 766, in resolve
    dist = best[req.key] = env.best_match(
  File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 1051, in best_match
    return self.obtain(req, installer)
  File "/usr/lib/python3.9/site-packages/pkg_resources/__init__.py", line 1063, in obtain
    return installer(requirement)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 669, in easy_install
    return self.install_item(spec, dist.location, tmpdir, deps)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 695, in install_item
    dists = self.install_eggs(spec, download, tmpdir)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 890, in install_eggs
    return self.build_and_install(setup_script, setup_base)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 1162, in build_and_install
    self.run_setup(setup_script, setup_base, args)
  File "/usr/lib/python3.9/site-packages/setuptools/command/easy_install.py", line 1146, in run_setup
    run_setup(setup_script, args)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 257, in run_setup
    raise
  File "/usr/lib64/python3.9/contextlib.py", line 137, in __exit__
    self.gen.throw(typ, value, traceback)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193, in setup_context
    yield
  File "/usr/lib64/python3.9/contextlib.py", line 137, in __exit__
    self.gen.throw(typ, value, traceback)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 164, in save_modules
    saved_exc.resume()
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 139, in resume
    raise exc.with_traceback(self._tb)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 152, in save_modules
    yield saved
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 193, in setup_context
    yield
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 254, in run_setup
    _execfile(setup_script, ns)
  File "/usr/lib/python3.9/site-packages/setuptools/sandbox.py", line 42, in _execfile
    code = compile(script, filename, 'exec')
  File "/tmp/easy_install-svgwqopo/qpid-python-1.36.0-1/setup.py", line 42
    raise DistutilsFileError, \
                            ^
SyntaxError: invalid syntax
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin/qmf-gen
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/__init__.py
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/generate.py
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/management-types.xml
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/schema.py
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Args.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/CMakeLists.cmake
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Class.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Class.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Event.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Event.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Package.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/Package.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/V2Package.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/templates/V2Package.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib/python3.9/site-packages/qmfgen/__pycache__
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/qpid/daemon/ha.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/qpid/daemon/amqp.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidcommon.so.2.0.0
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidcommon.so.2
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidcommon.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidtypes.so.1.0.0
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidtypes.so.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidtypes.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidclient.so.2.0.0
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidclient.so.2
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidclient.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/ImportExport.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Address.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Connection.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Duration.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/FailoverUpdates.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Handle.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/ImportExport.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Logger.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Message.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Message_io.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Receiver.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Sender.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/Session.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/messaging/exceptions.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/qpid.i
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/swig_perl_typemaps.i
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/swig_python_typemaps.i
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/swig_ruby_typemaps.i
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/sys
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/sys/IntegerTypes.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/sys/posix
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/sys/posix/IntegerTypes.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/sys/windows
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/sys/windows/IntegerTypes.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/types
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/types/Exception.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/types/ImportExport.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/types/Uuid.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qpid/types/Variant.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidmessaging.so.2.0.0
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidmessaging.so.2
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidmessaging.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidbroker.so.2.0.0
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidbroker.so.2
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqpidbroker.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/sbin/qpidd
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqmf2.so.1.0.0
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqmf2.so.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/libqmf2.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/AgentEvent.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/Agent.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/AgentSession.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/ConsoleEvent.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/ConsoleSession.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/DataAddr.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/Data.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/exceptions.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/Handle.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/ImportExport.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/Query.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/Schema.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/SchemaId.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/SchemaMethod.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/SchemaProperty.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/SchemaTypes.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/Subscription.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/include/qmf/EventNotifier.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/qpid/daemon/linearstore.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/liblinearstoreutils.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/pkgconfig/qpid.pc
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/pkgconfig/qmf2.pc
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/cmake/Qpid/QpidConfig.cmake
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/cmake/Qpid/QpidConfigVersion.cmake
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/qpid/daemon/store.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin/qpid-receive
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/bin/qpid-send
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-perftest
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-latency-test
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-client-test
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-ping
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-topic-listener
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-topic-publisher
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/receiver
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/sender
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-txtest
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/libexec/qpid/tests/qpid-txtest2
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/etc/qpid/qpidc.conf
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/etc/qpid/qpidd.conf
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/etc/sasl2/qpidd.conf
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/python3.9/site-packages/qpid_messaging.py
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/lib64/python3.9/site-packages/_qpid_messaging.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/cqpid_ruby.so
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/address.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/connection.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/duration.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/encoding.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/message.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/receiver.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/sender.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/local/lib64/ruby/site_ruby/lib/qpid_messaging/session.rb
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpidd.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qmf-gen.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-printevents.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-receive.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-send.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-tool.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-config.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-ha.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-queue-stats.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-route.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/man/man1/qpid-stat.1
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/README.txt
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/drain.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/spout.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/map_receiver.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/map_sender.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/client.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/server.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/server_reconnect.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/hello_world.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/CMakeLists.txt
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/OptionParser.h
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/hello_world.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/hello_xml.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/drain.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/spout.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/map_receiver.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/map_sender.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/client.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/server.cpp
-- Up-to-date: /tmp/qpid/python3.9/alog-qpid-cpp-1.40.0-for-boost-1.75.0.x86_64/share/qpid/examples/messaging/server_reconnect.cpp


From: Jiri Daněk <jd...@redhat.com>
Sent: Saturday, April 15, 2023 2:40 PM
To: users@qpid.apache.org
Subject: Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

I created a Dockerfile/Containerfile that compiles qpid-cpp on CentOS 9. I'm linking to it below, after a few more progress updates. Try it out (at https://github.com/apache/qpid-cpp/pull/40) if you want.

On Fri, Apr 14, 2023 at 10:51 PM Do, Eling <LD...@analogic.com.invalid>> wrote:
Hi Jiri,

Thank you very much for the suggestions.  I will discuss these different options with our development team.  I'm not sure that there are specific qpid features that we are attached to but more concerned about the effort/time needed to make any significant changes.

It turned out that getting the basic build to work on RHEL 9 was not that hard. It required only minimal changes on the qpid-cpp side [1] and relatively modest changes on the qpid-python [2] side after all

[1] https://issues.apache.org/jira/browse/QPID-8635
[2] https://issues.apache.org/jira/browse/QPID-8631 (up to commit 6d96be6 QPID-8631: make package version string in setup.py compliant with PEP-440)

As you can see in the CI, the current main of qpid-cpp is running through the install and only fails on running the tests [3]. In the job, the current main of qpid-python is installed before trying to install qpid-cpp. To do this, the GitHub workflow does, in essence

```
git clone https://github.com/apache/qpid-python.git
cd qpid-python
python3 setup.py install --user
```

which is what I am putting into the Containerfile.

[3] https://github.com/apache/qpid-cpp/actions/runs/4699600134/jobs/8341756181?pr=39#step:18:1283

Here is a GitHub pull request that adds a Dockerfile/Containerfile based on CentOS 9 that builds qpid-cpp, similarly to how the build from Irina (https://github.com/irinabov/docker-qpid-cpp-broker) worked.

Please try it out, whether what is built there seems sufficient for your use: https://github.com/apache/qpid-cpp/pull/40

docker build -f Containerfile -t jdanekrh/jd_qpid-cpp .
docker run --name qpidd --rm -it -p 5672:5672 jdanekrh/jd_qpid-cpp

Regarding what's missing, and the issues I am aware of:
1) bindings (perl, python, ruby client) don't work. the binding code requires swig3 but rhel9 only has swig4, leading to runtime crashes due to incompatibilities when trying to use the bindings
2) qpid-tools (for managing the broker, such as `docker exec qpidd qpid-stat`) don't work, the broker has to be managed by qpid-tools running somewhere else, where python2 is available

Does this help you move forward? What is the next issue that you are hitting?
--
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by Jiri Daněk <jd...@redhat.com>.
I created a Dockerfile/Containerfile that compiles qpid-cpp on CentOS 9.
I'm linking to it below, after a few more progress updates. Try it out (at
https://github.com/apache/qpid-cpp/pull/40) if you want.

On Fri, Apr 14, 2023 at 10:51 PM Do, Eling <LD...@analogic.com.invalid> wrote:

> Hi Jiri,
>
> Thank you very much for the suggestions.  I will discuss these different
> options with our development team.  I'm not sure that there are specific
> qpid features that we are attached to but more concerned about the
> effort/time needed to make any significant changes.
>

It turned out that getting the basic build to work on RHEL 9 was not that
hard. It required only minimal changes on the qpid-cpp side [1] and
relatively modest changes on the qpid-python [2] side after all

[1] https://issues.apache.org/jira/browse/QPID-8635
[2] https://issues.apache.org/jira/browse/QPID-8631 (up to commit
6d96be6 QPID-8631: make package version string in setup.py compliant with
PEP-440)

As you can see in the CI, the current main of qpid-cpp is running through
the install and only fails on running the tests [3]. In the job, the
current main of qpid-python is installed before trying to install qpid-cpp.
To do this, the GitHub workflow does, in essence

```
git clone https://github.com/apache/qpid-python.git
cd qpid-python
python3 setup.py install --user
```

which is what I am putting into the Containerfile.

[3]
https://github.com/apache/qpid-cpp/actions/runs/4699600134/jobs/8341756181?pr=39#step:18:1283

Here is a GitHub pull request that adds a Dockerfile/Containerfile based on
CentOS 9 that builds qpid-cpp, similarly to how the build from Irina (
https://github.com/irinabov/docker-qpid-cpp-broker) worked.

Please try it out, whether what is built there seems sufficient for your
use: https://github.com/apache/qpid-cpp/pull/40

docker build -f Containerfile -t jdanekrh/jd_qpid-cpp .
docker run --name qpidd --rm -it -p 5672:5672 jdanekrh/jd_qpid-cpp

Regarding what's missing, and the issues I am aware of:
1) bindings (perl, python, ruby client) don't work. the binding code
requires swig3 but rhel9 only has swig4, leading to runtime crashes due to
incompatibilities when trying to use the bindings
2) qpid-tools (for managing the broker, such as `docker exec qpidd
qpid-stat`) don't work, the broker has to be managed by qpid-tools running
somewhere else, where python2 is available

Does this help you move forward? What is the next issue that you are
hitting?
-- 
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

RE: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by "Do, Eling" <LD...@analogic.com.INVALID>.
Hi Jiri,

Thank you very much for the suggestions.  I will discuss these different options with our development team.  I'm not sure that there are specific qpid features that we are attached to but more concerned about the effort/time needed to make any significant changes.

Thanks again.

-Eling

-----Original Message-----
From: Jiri Daněk <jd...@redhat.com> 
Sent: Thursday, April 13, 2023 9:06 AM
To: users@qpid.apache.org
Subject: Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

On Thu, Apr 13, 2023 at 2:31 PM Do, Eling <LD...@analogic.com.invalid> wrote:

> Hi Jiri, thanks for responding to my question...much appreciated.  
> That would be great if changing the order of things during the install 
> would allow the library install to complete even if the tests cannot run.


Done now, it is failing merrily on setup.py now.


> Any idea as to when a build/snapshot with this change might be available?
>

I won't promise anything. The setup.py processes the spec xml and generates the .pcl file, which means it actually runs more of the client code than what I originally expected. I already have all of it fixed on my machine, passing all the tests, but I am still reviewing it and trying to make as little of a mess as possible. Specifically, I am confused regarding where bytes (b"") or strings (u"") should be accepted, for example as message bodies, various message fields, and so on; I _can_ of course make the library convert inputs to bytes, but the question is if it is desirable. My current feeling is that I should not do this and instead have the tests pass b"" where necessary...) That makes the changes Python 2-neutral, because in python2, adding b in front of "string" does nothing.

I want to carry on with this, hopefully ending up running an Apache release vote when the work is done ;P, but it is hardly my top priority.

I don't want to diminish the significance of what I am trying to do here, but, to tell the truth, if I were a Qpid user wanting a broker on RHEL9, I would probably run qpid-cpp in a RHEL8-based docker, having compiled it against Python 2). Or I'd try to migrate to some other, more actively developed, broker. Are there some particular features of qpidd that you are especially attached to, that are hard to get from the alternatives?
--
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by Jiri Daněk <jd...@redhat.com>.
On Thu, Apr 13, 2023 at 2:31 PM Do, Eling <LD...@analogic.com.invalid> wrote:

> Hi Jiri, thanks for responding to my question...much appreciated.  That
> would be great if changing the order of things during the install would
> allow the library install to complete even if the tests cannot run.


Done now, it is failing merrily on setup.py now.


> Any idea as to when a build/snapshot with this change might be available?
>

I won't promise anything. The setup.py processes the spec xml and generates
the .pcl file, which means it actually runs more of the client code than
what I originally expected. I already have all of it fixed on my machine,
passing all the tests, but I am still reviewing it and trying to make as
little of a mess as possible. Specifically, I am confused regarding where
bytes (b"") or strings (u"") should be accepted, for example as message
bodies, various message fields, and so on; I _can_ of course make the
library convert inputs to bytes, but the question is if it is desirable. My
current feeling is that I should not do this and instead have the tests
pass b"" where necessary...) That makes the changes Python 2-neutral,
because in python2, adding b in front of "string" does nothing.

I want to carry on with this, hopefully ending up running an Apache release
vote when the work is done ;P, but it is hardly my top priority.

I don't want to diminish the significance of what I am trying to do here,
but, to tell the truth, if I were a Qpid user wanting a broker on RHEL9, I
would probably run qpid-cpp in a RHEL8-based docker, having compiled it
against Python 2). Or I'd try to migrate to some other, more actively
developed, broker. Are there some particular features of qpidd that you are
especially attached to, that are hard to get from the alternatives?
-- 
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

RE: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by "Do, Eling" <LD...@analogic.com.INVALID>.
Hi Jiri, thanks for responding to my question...much appreciated.  That would be great if changing the order of things during the install would allow the library install to complete even if the tests cannot run.  Any idea as to when a build/snapshot with this change might be available?

Thanks again.

-Eling

-----Original Message-----
From: Jiri Daněk <jd...@redhat.com>
Sent: Wednesday, April 12, 2023 3:45 PM
To: users@qpid.apache.org
Subject: Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

On Wed, Apr 12, 2023 at 4:20 PM Do, Eling <LD...@analogic.com.invalid> wrote:

> Thanks for your response Robbie.  It seems as though the error I'm
> getting comes from a released version of qpid-python that is
> automatically downloaded during the install (See below).  Do you know
> if there is a way to have it download a snapshot version that includes
> the fix for the
> python3 syntax errors or if there is a snapshot of qpid-cpp that would
> download a newer version of qpid-python that supports python3?  Sorry
> I am very new to qpid and github so I'm not very familiar with how to
> find specific snapshots on the site.
>

There is no such snapshot published anywhere. At some point we had a prerelease version on PyPI for qpid-proton, though
https://pypi.org/project/python-qpid-proton/0.38.0.dev0/ so there is precedent for doing things like this.

I should probably eventually learn how to get PyPI credentials... It should be enough to upload them to GitHub and then use this nice workflow to do PyPI releases
https://github.com/apache/qpid-python/blob/main/.github/workflows/python-publish.yml

Personally I am thinking about adding a CMake build option to qpid-cpp which would tell it to go fetch qpid-python from a git repository, which I then want to enable in CI, so that I get test results from the combination of the two git heads.


>   File "/tmp/easy_install-u03_e80q/qpid-python-1.36.0-1/setup.py", line 42
>     raise DistutilsFileError, \
>                             ^
> SyntaxError: invalid syntax
>

It is not yet completely fixed on qpid-python main. I still have there the Python 2 `except:` written like

except os.error as (errno, errstr):

which needs to be changed. I guess I should also change the order of CI steps for qpid-python, to first try to install the library, and only then to run the tests. The current order means I get Python 3 failure on trying to run tests, and install is not even attempted. For qpid-cpp install it is enough if the qpid-python lib installs, it does not have to actually work on Python 3. And making it work, resolving all the bytes/str issues correctly, will take time.

I'm going to try what I just suggested next. For this evening I got insead stuck on debugging disappearing tests after switching to the new module importer (from __future__ import absolute import) ;(

Btw, regarding the disappearning tests on Python 3. The qpid-proton-python uses the same bespoke testrunner and thus has the same problem https://issues.apache.org/jira/browse/QPID-8170?focusedCommentId=17711533&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17711533,
but since the test code there does not have nested modules and weird * imports, this problem does not actually visibly manifest there.
--
Mit freundlichen Grüßen / Kind regards
Jiri Daněk

---------------------------------------------------------------------
To unsubscribe, e-mail: users-unsubscribe@qpid.apache.org
For additional commands, e-mail: users-help@qpid.apache.org


Re: [EXTERNAL]Re: Installing qpid-cpp on RHEL9 with python3 fails

Posted by Jiri Daněk <jd...@redhat.com>.
On Wed, Apr 12, 2023 at 4:20 PM Do, Eling <LD...@analogic.com.invalid> wrote:

> Thanks for your response Robbie.  It seems as though the error I'm getting
> comes from a released version of qpid-python that is automatically
> downloaded during the install (See below).  Do you know if there is a way
> to have it download a snapshot version that includes the fix for the
> python3 syntax errors or if there is a snapshot of qpid-cpp that would
> download a newer version of qpid-python that supports python3?  Sorry I am
> very new to qpid and github so I'm not very familiar with how to find
> specific snapshots on the site.
>

There is no such snapshot published anywhere. At some point we had a
prerelease version on PyPI for qpid-proton, though
https://pypi.org/project/python-qpid-proton/0.38.0.dev0/ so there is
precedent for doing things like this.

I should probably eventually learn how to get PyPI credentials... It should
be enough to upload them to GitHub and then use this nice workflow to do
PyPI releases
https://github.com/apache/qpid-python/blob/main/.github/workflows/python-publish.yml

Personally I am thinking about adding a CMake build option to qpid-cpp
which would tell it to go fetch qpid-python from a git repository, which I
then want to enable in CI, so that I get test results from the combination
of the two git heads.


>   File "/tmp/easy_install-u03_e80q/qpid-python-1.36.0-1/setup.py", line 42
>     raise DistutilsFileError, \
>                             ^
> SyntaxError: invalid syntax
>

It is not yet completely fixed on qpid-python main. I still have there the
Python 2 `except:` written like

except os.error as (errno, errstr):

which needs to be changed. I guess I should also change the order of CI
steps for qpid-python, to first try to install the library, and only then
to run the tests. The current order means I get Python 3 failure on trying
to run tests, and install is not even attempted. For qpid-cpp install it is
enough if the qpid-python lib installs, it does not have to actually work
on Python 3. And making it work, resolving all the bytes/str issues
correctly, will take time.

I'm going to try what I just suggested next. For this evening I got insead
stuck on debugging disappearing tests after switching to the new module
importer (from __future__ import absolute import) ;(

Btw, regarding the disappearning tests on Python 3. The qpid-proton-python
uses the same bespoke testrunner and thus has the same problem
https://issues.apache.org/jira/browse/QPID-8170?focusedCommentId=17711533&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#comment-17711533,
but since the test code there does not have nested modules and weird *
imports, this problem does not actually visibly manifest there.
--
Mit freundlichen Grüßen / Kind regards
Jiri Daněk