Print

Print


> in my case 5.4.1 is distro installed, also usually i have another `--user` installed version for testing, and the ALICE software that is built is completely another matter that always was distinct from any system present software. So, with this context, what solution do you see?

Ah okay. Thanks for explaining. So let me see if I have this all correct.

* You have `v5.4.1` that you installed somewhere personally from `yum`. I got confused as in the https://asevcenc.web.cern.ch/asevcenc/alibuild_xrootd542/log it starts with `++ [[ -e /home/physics-tools/alicebuild/sw/SOURCES/XRootD/xrootd/0/bindings ]]` and so I thought this was some build log related to https://github.com/alisw/alidist/pull/3933. My bad.
* You have some version that is installed with `--user` and that's fine and not causing any conflicts or collisions. It just exists. :+1: 
* https://github.com/alisw/alidist/pull/3933 is totally different from the `v5.4.1` problem and is just going from `v5.4.0` to `v5.4.2`. :+1: 

Okay, so if I have that all right, then it seems that you're trying to mix installing Python packages from package managers and from `pip` but not placing them in distinct places and installing both globally(?). The short answer is that Python applications / libraries are not designed to be mixed like this and you'll need to choose one or the other. If you're going to use a package manger like `yum` to install Python bindings to compiled applications that's fine (and something I would recommend), but then you should leave these globally installed applications to the package manager and use Python virtual environments to install Python packages and applications at a local level. If you truly need Python bindings installed globally from `pip` and not from a package manager, then my recommendation is to use [`pipx`](https://github.com/pypa/pipx). I'm sure that you'll have questions on this, which is fine and great, but I may enlist @henryiii to give you some relevant blog posts to follow up on.

Okay, assuming I have that right (my apologies if not) my recommendation for the `v5.4.1` problem is the following:

* Use whatever package manager (I'm assuming `yum`?) to install `v5.4.2` uninstalling `v5.4.1` along the way. Just use your package manager to get XRootD and its Python bindings (though maybe you can't for good reasons).
* For local testing, use a Python virtual environment instead of `--user`. This is safer, much easier to manage, and allows you to have an unlimited number of versions to test against, mess around with, compared to only having one version that is installed with `--user`.

Does this seem reasonable? Sorry if I've confused the situation or missed anything.


> also, related to [#1594 (comment)](https://github.com/xrootd/xrootd/issues/1594#issuecomment-1063761052) is there a solution to use the already present source?

You could use the current source that you have, but you'd need to do the https://github.com/xrootd/xrootd/blob/3d64cdad97f0f93a04dd01234e88a27525285d8d/.github/workflows/build.yml#L570-L577 sort of system. At that point it is probably just easier to install from PyPI, unless you're trying to match source versions exactly.

> can i do `python -m pip install git+file://${BUILDDIR}/some_directory` (where BUILDDIR is a copy of git repository) ?

Currently no. The pattern that you describe here with being able to install from Git repos is a very reasonable one, but that requires the repository structure to be setup in a way that allows for that. The XRootD system is setup in a way that requires you to do the 

https://github.com/xrootd/xrootd/blob/3d64cdad97f0f93a04dd01234e88a27525285d8d/.github/workflows/build.yml#L570-L577

sort of workflow as the `cp` moves specific files to locations. I agree with you that it would be nicer if this wasn't necessary, but I didn't attempt to tackle that when I was trying to update things for `v5.4.1` as that seemed larger/out of scope. I think a GitHub Issue for this idea would be really nice though!

-- 
Reply to this email directly or view it on GitHub:
https://github.com/xrootd/xrootd/issues/1641#issuecomment-1065746146
You are receiving this because you are subscribed to this thread.

Message ID: <[log in to unmask]>
########################################################################
Use REPLY-ALL to reply to list

To unsubscribe from the XROOTD-DEV list, click the following link:
https://listserv.slac.stanford.edu/cgi-bin/wa?SUBED1=XROOTD-DEV&A=1