Open Hubbitus opened 10 years ago
Libotr v0.4 has some API changes incompatible with Libotr v0.3- You can find full upgrade list here: https://otr.cypherpunks.ca/UPGRADING-libotr-4.0.0.txt Currently I'm working on porting qutim v0.3 (should also work on master with minor Qt4->Qt5 patches. However I still can't get working master build). At this point of time I've succeeded to make a conversation with OTR enabled, but plugin is still unstable and some OTR communications still occur from time to time. I will make a pull request when plugin will be stable enough for v0.3.
Oh, that's great!
If you will provide patch for Qt4 version I'll be able to port it to master myself. Also, what issues do you have connected with building of master branch?
I basically have those Qt4->Qt5 patches, so I can provide them as well. The only thing is that I can't verify them at the moment because of broken build on master (I don't use Qt5 on v0.3 build). I suspect my problems on master are connected to broken build environment. I have Qt5 from Fedora 20 repos and qbs is built from fedora srpm. Everything is being compiled, but qutim fails to start with segfault. Valgrind shows problems inside Qt5Core lib while it loads libQtGui.so.4 I will try to build Qt5 from source and rebuild qutim with it. If you are interested - I can provide valgrind logs.
When have you checked master build last time? Looks like I've fixed this type of problem some weeks ago.
This weekend I've tried to pull latest master - didn't help. Also I've downloaded Qt 5.2.1 binaries from official site - again no luck. The only thing is that fail is more verbose with official binaries and basically backtrace looks like this: qutim_sdk_0_3::ModuleManager::loadPlugins -> dlopen of jabber protocol -> QMetaType::registerNormalizedType Maybe we should switch this discussion to a new issue? Just not to mention original OTR plugin issue
Apparently problem occurs if I switch build to system libjreen. Bundled jreen was not referenced in any qbs file. After I've referenced it in protocols.qbs in the same way, as vreen, I was able to start qutim. OTR plugin still could not be loaded - it can't find some symbol qt_plugin_query_metadata. I will continue my investigation
Fixed all issues with master build, created pull request
/usr/bin/cmake -E cmake_progress_report /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/CMakeFiles 4 [ 87%] Built target aspeller /usr/bin/cmake -E cmake_progress_report /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/CMakeFiles [ 87%] /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/plugins/offtherecord/src/otrinternal.cpp: In constructor 'OtrInternal::OtrInternal(OtrSupport::Policy&, OtrlUserState)': /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/plugins/offtherecord/src/otrinternal.cpp:113:13: error: 'OtrlMessageAppOps' has no member named 'notify' m_uiOps.notify = (OtrInternal::cb_notify); ^ /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/plugins/offtherecord/src/otrinternal.cpp:114:13: error: 'OtrlMessageAppOps' has no member named 'display_otr_message' m_uiOps.display_otr_message = (OtrInternal::cb_display_otr_message); ^ /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/plugins/offtherecord/src/otrinternal.cpp:116:13: error: 'OtrlMessageAppOps' has no member named 'protocol_name' m_uiOps.protocol_name = (OtrInternal::cb_protocol_name); ^ /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/plugins/offtherecord/src/otrinternal.cpp:117:13: error: 'OtrlMessageAppOps' has no member named 'protocol_name_free' m_uiOps.protocol_name_free = (OtrInternal::cb_protocol_name_free); ^ /home/pasha/SOFT/git/qutim/master/qutim.6f3a98a/plugins/offtherecord/src/otrinternal.cpp:123:13: error: 'OtrlMessageAppOps' has no member named 'log_message' m_uiOps.log_message = (OtrInternal::cb_log_message);