Am 08.04.2015 um 22:37 schrieb Georg Baum:

Let us analyze it:
1) The linker complains about an unresolved symbol.
2) The name of the symbol is lyx::frontend::FontMetrics.
3) Cannot be! This symbol is in dummy_funcs.cpp.
4) Maybe it is the order of the objects on the linker command line as Kornel
suggested? No, this is not the case (you could either try it out, or
remember that the linker commandline order usually not matter for object
files, only for libraries in certain cases).
5) OK, there must still be an error in the reasoning above. Assuming that
the linker is correct it can only be item 3) => read dummy_funcs.cpp again
very carefully
6) Bingo! dummy_funcs.cpp contains a class lyx::FontMetrics, not
lyx::frontend::FontMetrics

Hi Georg,

many thanks!

I don't know about linkers (not even what a linker really is) since I write my programs (only numerical integrations, 2D and 3D plots and curve fitting) with Lazarus or LabView and once learned to program with Turbo Pascal.

Now I understand it a bit better but are far away from really understanding why a C++-compiler needs so many steps and so much time while e.g. Lazarus never issues a linking problem and compiles much, much faster; and Lazarus programs can be compiled with Qt too. Maybe a developer here could give me a link to an explanation since I have this question since a long time and nobody yet could answer it.

Since I am not a programmer I will probably never understand the compilation stuff and CMake etc. I even don't really know why CMake is necessary and what it does exactly. Once we had SCons and the discussion why CMake is better was pure mystery to me. As spare time, just for fun developer I simply need a way to compile. Therefore my thanks go our to Kornel, Enrico etc. who deal wit all the stuff so that I don't have to learn this and can concentrate on other things like e.g. the Win installer scripts.

Now the fix is easy. I implemented it (without testing since I don't have
MSVC on this machine), but I am very sure that it works.

Yes it works.

many thanks again and best regards
Uwe

Reply via email to