Skip to content
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

1.7 Release Candidate Build Appears Broken on Linux #4840

Closed
deathchimera opened this issue Apr 20, 2023 · 13 comments
Closed

1.7 Release Candidate Build Appears Broken on Linux #4840

deathchimera opened this issue Apr 20, 2023 · 13 comments

Comments

@deathchimera
Copy link

deathchimera commented Apr 20, 2023

Description

On trying to build Opentoonz on Linux, I get the following error after running the "cmake ../sources" command. The same thing happens when building from the AUR with the opentoonz-git package. This message repeats 8 times for each file seen in the middle of the error. I just copy-pasted each file listed into one spot, where it normally would display the info. Example Image below.

-,,,
CMake Error at /usr/lib/cmake/Qt5LinguistTools/Qt5LinguistToolsMacros.cmake:99 (add_custom_command):
Attempt to add a custom rule to output

/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/toonz/.lupdate/toonz.ts.stamp.rule
/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/tnztools/.lupdate/tnztools.ts.stamp.rule
/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/toonzqt/.lupdate/toonzqt.ts.stamp.rule
/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/image/.lupdate/image.ts.stamp.rule
/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/colorfx/.lupdate/colorfx.ts.stamp.rule
/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/toonzlib/.lupdate/toonzlib.ts.stamp.rule
/home/ghost/apps/opentoonz-1.7.0rc/toonz/build/tnzcore/.lupdate/tnzcore.ts.stamp.rule

which already has a custom rule.
Call Stack (most recent call first):
CMakeLists.txt:604 (qt5_create_translation)
toonz/CMakeLists.txt:418 (add_translation)
-,,,

Steps to Reproduce

  1. Follow build instructions until you reach Cmake sources step.
  2. Attempt to Cmake the sources.

Expected Behavior

To build

Screenshots, Video & Crash Logs

temp-screenshot

OpenToonz Version

Nightly (Specify below)

OpenToonz Version Information

1.7rc

Operating System

Linux

GPU

Intel

Graphics Tablet

None

@shun-iwasawa
Copy link
Member

I don't have Linux environment at hand so I cannot reproduce the problem, but as a quick workaround, could you try running cmake with the WITH_TRANSLATION option turned off?

cmake ../sources -DWITH_TRANSLATION=OFF

@deathchimera
Copy link
Author

deathchimera commented Apr 20, 2023

The errors disappeared. Trying to build it completely now to see if any other errors occur, but don't imagine they would.

EDIT: Might not be able to respond quickly, really bad internet currently. My build failed, but that usually has happened in the past when trying to build the software myself. This link is to the AUR build that has consistently worked until now. It may contain differences from the linux build doc on Github. Look at the build function specifically. Do note that turning the translation option off did indeed help in my case. https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=opentoonz-git

@Bracket-H
Copy link

I'll test this either tonight or tomorrow, as well.

@Bracket-H
Copy link

Everything went correctly for me, from a total clean cmake invocation, to the actual building.
I'm not testing if it runs correctly right now, though cause I don't want the stuff folder to be changed, lol.

@deathchimera
Copy link
Author

deathchimera commented Apr 23, 2023

Finally figured out how to capture error output into a file, so this should be useful. Something to do with opencv or how OT calls for it.
error.log

@Bracket-H
Copy link

Bracket-H commented Apr 24, 2023

opencv wants libvtk at the version stated.
meaning opencv was compiled against that version of libvtk, which is not present anymore, and now doesn't work anymore.

I have never used Arch (I use Slackware...which many people hate due to not having automatic dependency resolution, but...it also helps against this :P ) so, I don't know what to tell the package manager.

But the first step is looking at libvtk, look at its version number on your system, and then the version number in the log.
if the installed version is higher than the log, then opencv probably needs to be updated.
if the installed version is lower than the log, then vtk probably needs updated.

or, if one or both of the libraries are from the user repo, the aur? I think it's called.
Then keep things as they are right now, and recompile the packages.

That's what the AUR does, right? It downloads scripts and source files and builds the package, yes?

@Vogtinator
Copy link

Duplicate of #4831?

@deathchimera
Copy link
Author

deathchimera commented Apr 25, 2023

Sorry for the late reply. Wasn't aware of vtk at all - thought it was a part of opencv. I don't think I've ever installed it on my system, yet OT builds both in stable and AUR repositories have no mention of it as far as I can tell (and they build fine, save for the AUR one currently, as it doesn't disable 'WITH_TRANSLATION').
Yes, I believe the AUR works as you described, as do the official repositories. The only difference between the two being AUR is less regulated.

Installed the vtk library, and OT finished compiling without error. Do builds of OT depend on this? Not sure how packaged builds have worked up until now without listing it as a dependency, but somehow they've worked. I've mainly been referring to builds from official and AUR repos because the difference in functionality between local and packaged builds were confusing me. This may be from my lack of literacy with build instructions and tooling though.

Here is a link to the Official Community Repo build and the AUR build for those who wish to compare.
https://github.com/archlinux/svntogit-community/blob/packages/opentoonz/trunk/PKGBUILD
https://aur.archlinux.org/cgit/aur.git/tree/PKGBUILD?h=opentoonz-git

@Vogtinator
Copy link

@Bracket-H
Copy link

To be honest, I don't know exactly, either. In fact, I edited the CmakeLists years ago because the original had trouble finding openblas, for example.
The official script later fixed that, but I'm still using my own thing, as well as my own version of Qt, with some hacks from the Krita people because I thought that some bugs in OT regarding tablets were due to Qt being weird, but that wasn't the case.

That said, when testing the original, it all worked fine, too, using my system Qt, which is version 5.15.8
Maybe that's the reason, especially with Vogtinators post.

@deathchimera
Copy link
Author

deathchimera commented Apr 25, 2023

Well, a mystery for another day, I say. Looking through the issues, I'll have to bump mvoltz's request on #3824. Otherwise, it seems QT is stirring trouble for builds.

@krop
Copy link
Contributor

krop commented Apr 25, 2023

I don't have Linux environment at hand so I cannot reproduce the problem, but as a quick workaround, could you try running cmake with the WITH_TRANSLATION option turned off?

cmake ../sources -DWITH_TRANSLATION=OFF

This is unrelated to linux. Anyone trying to build opentoonz with Qt 5.15.9 will get the same error. See the comments in #4831

deathchimera added a commit to deathchimera/void-packages that referenced this issue Dec 20, 2023
- Added -DWITH_TRANSLATION=OFF build argument to prevent breaks with Qt 5.15.9 and above.
- May need vtk-devel in the future if opencv breaks builds looking for it.
- See here: opentoonz/opentoonz#4840
deathchimera pushed a commit to deathchimera/void-packages that referenced this issue Dec 20, 2023
- Added -DWITH_TRANSLATION=OFF to prevent breaks with Qt 5.15.9+
- May need vtk-devel in the future if opencv breaks builds looking for it
- See here: opentoonz/opentoonz#4840
@RodneyBaker
Copy link
Collaborator

Closing with deference to #4831

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants