Minutor won't compile with gcc 10.1.0.
Closed this issue · 5 comments
This is the returned error
usr/bin/ld: properties.o: in function `Properties::Properties(QWidget*)':
properties.cpp:(.text+0x37d): undefined reference to `PropertieTreeCreator::PropertieTreeCreator()'
collect2: error: ld returned 1 exit status
The first faulty commit is ac6ef8a
which indeed modifies properties.cpp and propertietreecreator.cpp.
If other information is required just ask me, I'll be happy to provide it.
I patiently compiled gcc 8.4.0 and I was able to compile Minutor with that.
Which OS do you use?
Or asked differently, which OS provides GCC 10.1.0 as default compiler?
My OS is Arch Linux. I think it can happen even with other rolling release distributions.
@EtlamGit considering that the mentioned functions are templated I guess it can be solved by moving the implemenation to the header and declare them as inline. I don't know why the behaviour of the gcc should have changed with version 10 in this regards but one could give a try.
Especially the hint from afontenot makes me confident that this might help. As he removed the calls to that functions (ParseIterable, ParseList) from properties.cpp to make it work. Even though there are also calls to them in the propertietreecreator.cpp. Maybe the reason is that the template implementations are withing this propertietreecreator.cpp.
I just created a pull request (#232) because even when it will not help its a cleaner way of dealing with this template implementations