Afermer rendermanager

Qt QML GUI with OpenGL.
zaren
Posts: 19
Joined: Thu Jan 26, 2017 3:13 pm

Re: Afermer rendermanager

Post by zaren »

Hello, Benny,
Timur is right. What is version of a a afanasy do you use?
I will dedicate some time to compile afermer for current vesion on next week...

Thanks,
Sergiy
Benny
Posts: 8
Joined: Wed Nov 08, 2017 2:34 pm

Re: Afermer rendermanager

Post by Benny »

Hey Timur and Zaren,

Thank you for your replies. Our entire farm is currently running afanasy 2.2.3. All machines are running windows64.
We have now managed to get AFermer to work (with some bugs) after deleting all temporary files on the afanasy server and restarting all render services.
We can now see all our render blades and users and control our jobs in AFermer. However, we do have render blades running a virtual machine. Starting Afrender on those systems apparently causes AFermer to crash. This is however not yet confirmed.

If you could provide a more in-depth guide on how to built AFermer for windows in VS2015 with the required installations and libraries, we would be happy to help debug the system. As for right now, we have no error outputs to work with and can only wild guess.

Thank you,
Benny
zaren
Posts: 19
Joined: Thu Jan 26, 2017 3:13 pm

Re: Afermer rendermanager

Post by zaren »

Glad to hear that you want to compile and debug. Of course I will help you to compile afermer.
In my case I have the Qt5.7 and boost 1.61 builds. Both of those libraries are static. Qt5.8 has no Qt5platformsupport.lib ( it is bug of 5.8?) for some reason and I could not compile afermer with it. Yet. =)
Make sure the libraries placed according cgru/afanasy/src/project.cmake/win_build_msvc.cmd file or do the changes in that file with the right path.
Run win_build_msvc.cmd (make sure that boost and python were found)
Open afanasy.sln by VS2015.
Click on afermer project. If you have Qt statically builds you have to change /Md option to /Mt.
After that you will be able to compile it. Change from Debug to Release option and press Build. After a while It compiling stop with error. This error I described in file cgru/afanasy/src/project.cmake/fermer/CMakeLists.txt
You have to open the moc_state.cpp file and add the line #undef ERROR in top of the file after all includes.
Now, you can continue compile afermer. Press Build to finish it.
zaren
Posts: 19
Joined: Thu Jan 26, 2017 3:13 pm

Re: Afermer rendermanager

Post by zaren »

One more thing.
Please add “watch/qaftextwidget.cpp” line to cgru/afanasy/src/project.cmake/fermer/CMakeLists.txt to section

...
set (watch_cpp_src
"../../watch/wndlistenjob.cpp"
...

I’m waiting for you response :)
zaren
Posts: 19
Joined: Thu Jan 26, 2017 3:13 pm

Re: Afermer rendermanager

Post by zaren »

How to build Qt5 statically
http://amin-ahmadi.com/2016/09/22/how-t ... udio-2015/

I use it
Benny
Posts: 8
Joined: Wed Nov 08, 2017 2:34 pm

Re: Afermer rendermanager

Post by Benny »

Awesome, thank you. I will try my luck this evening. I'll report back to you. ;)
Benny
Posts: 8
Joined: Wed Nov 08, 2017 2:34 pm

Re: Afermer rendermanager

Post by Benny »

Hey Zaren,

So after following your guide and quite a substential amount of trial and error I stillt didn't manage to compile fermer.

win_build_msvc.cmd finds Boost and QT and creates the afanasy.sln as expected.
I used the static libraries Boost 1.61.1 and QT 5.7.0.
I also tried the dynamic versions but could not get them to work. Either way I end up getting a lot of

Code: Select all

 Error	LNK2038	mismatch detected for 'RuntimeLibrary': value 'MD_DynamicRelease' doesn't match value 'MT_StaticRelease' in qaftextwidget.obj	afermer	...\gru-2.2.3\afanasy\src\project.cmake\fermer\afanasy.lib(afnode.obj)
Should the referenced afanasy.lib and afqt.lib also be built statically?

On top of that I get a lot of unresolved symbol LINK errors in Qt5Network.lib even though the library appears to be properly linked in additional dependencies and directories.

So, quite some stuff to still figure out with a bit of a learning curve. :)
zaren
Posts: 19
Joined: Thu Jan 26, 2017 3:13 pm

Re: Afermer rendermanager

Post by zaren »

Hey, =)

Try to change compile flag ( afermer->C/C++->Code Generation->Runtime Library ) from /Md to /Mt in afermer, afanasy.lib and afqt.lib.

Waiting for your replay )
Benny
Posts: 8
Joined: Wed Nov 08, 2017 2:34 pm

Re: Afermer rendermanager

Post by Benny »

Okay so that got rid of the mismatch errors. Leaving only the unresolved symbol errors in the Qt5Network (qsslsocket_openssl_symbols.obj) and wndtask.obj.
For example:

Code: Select all

Error	LNK2019	unresolved external symbol __imp_CertGetCertificateChain referenced in function "public: void __cdecl QWindowsCaRootFetcher::start(void)" (?start@QWindowsCaRootFetcher@@QEAAXXZ)	afermer	...\cgru-2.2.3\afanasy\src\project.cmake\fermer\Qt5Network.lib(qsslsocket_openssl.obj)
At least for now ;)
zaren
Posts: 19
Joined: Thu Jan 26, 2017 3:13 pm

Re: Afermer rendermanager

Post by zaren »

According by https://msdn.microsoft.com/ru-ru/librar ... s.85).aspx
CertGetCertificateChain function placed in Crypt32.lib

Try to add that library to build dependencies for afermer before Qt5Network.lib ( afermer->Linker->Input->Additional Dependencies ). Somewhere between Ws2_32.lib and Qt5Network.lib
Post Reply