![]() Registered Member ![]()
|
I built Krita from source referencing the README.md in krita/3rdparty. I managed to build the krita.app on OSX 10.11.6. However when I try to run the krita.app as instructed in the README. I get the following error:
Can anyone give me any suggestions on what I should do to resolve this issue? |
![]() KDE Developer ![]()
|
For some reason, directly after building the rpaths are messed up. I don't understand rpaths, but with something like the fixrpath.sh script in krita/packaging/osx, I manage to fix them.
|
![]() Registered Member ![]()
|
Thanks for the quick reply. However this didnt resolve my issue. I am still getting the same error. Any other ideas on what I can try?
|
![]() Registered Member ![]()
|
After some searching I found the QtNetwork.framework/Versions/5/QtNetwork in BUILDROOT/i/lib folder.. but I am not sure how to get krita.app to use it.
|
![]() Registered Member ![]()
|
I'm not sure how much this will help you, but it is something you're welcome to try.
If the Krita app is not finding your Qt libraries, you may have to be more specific in CMakeLists.txt about it. The CMakeLists.txt I'm talking about is under krita/CMakeLists.txt (that is, not in the base directory, but in another krita folder) Around line 89, there's a line like set_target_properties(krita PROPERTIES INSTALL_RPATH "...") I don't know if those @loader_path locations will find your Qt install. What you can try to do is directly put in the base directory for Qt in there as well. Something like "BUILDROOT/i/lib;@loader_path/..." If it works, then somehow, your libs directory is not being included in the loader path. I have no idea how the system determines what the @loader_path should be, but since you're following Boudewijn's instructions, and not how I do it, it would probably be a good idea to figure out why the loader path is not finding your Qt libs. I've had to edit this line in CMakeLists.txt, but that's only because I put my dependencies and Qt in non-standard locations. Additionally, you can try downloading MacDependency, open Krita in it and see where the app is trying to look for your Qt libs. It's also a good way to check to see if any other dependencies in Krita are linked properly. |
![]() Registered Member ![]()
|
Thanks for the response. I managed to figure out the problem with the help of the MacDependency application. Ends up that some of the libraries were missing from the dev/i/lib folder. I am not sure if that is something I did or a bug? After I copied all of the libraries from i/lib to dev/i/lib, I ran fixrpath.sh to fix the rpaths for the krita.app and now it works.
|
![]() Registered Member ![]()
|
I think I get where your problem might be coming from. It sort of happened to me too. If you read the README.md in the 3rdparty folder more carefully, it suggests you could use dev/i as the $BUILDROOT, which is fairly consistent when you're building the dependencies. However, you don't have to pick dev/i to be the buildroot, and if you wanted to use i, that's fine too, and your dependencies will still get built. However, the problem comes when you have to run cmake to build Krita, and now the instructions explicitly say to use dev/i (assuming those are the instructions you used):
cmake ../krita -DCMAKE_INSTALL_PREFIX=/Users/boud/dev/i -DDEFINE_NO_DEPRECATED=1 -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DPACKAGERS_BUILD=ON -DBUNDLE_INSTALL_DIR=$HOME/dev/i/bin -DCMAKE_BUILD_TYPE=RelWithDebInfo If your choice for BUILDROOT while building dependencies above is anything other than dev/i, then you might just unknowingly choose dev/i for the directory without realizing that there's nothing in there because you built your dependencies elsewhere. Is the above command similar to what you used? Instead of having to copy everything from i/lib, maybe try using i instead of dev/i in the directories in the command above. |
![]() Registered Member ![]()
|
Okay that makes sense. When I built krita I used the command similar to this:
cmake ../krita -DCMAKE_INSTALL_PREFIX=/Users/boud/dev/i -DDEFINE_NO_DEPRECATED=1 -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DPACKAGERS_BUILD=ON -DBUNDLE_INSTALL_DIR=/User/boud/dev/i/bin -DCMAKE_BUILD_TYPE=RelWithDebInfo Instead of: cmake ../krita -DCMAKE_INSTALL_PREFIX=/Users/boud/dev/i -DDEFINE_NO_DEPRECATED=1 -DBUILD_TESTING=OFF -DKDE4_BUILD_TESTS=OFF -DPACKAGERS_BUILD=ON -DBUNDLE_INSTALL_DIR=$HOME/dev/i/bin -DCMAKE_BUILD_TYPE=RelWithDebInfo Sounds like running the cmake command incorrectly was causing the problem. |
Registered users: Bing [Bot], Google [Bot], Sogou [Bot]