-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build fails - UIC not found. #2582
Comments
Filed as internal issue #USD-8576 |
Reproduced on the following environments:
|
Found a work around by downgrading pyside version : |
Same issue here on Gentoo and $ uic -h
Usage: uic [options] [uifile]
Qt User Interface Compiler version 5.15.10
...
$ python build_scripts/build_usd.py /usr/local/USD
ERROR: uic not found -- please install PySide2 or PySide6 and adjust your PATH. (Note that this program may be named pyside2-uic or pyside6-uic depending on your platform) EDIT: I just saw that the executable names that are checked are |
@martinni when you say you reproduced on MacOS Ventura (Intel), how did you reproduce it, and what symptoms did you see? I just went through the exercise of starting fresh, installing the following:
ran the build using build_usd.py, and got the expected response.
Furthermore,
So I don't think we should be looking for uic, at least on a mac. |
Update, on Mac. I managed to repro by finding all pyside6-uic on my system and removing them, then reinstalling PySide6 with pip.
Previously, pyside6-uic had been on my system in pip printed the above warning which is indeed correct. So the solution seems to be as pip instructs, adding the special location indicated to PATH. I wonder if pyside6-uic does exist on your systems, just not where it used to be? |
Please note that searching for because there may be more than one tool named Hopefully the issues reported in this thread can be resolved by ensuring that the longer named tool can be discovered from your In a future release, we'll update the message to more directly instruct which executable is being sought. |
Excuse my ignorance, is there a workaround mentioned in this thread? I'm having the same issue on macos 13.4. |
The suggestion is to ensure that pyside6-uic is discovered in your $PATH, and that the path that is discovered is actually the pyside6-uic that corresponds to the Qt & Python you are building OpenUSD with. If I type |
Thanks for the help. I could get it in my path but I’m not really sure what pyside6-uic is (something to do with Qt?) or how to install it. This seems like a dependency of OpenUSD, yeah? |
pyside6-uic is installed by |
By the way, this is kind of general support question is really good to take over to the Academy Software Foundation Slack at https://join.slack.com/t/academysoftwarefdn/shared_invite/zt-26cdobq7r-PgxHjW2co9_y8KaXhnOUXg ~ there's people hanging out over there who are quite knowledgeable about Python, configuration, and building, and willing to help people out with things like this. Look for the #wg-usd channel. |
Perfect thanks. I also found that |
That’s surprising.
I would expect to *not* get any of the Python tools (like usdcat, usdtree, usdrecord, etc.) if you specify —no-python but if you don’t have that flag (so python is on) but you pass “—no-imaging” then you would get the Python tools *except* usdview, which needs both Python *and* imaging.
… On Nov 15, 2023, at 8:40 PM, Aidan Fraser ***@***.***> wrote:
Perfect thanks.
I also found that --no-python flag works if you just want usdcat and usdtree.
—
Reply to this email directly, view it on GitHub <#2582 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAM2AOVHEWO2IWQSFJIYIBTYEWKNDAVCNFSM6AAAAAA3KKZH7KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJTG43TSMZQGM>.
You are receiving this because you are subscribed to this thread.
|
Hey Aidan - this is super interesting - I didn’t know this!
Looks like these used-to-be Python scripts have switched over to the binary versions - neat!
If I build thusly:
python3 ./build_scripts/build_usd.py --no-imaging /opt/local/USD-nousdview-but-other-python-stuff
I get:
ls /opt/local/USD-nousdview-but-other-python-stuff/bin
sdfdump usdchecker usdfixbrokenpixarschemas usdstitchclips
sdffilter usddiff usdgenschemafromsdr usdtree
usdGenSchema usddumpcrate usdresolve usdzip
usdcat usdedit usdstitch
NOTE: *no* usdview, but all the other things
But if I build this way:
python3 ./build_scripts/build_usd.py --no-imaging --no-python /opt/local/USD-noPythonAtAll
I get:
ls /opt/local/USD-noPythonAtAll/bin
sdfdump sdffilter usdcat usdtree
And if I try and cat any of those, they seem to be real binaries, and not just Python wrappers.
… On Nov 15, 2023, at 9:06 PM, Michael B. Johnson ***@***.***> wrote:
That’s surprising.
I would expect to *not* get any of the Python tools (like usdcat, usdtree, usdrecord, etc.) if you specify —no-python but if you don’t have that flag (so python is on) but you pass “—no-imaging” then you would get the Python tools *except* usdview, which needs both Python *and* imaging.
> On Nov 15, 2023, at 8:40 PM, Aidan Fraser ***@***.***> wrote:
>
>
> Perfect thanks.
>
> I also found that --no-python flag works if you just want usdcat and usdtree.
>
> —
> Reply to this email directly, view it on GitHub <#2582 (comment)>, or unsubscribe <https://github.com/notifications/unsubscribe-auth/AAM2AOVHEWO2IWQSFJIYIBTYEWKNDAVCNFSM6AAAAAA3KKZH7KVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMYTQMJTG43TSMZQGM>.
> You are receiving this because you are subscribed to this thread.
>
|
The build script allows the name of the uic tool to be specified, which would solve the problem when the pyside tool is named uic. if PYSIDE in requiredDependencies:
# Special case - we are given the PYSIDEUICBINARY as cmake arg.
usdBuildArgs = context.GetBuildArguments(USD)
given_pysideUic = 'PYSIDEUICBINARY' in " ".join(usdBuildArgs)
# The USD build will skip building usdview if pyside6-uic or pyside2-uic is
# not found, so check for it here to avoid confusing users. This list of
# PySide executable names comes from cmake/modules/FindPySide.cmake
pyside6Uic = ["pyside6-uic"]
found_pyside6Uic = any([which(p) for p in pyside6Uic])
pyside2Uic = ["pyside2-uic"]
found_pyside2Uic = any([which(p) for p in pyside2Uic])
if not given_pysideUic and not found_pyside2Uic and not found_pyside6Uic:
PrintError("uic not found -- please install PySide2 or PySide6 and"
" adjust your PATH. (Note that this program may be"
" named {0} depending on your platform)"
.format(" or ".join(set(pyside2Uic+pyside6Uic))))
sys.exit(1) We could amend the message to note that the name of the executable can be supplied via the |
Description of Issue
Install fails with:
ERROR: uic not found -- please install PySide2 or PySide6 and adjust your PATH. (Note that this program may be named pyside2-uic or pyside6-uic depending on your platform)
PySide6 was installed with
pip install pyside6
. The commandpyside6-uic -h
prints "Qt User Interface Compiler version 6.5.2" so it seems that uic is installed correctly.Steps to Reproduce
System Information (OS, Hardware)
Linux Mint
The text was updated successfully, but these errors were encountered: