Hey meepzh
Re Qt: Instead of getting Qt with the official Qt installer, the official OpenRV Dockerfile(s) use aqtinstall
to get all the Qt deps. I find that a neat trick there. Maybe worth considering for this repo.
Cheers, Michael
Git Clone URL: | https://aur.archlinux.org/openrv-git.git (read-only, click to copy) |
---|---|
Package Base: | openrv-git |
Description: | aka Open RV, an image and sequence viewer for VFX and animation artists |
Upstream URL: | https://github.com/AcademySoftwareFoundation/OpenRV |
Licenses: | custom, Apache |
Provides: | openrv |
Submitter: | meepzh |
Maintainer: | meepzh |
Last Packager: | meepzh |
Votes: | 0 |
Popularity: | 0.000000 |
First Submitted: | 2023-09-05 11:58 (UTC) |
Last Updated: | 2025-07-09 22:49 (UTC) |
Hey meepzh
Re Qt: Instead of getting Qt with the official Qt installer, the official OpenRV Dockerfile(s) use aqtinstall
to get all the Qt deps. I find that a neat trick there. Maybe worth considering for this repo.
Cheers, Michael
@Tanghe : I believe I ran into the same issue (at least Ninja related; I didn't save the output after all and can't get it back). However, I finally managed to run my first successful build by disabling Ninja after it failed in the first place:
export CMAKE_GENERATOR="Unix Makefiles" # Uncomment to not use Ninja
Also, to enable audio (as suggested), I added
sed -i '/"aac"/d' cmake/dependencies/ffmpeg.cmake
to prepare()
Thanks 1000x @meepzh ! I appreciate your work!
Yeah the build is also failing for me. Thx for all the work btw.
Creating glxew.html
--------------------------------------------------------------------
cp -f src/header.html ../doc/glxew.html
echo -e "<h2>Supported GLX Extensions</h2>\n" >> ../doc/glxew.html
bin/make_html.pl extensions/gl/GLX_* >> ../doc/glxew.html
cat src/footer.html >> ../doc/glxew.html
perl -i -pe 's#<a href="glxew.html">(.*)</a>#\1#' ../doc/glxew.html
perl -e "s/GLEW_MAJOR/2/g;s/GLEW_MINOR/2/g;s/GLEW_MICRO/0/g;" -p src/glew.rc > ../build/glew.rc
perl -e "s/GLEW_MAJOR/2/g;s/GLEW_MINOR/2/g;s/GLEW_MICRO/0/g;" -p src/glewinfo.rc > ../build/glewinfo.rc
perl -e "s/GLEW_MAJOR/2/g;s/GLEW_MINOR/2/g;s/GLEW_MICRO/0/g;" -p src/visualinfo.rc > ../build/visualinfo.rc
mkdir lib
cc -DGLEW_NO_GLU -DGLEW_BUILD -O2 -Wall -W -Wshadow -pedantic -Iinclude -fPIC -Wcast-qual -ansi -pedantic -fno-stack-protector -o tmp/linux/default/shared/glew.o -c src/glew.c
cc -shared -Wl,-soname=libGLEW.so.2.2 -o lib/libGLEW.so.2.2.0 tmp/linux/default/shared/glew.o -L/usr/X11R6/lib -L/usr/lib -lGL -lX11
ln -sf libGLEW.so.2.2.0 lib/libGLEW.so.2.2
ln -sf libGLEW.so.2.2.0 lib/libGLEW.so
strip -x lib/libGLEW.so.2.2.0
sed \
-e "s|@prefix@|/usr/local|g" \
-e "s|@libdir@|/usr/local/lib|g" \
-e "s|@exec_prefix@|/usr/local/bin|g" \
-e "s|@includedir@|/usr/local/include/GL|g" \
-e "s|@version@|2.2.0|g" \
-e "s|@cflags@||g" \
-e "s|@libname@|GLEW|g" \
-e "s|@libgl@|-lGL -lX11|g" \
-e "s|@requireslib@|glu|g" \
< glew.pc.in > glew.pc
cc -DGLEW_NO_GLU -DGLEW_STATIC -O2 -Wall -W -Wshadow -pedantic -Iinclude -fPIC -Wcast-qual -ansi -pedantic -fno-stack-protector -o tmp/linux/default/static/glew.o -c src/glew.c
ar -rv lib/libGLEW.a tmp/linux/default/static/glew.o
ar: creating lib/libGLEW.a
a - tmp/linux/default/static/glew.o
strip -x lib/libGLEW.a
cc -DGLEW_NO_GLU -O2 -Wall -W -Wshadow -pedantic -Iinclude -fPIC -Wcast-qual -ansi -pedantic -fno-stack-protector -o tmp/linux/default/shared/glewinfo.o -c src/glewinfo.c
cc -O2 -Wall -W -Wshadow -pedantic -Iinclude -fPIC -Wcast-qual -ansi -pedantic -fno-stack-protector -o bin/glewinfo tmp/linux/default/shared/glewinfo.o -Llib -Wl,-Bdynamic -lGLEW -L/usr/X11R6/lib -L/usr/lib -lGL
-lX11
strip -x bin/glewinfo
cc -DGLEW_NO_GLU -O2 -Wall -W -Wshadow -pedantic -Iinclude -fPIC -Wcast-qual -ansi -pedantic -fno-stack-protector -o tmp/linux/default/shared/visualinfo.o -c src/visualinfo.c
cc -O2 -Wall -W -Wshadow -pedantic -Iinclude -fPIC -Wcast-qual -ansi -pedantic -fno-stack-protector -o bin/visualinfo tmp/linux/default/shared/visualinfo.o -Llib -Wl,-Bdynamic -lGLEW -L/usr/X11R6/lib -L/usr/lib -lGL -lX11
strip -x bin/visualinfo
ninja: build stopped: subcommand failed.
==> ERROR: A failure occurred in build().
Aborting...
error: failed to build 'openrv-git-2.1.0.r244.6990de1-1':
error: packages failed to build: openrv-git-2.1.0.r244.6990de1-1
Would be awesome if you could update this repo! Cheers, Michael
Hi @michimussato, sorry about that! Open RV has been changing at a fairly quick pace, so I haven't been keeping up the updates here. It's likely that something changed and broke the PKGBUILD. I'll see if I can get you an update in the next day or so!
Hi!
I have Qt5.15.2
in ~/
with QT_HOME=~/Qt5.15.2/5.15.2/gcc_64
but I get the following error:
Preparing...
Cloning openrv-git build files...
Generating openrv-git information...
Checking openrv-git dependencies...
Resolving dependencies...
Checking inter-conflicts...
Building openrv-git...
==> Making package: openrv-git 2.0.0.r199.f3754ee-1 (Wed 17 Jul 2024 06:20:40 PM AEST)
==> Checking runtime dependencies...
==> Checking buildtime dependencies...
==> Retrieving sources...
-> Cloning OpenRV git repo...
Cloning into bare repository '/var/tmp/pamac-build-michael/openrv-git/OpenRV'...
-> Cloning openrv-WFObj git repo...
Cloning into bare repository '/var/tmp/pamac-build-michael/openrv-git/openrv-WFObj'...
-> Cloning openrv-pub git repo...
Cloning into bare repository '/var/tmp/pamac-build-michael/openrv-git/openrv-pub'...
-> Cloning openrv-oiio git repo...
Cloning into bare repository '/var/tmp/pamac-build-michael/openrv-git/openrv-oiio'...
-> Found unblock-distro.patch
-> Found ffmpeg.patch
-> Found ocio.patch
-> Found ocio_install_yaml-cpp.patch
-> Found oiio.patch
-> Found glew-lib64.patch
-> Found jpegturbo-lib64.patch
-> Found pyside2.patch
-> Found pyside2-tools-root.patch
-> Found qt5.patch
-> Found pyside2-build_scripts.patch
==> Validating source files with b2sums...
OpenRV ... Skipped
openrv-WFObj ... Skipped
openrv-pub ... Skipped
openrv-oiio ... Skipped
unblock-distro.patch ... Passed
ffmpeg.patch ... Passed
ocio.patch ... Passed
ocio_install_yaml-cpp.patch ... Passed
oiio.patch ... Passed
glew-lib64.patch ... Passed
jpegturbo-lib64.patch ... Passed
pyside2.patch ... Passed
pyside2-tools-root.patch ... Passed
qt5.patch ... Passed
pyside2-build_scripts.patch ... Passed
==> Removing existing $srcdir/ directory...
==> Extracting sources...
-> Creating working copy of OpenRV git repo...
Cloning into 'OpenRV'...
done.
-> Creating working copy of openrv-WFObj git repo...
Cloning into 'openrv-WFObj'...
done.
-> Creating working copy of openrv-pub git repo...
Cloning into 'openrv-pub'...
done.
-> Creating working copy of openrv-oiio git repo...
Cloning into 'openrv-oiio'...
done.
==> Starting prepare()...
Submodule 'src/lib/files/WFObj' (https://github.com/shotgunsoftware/openrv-WFObj.git) registered for path 'src/lib/files/WFObj'
Submodule 'src/pub' (https://github.com/shotgunsoftware/openrv-pub.git) registered for path 'src/pub'
Cloning into '/var/tmp/pamac-build-michael/openrv-git/src/OpenRV/src/lib/files/WFObj'...
done.
Cloning into '/var/tmp/pamac-build-michael/openrv-git/src/OpenRV/src/pub'...
done.
Submodule path 'src/lib/files/WFObj': checked out '648355e8ce65e961892d6f4c1f81a5a79432eff0'
Submodule path 'src/pub': checked out '0a5562fe8ef88cc2dca211b88788b45ff0ac1db3'
patching file cmake/defaults/rv_targets.cmake
Hunk #1 FAILED at 113.
1 out of 1 hunk FAILED -- saving rejects to file cmake/defaults/rv_targets.cmake.rej
==> ERROR: A failure occurred in prepare().
Aborting...
What can I do?
Hello! Sorry, this package is quite a mess, but it builds a working copy of Open RV, so hopefully it's a good first step for people.
Qt no longer needs to be downloaded manually. Thank you, michimussato, for the tip!
I've also tried replacing the entirety of the downloaded dependencies with Arch-provided packages, and you can see an attempt at commit 8d342dc
. If you read the PKGBUILD there, you'll find that it takes a few too many environment variables to make RV just barely usable, but it does allow you to skip all the dependencies and use Arch's ffmpeg4.4
(now ffmpeg
), which may support more codecs (that RV may not support regardless). Upstream has been discussing options for accomplishing this.
I was unable to build this package in a clean chroot due to some strange issues detecting the float word endianness while building Python and issues building libswscale as a shared library for FFmpeg, but given that those issues appeared again for Open RV 2.1.0, maybe it is possible now.
If you're looking to add aac codec support to RV's copy of FFmpeg like myself for playback purposes, you can uncomment sed -i '/"aac"/d' cmake/dependencies/ffmpeg.cmake
under the PKGBUILD's prepare
function. I'm not sure what implications this might have with RV's other functions.
Definitely do leave any suggestions you might have. I've personally very happy to have RV on Arch Linux, so if you feel the same way, we can hopefully keep making this distribution better. Thanks!
Pinned Comments
meepzh commented on 2023-09-05 12:19 (UTC) (edited on 2025-07-09 22:51 (UTC) by meepzh)
Hello! Sorry, this package is quite a mess, but it builds a working copy of Open RV, so hopefully it's a good first step for people.
Qt no longer needs to be downloaded manually. Thank you, michimussato, for the tip!
I've also tried replacing the entirety of the downloaded dependencies with Arch-provided packages, and you can see an attempt at commit
8d342dc
. If you read the PKGBUILD there, you'll find that it takes a few too many environment variables to make RV just barely usable, but it does allow you to skip all the dependencies and use Arch'sffmpeg4.4
(nowffmpeg
), which may support more codecs (that RV may not support regardless). Upstream has been discussing options for accomplishing this.I was unable to build this package in a clean chroot due to some strange issues detecting the float word endianness while building Python and issues building libswscale as a shared library for FFmpeg, but given that those issues appeared again for Open RV 2.1.0, maybe it is possible now.
If you're looking to add aac codec support to RV's copy of FFmpeg like myself for playback purposes, you can uncomment
sed -i '/"aac"/d' cmake/dependencies/ffmpeg.cmake
under the PKGBUILD'sprepare
function. I'm not sure what implications this might have with RV's other functions.Definitely do leave any suggestions you might have. I've personally very happy to have RV on Arch Linux, so if you feel the same way, we can hopefully keep making this distribution better. Thanks!