Build issue
hilbert-rozenbaum opened this issue · 9 comments
I'm trying to build QTTrader myself and getting this error during 'make' step:
script/rulesmodel.cpp: In member function ‘void RulesModel::swapRows(int, int)’:
script/rulesmodel.cpp:241:15: error: ‘class QList<bool>’ has no member named ‘swapItemsAt’
241 | pauseList.swapItemsAt(a, b);
| ^~~~~~~~~~~
script/rulesmodel.cpp:242:15: error: ‘class QList<int>’ has no member named ‘swapItemsAt’
242 | stateList.swapItemsAt(a, b);
| ^~~~~~~~~~~
script/rulesmodel.cpp:243:16: error: ‘class QList<ScriptObject*>’ has no member named ‘swapItemsAt’
243 | scriptList.swapItemsAt(a, b);
| ^~~~~~~~~~~
script/rulesmodel.cpp:244:16: error: ‘class QList<RuleHolder>’ has no member named ‘swapItemsAt’
244 | holderList.swapItemsAt(a, b);
| ^~~~~~~~~~~
script/rulesmodel.cpp:245:14: error: ‘class QList<unsigned int>’ has no member named ‘swapItemsAt’
245 | doneList.swapItemsAt(a, b);
| ^~~~~~~~~~~
make: *** [Makefile:1938: .obj/rulesmodel.o] Error 1
I used exactly the same steps like described here: https://github.com/JulyIghor/QtBitcoinTrader#compilation-on-linux
Operating system is Linux Mint 20.3.
Packages versions are:
libssl-dev:amd64 1.1.1f-1ubuntu2.12
libglu1-mesa-dev:amd64 9.0.1-1build1
qtmultimedia5-dev:amd64 5.12.8-0ubuntu1
qtscript5-dev:amd64 5.12.8+dfsg-0ubuntu1
qt5-qmake:amd64 5.12.8+dfsg-0ubuntu2.1
Can you help me to figure out what I'm doing wrong?
you are doing everything right, but you are using very old Qt version, can you use newer Qt version?
I think I can. All libraries where installed from default repositories.
What Qt version is recommended?
Latest Qt is recommended, 6.2
Or Qt 5.15 at least
Currently I am using Qt5.9.8 and static compiled openssl-1.1.1k and zlib-1.2.12 in Ubuntu 20.04 Desktop.
"qmake" and "make" finished successfully. after the successful compilation, I executed the product but unexpectedly got the following "openssl" error.
qt.network.ssl: QSslSocket: cannot resolve CRYPTO_num_locks
qt.network.ssl: QSslSocket: cannot resolve CRYPTO_set_id_callback
qt.network.ssl: QSslSocket: cannot resolve CRYPTO_set_locking_callback
qt.network.ssl: QSslSocket: cannot resolve ERR_free_strings
qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_cleanup
qt.network.ssl: QSslSocket: cannot resolve EVP_CIPHER_CTX_init
qt.network.ssl: QSslSocket: cannot resolve sk_new_null
qt.network.ssl: QSslSocket: cannot resolve sk_push
qt.network.ssl: QSslSocket: cannot resolve sk_free
qt.network.ssl: QSslSocket: cannot resolve sk_num
qt.network.ssl: QSslSocket: cannot resolve sk_pop_free
qt.network.ssl: QSslSocket: cannot resolve sk_value
qt.network.ssl: QSslSocket: cannot resolve SSL_library_init
qt.network.ssl: QSslSocket: cannot resolve SSL_load_error_strings
qt.network.ssl: QSslSocket: cannot resolve SSL_get_ex_new_index
qt.network.ssl: QSslSocket: cannot resolve SSLv3_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv23_client_method
qt.network.ssl: QSslSocket: cannot resolve SSLv3_server_method
qt.network.ssl: QSslSocket: cannot resolve SSLv23_server_method
qt.network.ssl: QSslSocket: cannot resolve X509_STORE_CTX_get_chain
qt.network.ssl: QSslSocket: cannot resolve OPENSSL_add_all_algorithms_noconf
qt.network.ssl: QSslSocket: cannot resolve OPENSSL_add_all_algorithms_conf
qt.network.ssl: QSslSocket: cannot resolve SSLeay
qt.network.ssl: QSslSocket: cannot resolve SSLeay_version
qt.network.ssl: QSslSocket: cannot call unresolved function SSLeay
qt.network.ssl: Incompatible version of OpenSSL
Segmentation fault (core dumped)
Then I modified the QtBitcoinTrader_Desktop.pro file for the link of the openssl 1.0.2g to the executable.
but the issue remained the same and it didn't help me.
Why could I got such error and please let me know the good solution.
Is that from the Qt or openssl version issue?
Hello. You need to link the same openssl version that used to build specified Qt SDK build.
Thanks for your reply.
But how and where can I find that openssl version for the Qt 5.9.8?
Thanks for your reply.
But how and where can I find that openssl version for the Qt 5.9.8?
Well, there is only choice: v1.0, v1.1, v2.0, so try other one
I am sorry but there is no v2.0 in openssl tags.
I am sorry but there is no v2.0 in openssl tags.
Anyway your Qt version is outdated, please use 5.15+ or 6.3+
I have tested it on those.