An error occurred while linking
project1.lpr(23,0) Error: Error while linking
That is not related to the MacroScript issue. (Neither is anything that relates to
compiling your project).
And I do not know the answer to that part.
The Message you got with the debugger: Yes, "dwarf with sets" is fine. Any of the 3 should work.
Dwarf3 may get better display of watches. But it may (in theory) cause issues with lldb. (There are no known issues with dwarf3 and lldb).
You can change that in Menu: Project > Project Options => Page: Debugger
Regarding your Darwin comment, I don't understnad that.
My previous post was about recompiling the IDE itself.
A bit of background...
The error you get relates to the "PascalScript" used in the IDE.
The source code editor in the IDE can record (and re-play) macros.
https://wiki.lazarus.freepascal.org/IDE_Window:_Editor_MacrosThe editor also supports Macros written in PascalScript.
https://wiki.lazarus.freepascal.org/Editor_Macros_PascalScriptThe first part works independent of the PascalScript. Only the 2nd part requires PascalScript.
If you do not use that 2nd part, then you can ignore the "EditorMacroScript self-test failed".
The IDE remembers that it failed, it will not repeat the test, and it will not bother you again.
(When Lazarus 2.2 is released you can try it again if you want)
If you want to use PascalScript in editor-macros, then you need to rebuild the IDE.
To rebuild the IDE, you can use menu Tools > "Rebuild IDE" or "Configure rebuild IDE"
(or the command line)
Since I currently cannot test, I cannot say for sure what the problem is, and what will fix it. But there is a pretty good chance that it has to do with that old workaround for TPoint.
That has caused issues in the past, and was fixed back then. But things may have changed.
"{$IFDEF darwin}"
The fpc compiler defines various values depending on your environment.
I am not sure in which cases it defines "darwin" (I did test that many years back, way before cocoa).
Also that "workaround" was needed and tested back then. It was only ever tested for 32bit.
I can currently not tell, if:
- your IDE compiles with or without that workaround
- if that workaround is needed for 64bit cocoa.
But from the error it is likely that either:
- the workaround is needed, but
not included
- the workaround is
not needed, but included
So if you want that to work, you need to recompile your IDE, with the setting for the workaround changed.
- Either force it to be included (if it currently is not)
- Or force it to be not included (remove the {$DEFINE NeedTPointFix } from the sources (IIRC 2 source files))