Closed lparsons closed 5 years ago
@lparsons we have updated the README for Linux distros to take care of this. You can just copy paste the installation command. It should install any missing components, and will leave the already existing components as they are.
If you still run into any issues, please let us know
@shubhra-agrawal Thanks so much. I figured something was updated. I ran through updating those packages but still run into issues:
make[2]: Entering directory '/home/lparsons/Documents/projects/maven/ElMaven/src/common'
g++ -c -m64 -pipe -g -fPIC -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../../src -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I/home/lparsons/Documents/projects/maven/build/tmp/common -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o /home/lparsons/Documents/projects/maven/build/tmp/common/downloadmanager.o downloadmanager.cpp
/usr/lib/x86_64-linux-gnu/qt5/bin/moc -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I/home/lparsons/Documents/projects/maven/ElMaven/src/common -I/home/lparsons/Documents/projects/maven/ElMaven/src -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/5 -I/usr/include/x86_64-linux-gnu/c++/5 -I/usr/include/c++/5/backward -I/usr/lib/gcc/x86_64-linux-gnu/5/include -I/usr/local/include -I/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed -I/usr/include/x86_64-linux-gnu -I/usr/include downloadmanager.h -o /home/lparsons/Documents/projects/maven/build/tmp/common/moc_downloadmanager.cpp
g++ -c -m64 -pipe -g -fPIC -Wall -W -D_REENTRANT -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../../src -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I/home/lparsons/Documents/projects/maven/build/tmp/common -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o /home/lparsons/Documents/projects/maven/build/tmp/common/moc_downloadmanager.o /home/lparsons/Documents/projects/maven/build/tmp/common/moc_downloadmanager.cpp
downloadmanager.cpp:11:5: warning: identifier ‘nullptr’ is a keyword in C++11 [-Wc++0x-compat]
_reply(nullptr),
^
In file included from downloadmanager.cpp:2:0:
../../src/pollyCLI/pollyintegration.h:7:1: warning: scoped enums only available with -std=c++11 or -std=gnu++11
enum class PollyApp: int
^
../../src/pollyCLI/pollyintegration.h:7:22: warning: scoped enums only available with -std=c++11 or -std=gnu++11
enum class PollyApp: int
^
../../src/pollyCLI/pollyintegration.h:15:1: warning: scoped enums only available with -std=c++11 or -std=gnu++11
enum class ErrorStatus: int
^
../../src/pollyCLI/pollyintegration.h:15:25: warning: scoped enums only available with -std=c++11 or -std=gnu++11
enum class ErrorStatus: int
^
../../src/pollyCLI/pollyintegration.h:187:49: error: ‘>>’ should be ‘> >’ within a nested template argument list
QPair<ErrorStatus, QMap<QString, QStringList>> _fetchAppLicense();
^
downloadmanager.cpp: In constructor ‘DownloadManager::DownloadManager()’:
downloadmanager.cpp:11:12: error: ‘nullptr’ was not declared in this scope
_reply(nullptr),
^
In file included from downloadmanager.cpp:1:0:
downloadmanager.h:40:20: warning: ‘DownloadManager::_reply’ will be initialized after [-Wreorder]
QNetworkReply* _reply;
^
downloadmanager.h:18:10: warning: ‘bool DownloadManager::err’ [-Wreorder]
bool err;
^
downloadmanager.cpp:9:1: warning: when initialized here [-Wreorder]
DownloadManager::DownloadManager():
^
downloadmanager.cpp: In member function ‘void DownloadManager::download(bool)’:
downloadmanager.cpp:36:25: error: ‘QOverload’ was not declared in this scope
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:36:62: error: expected primary-expression before ‘>’ token
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:36:63: error: ‘::of’ has not been declared
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:52:25: error: ‘QOverload’ was not declared in this scope
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:52:62: error: expected primary-expression before ‘>’ token
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:52:63: error: ‘::of’ has not been declared
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
Makefile:292: recipe for target '/home/lparsons/Documents/projects/maven/build/tmp/common/downloadmanager.o' failed
make[2]: *** [/home/lparsons/Documents/projects/maven/build/tmp/common/downloadmanager.o] Error 1
make[2]: Leaving directory '/home/lparsons/Documents/projects/maven/ElMaven/src/common'
Makefile:90: recipe for target 'sub-common-make_first-ordered' failed
make[1]: *** [sub-common-make_first-ordered] Error 2
make[1]: Leaving directory '/home/lparsons/Documents/projects/maven/ElMaven/src'
Makefile:131: recipe for target 'sub-src-make_first-ordered' failed
make: *** [sub-src-make_first-ordered] Error 2
/home/lparsons/Documents/projects/maven/ElMaven/3rdparty/google-breakpad/src/client/linux/handler/minidump_descriptor.h
@shubhra-agrawal Looking a bit further, this seems to be a similar error to the current Travis Build Error: https://travis-ci.org/ElucidataInc/ElMaven/jobs/533290918#L1445-L1486
@lparsons Hey, we somehow missed this Will quickly patch it up and update you here Thanks for filing
@lparsons
I have pushed a fix for this in a separate branch, fix_linux_build. Could you please try it out and check if it works for you ?
Also, you will have to update your Qt version. Atm, it seems it's <= 5.5, you will need a version greater than that.
@lparsons Let us know if fix_linux_build is successfully compiling on your system. We'll merge that in the 0.7.1 final release in that case.
Sorry for the delay, I had some other projects take priority. I'm still unable to build develop.
Processing 3rdparty/pugixml/src/tmp/pugixml.gcda
/home/lparsons/Documents/projects/maven/ElMaven/3rdparty/pugixml/src/tmp/pugixml.gcda:stamp mismatch with notes file
geninfo: WARNING: gcov did not create any files for /home/lparsons/Documents/projects/maven/ElMaven/3rdparty/pugixml/src/tmp/pugixml.gcda!
Finished .info-file creation
Reading data file ../coverage.info
Found 199 entries.
Found common filename prefix "/home/lparsons/Documents/projects/maven/ElMaven"
Writing .css and .png files.
Generating output.
Processing file 3rdparty/Eigen/src/Core/util/IntegralConstant.h
Processing file 3rdparty/Eigen/src/Core/util/IndexedViewHelper.h
Processing file 3rdparty/Eigen/src/Core/util/SymbolicIndex.h
Processing file 3rdparty/google-breakpad/src/client/linux/handler/minidump_descriptor.h
genhtml: ERROR: cannot read /home/lparsons/Documents/projects/maven/ElMaven/3rdparty/google-breakpad/src/client/linux/handler/minidump_descriptor.h
Perhaps someone could try a fresh checkout somewhere and see if they run into similar issues. Seems some things aren't in the repo?
@lparsons This is not a build failure. You are trying to get the test coverage information, which can only be carried out after the process of compilation is complete. Considering that to be that case, you must have got the the compiled binary. Please let us know if you don't have the binary as well
From the above message it seems the test coverage tools(genthml in this case) is trying to read files that now have been moved to a different folder. I would recommend you to do a clean build. Please follow the steps below for a clean build
cd /XYZ-PATH/ElMaven/
make distclean
*.gcno
and *.gcda
files that you have in your repo. You can do it by:
find . -name "*.gcno" -delete
find . -name "*.gcda" -delete
rm -r /XYZ-PATH/build/*
This should, hopefully, get rid of the all the old and new build files that are present on your system. Post this you can build El-MAVEN again. All the build files, .o, gcno, .lib that are generated after compilation and .gcda files that are generated after running Maventests should be present inside XYZ-PATH/build/*
. Once this is done you should be able to generate the test coverage information
Thanks @rish9511. I followed those steps and then ran ./run.sh
. However, I now run into a new error (on the develop
branch):
make[2]: Entering directory '/home/lparsons/Documents/projects/maven/ElMaven/src/common'
g++ -c -m64 -pipe -std=c++11 -O2 -fPIC -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../../src -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I/home/lparsons/Documents/projects/maven/build/tmp/common -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o /home/lparsons/Documents/projects/maven/build/tmp/common/downloadmanager.o downloadmanager.cpp
/usr/lib/x86_64-linux-gnu/qt5/bin/moc -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -I/home/lparsons/Documents/projects/maven/ElMaven/src/common -I/home/lparsons/Documents/projects/maven/ElMaven/src -I/usr/include/x86_64-linux-gnu/qt5 -I/usr/include/x86_64-linux-gnu/qt5/QtGui -I/usr/include/x86_64-linux-gnu/qt5/QtNetwork -I/usr/include/x86_64-linux-gnu/qt5/QtCore -I/usr/include/c++/5 -I/usr/include/x86_64-linux-gnu/c++/5 -I/usr/include/c++/5/backward -I/usr/lib/gcc/x86_64-linux-gnu/5/include -I/usr/local/include -I/usr/lib/gcc/x86_64-linux-gnu/5/include-fixed -I/usr/include/x86_64-linux-gnu -I/usr/include downloadmanager.h -o /home/lparsons/Documents/projects/maven/build/tmp/common/moc_downloadmanager.cpp
g++ -c -m64 -pipe -std=c++11 -O2 -fPIC -Wall -W -D_REENTRANT -DQT_NO_DEBUG -DQT_GUI_LIB -DQT_NETWORK_LIB -DQT_CORE_LIB -I. -I../../src -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtNetwork -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I/home/lparsons/Documents/projects/maven/build/tmp/common -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++-64 -o /home/lparsons/Documents/projects/maven/build/tmp/common/moc_downloadmanager.o /home/lparsons/Documents/projects/maven/build/tmp/common/moc_downloadmanager.cpp
In file included from downloadmanager.cpp:1:0:
downloadmanager.h: In constructor ‘DownloadManager::DownloadManager()’:
downloadmanager.h:40:20: warning: ‘DownloadManager::_reply’ will be initialized after [-Wreorder]
QNetworkReply* _reply;
^
downloadmanager.h:18:10: warning: ‘bool DownloadManager::err’ [-Wreorder]
bool err;
^
downloadmanager.cpp:9:1: warning: when initialized here [-Wreorder]
DownloadManager::DownloadManager():
^
downloadmanager.cpp: In member function ‘void DownloadManager::download(bool)’:
downloadmanager.cpp:36:25: error: ‘QOverload’ was not declared in this scope
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:36:62: error: expected primary-expression before ‘>’ token
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:36:63: error: ‘::of’ has not been declared
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:52:25: error: ‘QOverload’ was not declared in this scope
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:52:62: error: expected primary-expression before ‘>’ token
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
downloadmanager.cpp:52:63: error: ‘::of’ has not been declared
connect(_reply, QOverload<QNetworkReply::NetworkError>::of(&QNetworkReply::error),
^
Makefile:292: recipe for target '/home/lparsons/Documents/projects/maven/build/tmp/common/downloadmanager.o' failed
make[2]: *** [/home/lparsons/Documents/projects/maven/build/tmp/common/downloadmanager.o] Error 1
make[2]: Leaving directory '/home/lparsons/Documents/projects/maven/ElMaven/src/common'
Makefile:90: recipe for target 'sub-common-make_first-ordered' failed
make[1]: *** [sub-common-make_first-ordered] Error 2
make[1]: Leaving directory '/home/lparsons/Documents/projects/maven/ElMaven/src'
Makefile:131: recipe for target 'sub-src-make_first-ordered' failed
make: *** [sub-src-make_first-ordered] Error 2
@rish9511 The error I get is, in fact, the same error that occurs on the Travis builds: https://travis-ci.org/ElucidataInc/ElMaven/builds/539351377#L1432
It seems there is something broken in the current build.
I can also confirm that I have no trouble building v0.6.1.1.
@lparsons
The error you are getting now is because of the older version of Qt. QOverload has been introduced in Qt5.7. If you are not sure what version of Qt is installed on your system, you can check it by qmake -v
. So, most probably updating your version of Qt should fix the issue
Travis is also failing for the same reason, it's using Qt v5.2. We need to fix that as well
I can also confirm that I have no trouble building v0.6.1.1
Yes, that's because we were not using QOverload
macro before v0.7.0.
README currently does not explicitly mentions what version of Qt to install, we will update that as well
OK, I've made some progress on this, but have yet to get things to complie. There are a number of changes to dependencies it seems. At least qt5.9 is needed (not sure exactly which things are being built with though). Also, libpulse-dev is a new package dependency. However, I'm not stuck at this error:
linking ../../../bin/El-MAVEN
/home/travis/build/lparsons/ElMaven/../build/libs//libprojectDB.a(projectversioning.o): In function `ProjectVersioning::backupFile(std::string const&, std::string const&)':
projectversioning.cpp:(.text+0x7c3): undefined reference to `boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::copy_option, boost::system::error_code*)'
collect2: error: ld returned 1 exit status
See my Travis build: https://travis-ci.org/lparsons/ElMaven/builds/542916264
Also, I have a different problem on my personal 16.04 laptop:
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/mainwindow.o:(.qtversion[qt_version_tag]+0x0): undefined reference to `qt_version_tag'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/metabolite_node.o: In function `MetaboliteNode::dropEvent(QGraphicsSceneDragDropEvent*)':
metabolite_node.cpp:(.text+0x800): undefined reference to `operator<<(QDebug, QWidget const*)'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/pathwaywidget.o: In function `QDataStream& QtPrivate::readAssociativeContainer<QMap<int, QVariant> >(QDataStream&, QMap<int, QVariant>&)':
pathwaywidget.cpp:(.text._ZN9QtPrivate24readAssociativeContainerI4QMapIi8QVariantEEER11QDataStreamS5_RT_[_ZN9QtPrivate24readAssociativeContainerI4QMapIi8QVariantEEER11QDataStreamS5_RT_]+0x3b): undefined reference to `QIODevice::isTransactionStarted() const'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/tabledockwidget.o:(.data.rel.ro._ZTV8ListView[_ZTV8ListView]+0xc8): undefined reference to `QListView::wheelEvent(QWheelEvent*)'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/pollyelmaveninterface.o: In function `PollyElmavenInterfaceDialog::_callInitialEPIForm()':
pollyelmaveninterface.cpp:(.text+0x913): undefined reference to `QWidget::setWindowFlag(Qt::WindowType, bool)'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/qcustomplot.o: In function `QCPAxisTickerPi::fractionToString(int, int) const':
qcustomplot.cpp:(.text+0x89ab): undefined reference to `QString::arg(QLatin1String, int, QChar) const'
qcustomplot.cpp:(.text+0x8b1c): undefined reference to `QString::arg(QLatin1String, int, QChar) const'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/qcustomplot.o: In function `QCPAxisPainterPrivate::getTickLabelData(QFont const&, QString const&) const':
qcustomplot.cpp:(.text+0xd08c): undefined reference to `QString::operator=(QLatin1String)'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/qcustomplot.o: In function `QCPAxisTickerTime::QCPAxisTickerTime()':
qcustomplot.cpp:(.text+0x2835a): undefined reference to `QString::operator=(QLatin1String)'
qcustomplot.cpp:(.text+0x28381): undefined reference to `QString::operator=(QLatin1String)'
qcustomplot.cpp:(.text+0x283a8): undefined reference to `QString::operator=(QLatin1String)'
qcustomplot.cpp:(.text+0x283cf): undefined reference to `QString::operator=(QLatin1String)'
/home/lparsons/Documents/projects/maven/build/tmp/mzroll/qcustomplot.o:qcustomplot.cpp:(.text+0x283f6): more undefined references to `QString::operator=(QLatin1String)' follow
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libmaven.a(mzAligner.o): In function `Aligner::updateSampleRts(QJsonObject&)':
mzAligner.cpp:(.text+0x22d): undefined reference to `QJsonObject::detach2(unsigned int)'
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libmaven.a(mzAligner.o): In function `Aligner::updateGroupsRts(QJsonObject&)':
mzAligner.cpp:(.text+0x2d28): undefined reference to `QJsonObject::detach2(unsigned int)'
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libpollyCLI.a(pollyintegration.o): In function `PollyIntegration::_hasError(QList<QByteArray>)':
pollyintegration.cpp:(.text+0x12ee): undefined reference to `QJsonValue::toString() const'
pollyintegration.cpp:(.text+0x1387): undefined reference to `QJsonValue::toString() const'
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libpollyCLI.a(pollyintegration.o): In function `PollyIntegration::obtainComponentId(PollyApp)':
pollyintegration.cpp:(.text+0x38b9): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x38c3): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x3975): undefined reference to `QJsonValue::toString() const'
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libpollyCLI.a(pollyintegration.o): In function `PollyIntegration::obtainWorkflowId(PollyApp)':
pollyintegration.cpp:(.text+0x3d9a): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x3da4): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x3e5d): undefined reference to `QJsonValue::toString() const'
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libpollyCLI.a(pollyintegration.o): In function `PollyIntegration::getComponentEndpoint(QString, QString, QString)':
pollyintegration.cpp:(.text+0x6bcc): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x6bd6): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x6d4f): undefined reference to `QJsonValue::toString() const'
/home/lparsons/Documents/projects/maven/ElMaven-fork/../build/libs//libpollyCLI.a(pollyintegration.o): In function `PollyIntegration::getWorkflowEndpoint(QString, QString, QString, QString, QString)':
pollyintegration.cpp:(.text+0x6fee): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x6ff8): undefined reference to `QJsonArray::detach2(unsigned int)'
pollyintegration.cpp:(.text+0x7172): undefined reference to `QJsonValue::toString() const'
collect2: error: ld returned 1 exit status
undefined reference to `boost::filesystem::detail::copy_file(boost::filesystem::path const&, boost::filesystem::path const&, boost::filesystem::copy_option, boost::system::error_code*)'
For this, you will have to update your libboost version to atleast 1.58
@lparsons If you still run into any compilation errors after this, let's get on a call so @rish9511 can resolve all of these at once? He is already working on adding minimum version requirements for all our dependencies in the README.
I was finally able to get a build finished. I updated the .travis.yml
so it actually builds in #1097. However, I strongly encourage you to adopt a transparent and automated build system like the one used in Maven (see #524).
@lparsons The CI branch is stable now and getting merged soon. We will start working on continuous deployment and packaging next week. Will let you know once that is ready.
Can I add you as a reviewer on the PR raised for fixing El-MAVEN CI? I've given you read rights to the repository, please accept it.
@shubhra-agrawal I'm also having a devil of a time compiling, on windows with msys2. I'm on the v0.8.0-beta release
I upgraded to QT 5.12 and followed the readme. Additionally, I had to install
mingw-w64-x86_64-icu mingw-w64-x86_64-freetype mingw-w64-x86_64-szip mingw-w64-x86_64-openssl
I'm now able to compile, and run peakdetector. However, when I try to run the GUI, I get the error
The procedure entry point hb_font_set_ptem could not be located in the dynamic link library Qt5Gui.dll
I double checked that the same version of Qt5Gui.dll is being used at compilation and runtime. Any other ideas?
@chubukov It is possible that you might have more than one copy of the Qt5Gui.dll
library from previous Qt installs, and that the one against which El-MAVEN GUI was compiled and the one that its linked to are different (the one linked is missing that hb_font_set_ptem
procedure). I found two threads on Qt Forums that describe a very similar issue:
But if you want to avoid going through the trouble of debugging this dynamic linking error, you could start afresh (uninstall your msys2 completely and reinstall) following the instructions given in our README, which we have already tried on fresh Windows systems. Of course, if you use your msys2 env for other purposes, you might not want to completely nuke your current setup, in which case it might be worth looking into those threads.
Let us know, if we can help in any other way.
@saifulbkhan Totally agree that that's what it looks like, I just couldn't track down where the discrepancy was. Will let you know if I get it.
@saifulbkhan deleting dlls one by one, I was able to track this down to libharfbuzz-0.dll
. Force reinstalling mingw-w64-x86_64-harfbuzz
and recopying the dll did the trick. I am still not sure why the error message implicated the wrong dll.
@chubukov Glad it worked out for you.
Your solution makes sense to me because the procedure hb_font_set_ptem
is in fact a symbol from the harfbuzz
library. El-MAVEN itself does not directly use harfbuzz
, but most text rendering libraries (such as QtGui) do. QtGui.dll
must have itself been linked to a libharfbuzz-0.dll
, which perhaps not being compiled in some particular fashion, was missing functions that were required and that is why you see a complaint from the parent library.
Describe the bug I'm trying to build the latest ElMaven versions (anything 0.7.0 and beyond) and I'm running into a compile issue. Perhaps something I'm missing?
To Reproduce Steps to reproduce the behavior:
Expected behavior Successful build
System (please complete the following information):