Re: [Lazarus] jcfidelazarus JEDI Code Formatter cannot handle generic and specialize keywords
Please also add record Helper (and most likely class helper) to the list of things not working. (Checked moments ago on lazarus trunk) Michael Am 20.04.16 um 08:27 schrieb Aradeonas: What Lazarus version? Regards, Ara -- http://www.fastmail.com - Choose from over 50 domains or use your own -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Aarch64 as CPU target for RPi3 with Linux as OS
AFAIK This is the default mode on RPi for now, same for ODroid C2, it also currently runs a64 cpu with a a32 kernel, 'real' 64bit support will come later. Michael Am 02.03.16 um 13:52 schrieb Michael Schnell: On 03/01/2016 09:45 PM, Alfred wrote: While preparing fpc(laz)up for my RPi3, Choosing a64 as CPU target I am exited to see that there is a very cheap testing platform for a64 arch ! Question: can a64 hardware and Linux run a32 programs (like X64 systems can run X32 programs) ? -Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Building GUI program for RPi1 on RPi2?
You will need to create code for armv6, Pi2B is armv7 The easiest way is most propably to install freepascal on the old RPi1B and to compile the code there. Either use apt-get or search for a fpc 3.0 version that is compiled for this device. Another alternative could be to build another version of freepascal on your raspi2 that supports armv6. make all OPT="-dFPC_ARMHF -CpARMV6 -OpARMV6" You'd have to look up one of the numerous tutorials on building fpc 3.0 on Raspbery Pi if this build does not work out of the box. Michael Am 16.01.16 um 11:50 schrieb Bo Berglund: I have a development system running on a Raspberry Pi2B with fpc 3.0.0 and Lazarus 1.6RC2. It works just fine. :) Today I am faced with a problem regarding compatibility between RPi1 and RPi2... I have this Delphi program I wrote some years ago which is used to show a text dialog on a TV for my mother-in-law. She is deaf and bed-bound and to communicate with her I wrote the program so it could display a huge text on an attached TV so she can read what one types in. Now the XP computer it was running on is dead and I have an old RPi1B with 256M RAM, which I could put in its place. I used Lazarus conversion tool to bring in the Delphi7 project to my Pi2B and it compiled and ran fine. Success here! So the question really is if I have to do something in the configuration of the project to create an executable which will run on the RPi1 hardware? The fpc compiler I have is built using the OPT=-dFPC_ARMHF flag. Will this cause executables compiled in Lazarus to only be working in an RPi2?? -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Is there something more advanced than Project Templates to add configurable Projects?
I was looking into http://wiki.lazarus.freepascal.org/Project_Templates page to create some custom templates for embedded controller projects as they are usually not straightforward to configure. What I am missing is default settings, support for Dropdown Menus and open file dialogs (as available in the configuration dialogs for lazarus itself). Before I start modifying the component I wanted to ask if there is already another componet that I perhaps did not find. Thanks, Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] OmniPascal: Visual Studio Code Pascal Extension
Dies it support Debugging? Am 25.11.15 um 15:10 schrieb Anthony Walter: In the event you haven't noticed, last week someone posted an announcement of a Free Pascal/Lazarus extension to Visual Studio Code: http://www.omnipascal.com/ I installed it but so far I can't get the code insight working correctly. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus in trunk not working after Rev 50151 on MacOSX
Thank you for the fix, just tried it on fresh trunk, works! Michael Am 03.11.15 um 17:34 schrieb Mattias Gaertner: On Tue, 3 Nov 2015 17:24:02 +0100 Ondrej Pokorny wrote: On 03.11.2015 17:08, Mattias Gaertner wrote: Fixed. How did you find it from the description? I didn't. I tested on OS X. You are a wizard :) Sorry for introducing the bug in my code. But I know how it happened: it was introduced by CodeTools variable completion: procedure TIDECommands.PostponeUpdateEvents; begin FDontExecuteUpdateEventsUntil := GetTickCount64 + 500; end; codetools use only a simple heuristic to calculate the type of a binary operator. The function TFindDeclarationTool.CalculateBinaryOperator needs to be extended for Alias types (e.g. 'integer' instead of longint) and for ranges (e.g. if the operands do not fit into an integer). Should I report it in the bug tracker? Yes. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus in trunk not working after Rev 50151 on MacOSX
Here's the info: /usr/local/bin/fpc -i Free Pascal Compiler version 2.6.4 Compiler Date : 2014/02/26 Compiler CPU Target: i386 --- LCL_PLATFORM=carbon CPU_TARGET=i386 COMPILERSWITCH="--compiler=/usr/local/bin/fpc" make clean all CPU_TARGET=$CPU_TARGET LCL_PLATFORM=$LCL_PLATFORM OPT="-k'-framework' -k'ApplicationServices'" || exit 1 Michael Am 03.11.15 um 01:38 schrieb Mattias Gaertner: On Thu, 29 Oct 2015 00:55:46 +0100 Michael Ring wrote: I today realized that current trunk does not work anymore after Rev 50151, Lazarus starts and when I load a project I get a Range Check Error and after this I cannot open source files. Is this a known issue? What FPC version? What options did you use to compile the IDE? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Lazarus in trunk not working after Rev 50151 on MacOSX
I today realized that current trunk does not work anymore after Rev 50151, Lazarus starts and when I load a project I get a Range Check Error and after this I cannot open source files. Is this a known issue? Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Accessing GPIO on RaspberryPi2 from Lazarus/FPC
I agree, this is a really, really nice find. Not only because of the rpi code, their xml parser implementation is the most easiest to debug I have ever seen, not the usual pointer chaos seen in all the other implementations. Hopefully there are even more gems hidden in this library. Michael Am 10.10.15 um 00:31 schrieb Bo Berglund: On Fri, 09 Oct 2015 07:31:52 +, Alfred wrote: Please have a look at: http://www.afterwarp.net/products/pxl https://github.com/yunkot/pxl Forum post: http://forum.lazarus.freepascal.org/index.php/topic,29852.0.html?PHPSESSID=bf43911005bf788ab072b3d73d1bfb4f Pxl is a very well written library, capable of doing a lot, with the inclusion of hardware access on RPi(2) ! See sample: https://github.com/yunkot/pxl/tree/master/Samples/FreePascal/SingleBoard/RaspberryPI Very good suggestion, Thanks! I noticed in the file PXL.Boards.RPi.pas the following note: // The following option controls whether the code is optimized for Raspberry PI 2. {.$DEFINE RPi2} And further down I found that this define controls the address used for GPIO: FChipOffsetBase := {$IFDEF RPi2} $3F000 {$ELSE} $2 {$ENDIF}; // in pages (x 4096 bytes) So it looks like it is going to solve my I/O control on the Pi2! Now I just have to figure which files to copy over to the Pi for this to work, the complete download is very big and most of it I really do not need... -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Build of Lazarus fails on Mac with STABS error (perhaps because of MacOSX 10.11??)
I did a full rebuild based on fpc 2.6.4, worked perfectly on my Mac, both via the normal make and also via lazbuild. Thank you very much, Mattias! Michael Am 01.10.15 um 20:45 schrieb Mattias Gaertner: On Wed, 30 Sep 2015 15:22:31 +0200 Michael Ring wrote: Two or three weeks ago I switched my main computer to OSX 10.11, now I tried to re-compile Lazarus but compilation failed. I compile Lazarus quite regulary, so my guess is that this is perhaps related to OSX 10.11 as this problem is new to me and I have not seen others talking about an error like this in the forum (besides a thread in may, but this seems at least partially unrelated as I was able to compile lazarus during the whole summer. I was able to make the main compile work again by adding -gw explicitly to OPT: [...] :5:9: error: unsupported directive '.stabs' .stabs "dbgintfbasetypes.pas",100,0,0,Lf1 [...] ^ Any ideas how to solve this? I changed the makefiles, IDE and lazbuild to use -gw instead of -g on darwin. Please test. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Build of Lazarus fails on Mac with STABS error (perhaps because of MacOSX 10.11??)
Thank you both for the information, I tried Michael's workarround, it did not work for me. What worked in the end was using latest 3.0.1 compiler with lazbuild. Michael Am 30.09.15 um 22:41 schrieb Sven Barth: Am 30.09.2015 20:59 schrieb "Schindler Karl-Michael" mailto:karl-michael.schind...@web.de>>: > So, it does not require fpc 3.0 or even svn-trunk. Yes, it does not /require/ 3.0 or trunk, but trunk (and also 3.0) will have the problem solved by only supporting dwarf for Mac OS X, thus -gl will (should?) default to dwarf by itself. Regards, Sven -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Build of Lazarus fails on Mac with STABS error (perhaps because of MacOSX 10.11??)
I am not sure if I understand correctly what you mean. Is there a way to pass -gw with the help of lazbuild? I checked, but did not find anything obious. The only other option would be to fix all Makefiles with a sed script (there is quite a number of -g in the Makefiles) this works of course but it would be better to have this solved in a another way. Do you know if Stabs for Mac is only removed on trunk or also removed in 3.0? 3.0 will some day get officially supported compiler for building lazarus, but not trunk. Michael Am 30.09.15 um 15:47 schrieb Sven Barth: Am 30.09.2015 15:22 schrieb "Michael Ring" <mailto:m...@michael-ring.org>>: > grep "\-g" /usr/local/share/lazarus/components/debuggerintf/Makefile > > override COMPILER_OPTIONS+=-MObjFPC -Scghi -O1 -g -gl -l -vw- -vh- -venibq -vm4046 > > > > Any ideas how to solve this? > You should try to pass -gw here as well. AFAIK there was some change regarding stabs support and trunk even completely removed it for Mac OS X. Regards, Sven -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Build of Lazarus fails on Mac with STABS error (perhaps because of MacOSX 10.11??)
Two or three weeks ago I switched my main computer to OSX 10.11, now I tried to re-compile Lazarus but compilation failed. I compile Lazarus quite regulary, so my guess is that this is perhaps related to OSX 10.11 as this problem is new to me and I have not seen others talking about an error like this in the forum (besides a thread in may, but this seems at least partially unrelated as I was able to compile lazarus during the whole summer. I was able to make the main compile work again by adding -gw explicitly to OPT: make clean all CPU_TARGET=i386 LCL_PLATFORM=carbon OPT="-k'-framework' -k'ApplicationServices' -gw" So far, so good but when I run lazbuild the build fails: lazbuild --build-ide= --ws=carbon --cpu=i386 --compiler=/usr/local/bin/fpc Free Pascal Compiler version 2.6.4 [2014/02/26] for i386 Copyright (c) 1993-2014 by Florian Klaempfl and others (1002) Target OS: Darwin for i386 (3104) Compiling debuggerintf.pas (3104) Compiling dbgintfbasetypes.pas :4:9: error: unsupported directive '.stabs' .stabs "/usr/local/share/lazarus/components/debuggerintf/",100,0,0,Lf1 ^ :5:9: error: unsupported directive '.stabs' .stabs "dbgintfbasetypes.pas",100,0,0,Lf1 ^ :44:9: error: unsupported directive '.stabs' .stabs ":t1=-32;",128,0,0,0 The problem seems to be that with lazbuild the Makefile defaults are taken, this means for some modules that they are compiled with only -g which means with Stabs debug info and this perhaps is not valid anymore on Mac. grep "\-g" /usr/local/share/lazarus/components/debuggerintf/Makefile override COMPILER_OPTIONS+=-MObjFPC -Scghi -O1 -g -gl -l -vw- -vh- -venibq -vm4046 Any ideas how to solve this? Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac retina pain
The _real_ solution is also hidden in this thread: Felipe found it, perhaps the fix never found it's way in the Lazarus Sourcecode: With this search string: site:lists.apple.com/archives/carbon-dev retina Here is the magic! Commands in the terminal: Retinize! defaults write lazarus.freepascal.ide AppleMagnifiedMode NO De-Retinize! defaults write lazarus.freepascal.ide AppleMagnifiedMode YES Looks like that it can be fixed in code too: http://sdg.mesonet.org/people/brad/XCode3/Documentation/DocSets/com.apple.adc.documentation.AppleSnowLeopard.CoreReference.docset/Contents/Resources/Documents/#documentation/UserExperience/Conceptual/HiDPIOverview/HiDPIConcepts/HiDPIConcepts.html " by specifying kWindowFrameworkScaledAttribute at window creation time." Am 29.05.15 um 13:32 schrieb Graeme Geldenhuys: On 2015-02-05 23:13, Mattias Gaertner wrote: The trick is to close the program, then remove the following two lines from projectname.app/Contents/Info.plist: Arg! It would have saved me so much time, if only I read the whole message thread before trying all kinds of things. :) At least in the end I found the same work-around as you. Regards, - Graeme - -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Codetools error when asm block contains 'if'
I have the following peace of code that breaks codetools on trunk: Self.CSR_bits.setENABLE; asm cpsie if end; When I try to do ctrl-space in Lazarus I now get the following error-message: Codetools, Fehler: 1 armcm0p.pp(167,11) Error: unerwartetes Schlüsselwort "if" im ASM-Block gefunden Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Some issues with openocd and gdbmidebugger
Over the weekend I tried to see if it is possible to change from my current approach of using cgdb for debugging embedded projects back to lazarus. So I took my old patches and for lazarus and based on the patches I wrote a new debugger unit for openocd. So far so good, but I am having an issue in the early startup phase in TGDBMIDebuggerCommandStartDebugging.DoExecute After the breakpoint for main is set and -exec-continue is called (I tried both the async and not async version): @@ -5007,15 +5030,20 @@ // RUN DefaultTimeOut := 0; - if not ExecuteCommand(Cmd, R, [cfTryAsync]) +// if not ExecuteCommand(Cmd, R, [cfTryAsync]) +if not ExecuteCommand(Cmd, R) the debugger comes back with the (gdb) prompt before the stop at the breakpoint. This confuses StartDebugging, the next thing is tries is to remove the breakpint, this fails because the debugger thinks the process is still running. I checked with gdb directly connected, there the output in non-async mode looks good: (gdb) break main Breakpoint 1 at 0x80001c4: main. (2 locations) (gdb) continue Continuing. Note: automatically using hardware breakpoints for read-only addresses. Breakpoint 1, main () at Nucleol053r8.pas:70 and in async mode also not bad: (gdb) break main Breakpoint 1 at 0x80001c4: main. (2 locations) (gdb) cont & Continuing. Note: automatically using hardware breakpoints for read-only addresses. (gdb) Breakpoint 1, main () at Nucleol053r8.pas:70 Here's the output of lazarus with debugging turned on: >> TCmdLineDebugger.SendCmdLn "-break-insert main" << TCmdLineDebugger.ReadLn "^done,bkpt={number="2",type="breakpoint",disp="keep",enabled="y",addr="",times="0",original-location="main"},{number="2.1",enabled="y",addr="0x080001c4",file="Nucleol053r8.pas",fullname="/Users/ring/devel/nucleo-l053r8/Nucleol053r8.pas",line="70",thread-groups=["i1"]},{number="2.2",enabled="y",addr="0x080001c5",at="",thread-groups=["i1"]}" << TCmdLineDebugger.ReadLn "(gdb) " >> TCmdLineDebugger.SendCmdLn "-exec-continue" << TCmdLineDebugger.ReadLn "~"Note: automatically using hardware breakpoints for read-only addresses.\n"" << TCmdLineDebugger.ReadLn "^running" << TCmdLineDebugger.ReadLn "*running,thread-id="all"" << TCmdLineDebugger.ReadLn "(gdb) " >> TCmdLineDebugger.SendCmdLn "-break-delete 2" << TCmdLineDebugger.ReadLn "@"WARNING! The target is already running. All changes GDB did to registers will be discarded! Waiting for target to halt.\n"" -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Raspberry Pi
You can find examples for this on the Wiki: http://wiki.freepascal.org/Lazarus_on_Raspberry_Pi there are two native libs at the end of the article. Michael Am 15.02.15 um 14:15 schrieb Graeme Geldenhuys: On 2015-02-13 13:33, Gustavo Enrique Jimenez wrote: Today I was able to compile all my applications within "Raspberry Pi". I've compiled and ran many desktop applications on my RPi as well - no problems. But now I want to move to the next step - interacting with other hardware. I haven't researched this myself, so maybe the answer is obvious, but do you know if one can access the GPIO from Object Pascal relatively easily? Regards, - Graeme - -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac retina pain
Done, http://bugs.freepascal.org/view.php?id=27411 Thank you, Michael Am 06.02.15 um 14:00 schrieb FreeMan: Yes Michael, you right. Problem in source editor side, "alt" key not work, I mean not just that symbols, all "alt" key combinations not work. In object inspector, I wrote [a,b,c]{} and copy to clipboard and paste in source editor. Did you create bug report? if not I'll create -- -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac retina pain
This trick also worked for me, great!!! This is what Retinizer did to Info.plist, I am rebuilding Lazarus now to see if more files are changed by retinizer... > NSHighResolutionCapable > Michael In Info. Am 06.02.15 um 00:13 schrieb Mattias Gaertner: On Thu, 5 Feb 2015 23:43:48 +0100 Michael Ring wrote: I envy you ;-) What version of OSX do you use? 10.10. It looked like this on 10.8 too. I just tried. The trick is to close the program, then remove the following two lines from projectname.app/Contents/Info.plist: NSHighResolutionCapable Then use Retinizer. We have to find out what Retinizer does. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac retina pain
I envy you ;-) What version of OSX do you use? Von meinem iPhone gesendet > Am 05.02.2015 um 23:25 schrieb Mattias Gaertner : > > On Thu, 05 Feb 2015 23:04:22 +0100 > Michael Ring wrote: > >> I have done a screencap of Lazarus running on my Retina Mac: >> >> http://temp.michael-ring.org/Retina.jpg > > That does not look retinized. > > It should look like my attached screenshot. > > Mattias > > -- > ___ > Lazarus mailing list > Lazarus@lists.lazarus.freepascal.org > http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Mac retina pain
I have done a screencap of Lazarus running on my Retina Mac: http://temp.michael-ring.org/Retina.jpg When you display it in Preview in original size and then hit CMD '-' three times then you see the resolution as I see it on my display. Antialiasing must be set to on, the fonts are not rendered in perfect resolution, but for me this is now good enough. You can also build Lazarus with QT-Widgetset, but then you loose []{} keys in Lazarus which is sometimes a little frustrating when you need an array ;-) I have uploaded the gdb from my machine here: http://temp.michael-ring.org/gdb (5.1MB) judging by the dependencys it has it should also wort on your MAC. BUT you first need to codesign it. http://stackoverflow.com/questions/13913818/how-to-get-a-codesigned-gdb-on-osx It is pretty straightforward to build gdb from source, the following libs/tools might be necessary (I have those installed with homebrew), but configure will tell you... libtool pkg-config automake gettext readline gnu-getopt texi2html Michael Am 05.02.15 um 21:53 schrieb Felipe Monteiro de Carvalho: Hello, I've got a retina MacBook since a few days, but already there is quite a lot of pain: 1> Lazarus renders really bad, pixelated, and Retinizer couldn't help it =( The main Lazarus window starts in a position too in the top of the screen and therefore under the menu bar. I couldn't find anything so far in google which would indicate a solution to the pixelation problem. I guess Apple went out of their way to screw Carbon apps in Yosemite? Because a LCL-Cocoa app looks great ... well, I guess LCL-Cocoa is a each time more pressing priority... but anyway, does anyone know how to fix the existing Carbon Lazarus in retina? I need to use the source editor =D 2> this second part will be just a rant, since I doubt anyone will have a solution. OMG I have this computer since 2 days and already there is so much pain getting gdb up and running =( homebrew won't work because of a stupid wrong version of a 200kb install_name_tool app, and their proposed solution is that I download more than 5GB and reinstall the entire operating system just to get this *&%$ bastard 200kb file fixed =( what is wrong with these people at Apple Couldn't they just not remove gdb??? Can't someone just send me the file? Anyway, I guess I will have to reinstall everything from zero due to this stupid file. (actually this will be really hard since I'm already over my internet limit and using my phone's internet ... if the notebook had a DVD drive and install DVD then I could reinstall from the DVD, but I didn't think they would remove the DVD drive from their main notebook) Or maybe just give up debugging in Mac OS X ... long live WriteLn!!! thanks, -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Debugger and Buildmodes / Project settings
There are a few more fields that change: The overall Debugger type The Debugger Path Debugger_Remote_Port Debugger_Remote_Hostname Debugger_Startup_Options SSH_Startup_Options This would then cover the most important settings for ssh and gdbserver. If this could work it would be a dream come true ;-) I can try to prepare a patch myself if you point me to the right files/concepts to understand/change. Michael Am 05.02.15 um 16:59 schrieb Mattias Gaertner: On Thu, 5 Feb 2015 17:22:50 +0200 Juha Manninen wrote: On Thu, Feb 5, 2015 at 3:55 PM, Martin Frb wrote: The long time idea is to have the global defaults, and then have per project settings (allowing to override all or selected settings) (but per buildmode would work too, or could be added as further level). Compiler options are all saved to build modes. There already are debugger specific compiler flags, adding a debugger exe path would be easy. Would selection of the executable be enough? Maybe for this a macro is enough. For example the debugger could use the IDE macro "GDBPath". If this is not set by the project use the default (Tools / Options). There could also be selection for an external debugger configuration if it gets separated, but that is a big change all together. Unit: ide/frames/compiler_debugging_options Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Debugger and Buildmodes / Project settings
Hi! I am wondering if there is a way to make the General Debugger Settings Project or Buildmode specific. My problem is that I often switch between microcontrollers that need a different version of gdb. (e.g. arm-none-eabi-gdb for arm, mipsel-sde-elf-gdb for mipsel) and that sometimes I can use JLink probe on their default port, sometimes I need to use openocd that runs on another port. Right now this means that I have to manually adjust the path to gdb/other debugger settings when I switch from (for example) a mipsel project to a arm based project. No big deal, but it would be much nicer to somehow override this setting when opening a new project. Is there a way to do this? Thank you, Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] I'm looking for experience about OSX
Am 08.12.14 um 11:22 schrieb FreeMan: Is this mean, your suggestion use QT is chnaged to carbon? :) And thanks one more your update script. If I'm not bother you, have you got for "new install fpc" tips ? Because of recent events my recommendation has changed to carbon ;-) Anyway, with the script it is easy to build the different versions and you can test for yourself. For new install fpc there is not much I can think of, install Xcode, XCode Commandline Tools and the official fpc package and you are good to go. I have attached a slightly modified version of the script, it is now easier to switch between the different builds for lazarus. Michael On 08-12-2014 00:41, Michael Ring wrote: I wrote to the list in April 2014, arround that time I lost the good looking fonts when building for carbon. I switched to qt (now loosing "[]{}" on keyboard) and every now and then I checked if cocoa is getting usable, but I gave up on carbon. I now rebuilt with carbon and hey, great surprise, the fonts look nice again! No need to run retinizer and "[]{}" on my german keyboard work again in lazarus Thank you very much for asking me to specify "stopped working". ;-) Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus updatebuild.sh Description: Bourne shell script -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] I'm looking for experience about OSX
I wrote to the list in April 2014, arround that time I lost the good looking fonts when building for carbon. I switched to qt (now loosing "[]{}" on keyboard) and every now and then I checked if cocoa is getting usable, but I gave up on carbon. I now rebuilt with carbon and hey, great surprise, the fonts look nice again! No need to run retinizer and "[]{}" on my german keyboard work again in lazarus Thank you very much for asking me to specify "stopped working". ;-) Michael Am 07.12.14 um 22:00 schrieb Mattias Gaertner: On Sun, 07 Dec 2014 19:04:28 +0100 Michael Ring wrote: Strange, what version of OSX / Lazarus do you use? Retina with carbon stopped working for me a year ago. I am using Yosemite and lazarus trunk. Hey, that's my system. Specify "stopped working". Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] I'm looking for experience about OSX
Strange, what version of OSX / Lazarus do you use? Retina with carbon stopped working for me a year ago. I am using Yosemite and lazarus trunk. Michael Am 07.12.14 um 10:49 schrieb Mattias Gaertner: On Sat, 06 Dec 2014 20:37:24 +0100 Michael Ring wrote: When your new Mac has a Retina Display then I'd recommend building the qt version, the fonts look much much better than in the Carbon Version (at least for me) "retinizer" worked for me. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] I'm looking for experience about OSX
I have attached my buildscript that I use all the time to update & build from trunk. Please make sure to edit the 2nd line where I do a cd to the directory where fpc and lazarus are stored. I have multiple directories for fpc based on the projects I work on, remove the ones you do not care for in line 7. check out o copy of fpc in each directory you care for. 1 #!/bin/sh *2 cd $HOME/devel* 3 sudo rm -rf $HOME/2.7.1 2>/dev/null 4 #FIXEDVERSION="-r 27463" 5 6 if [ -z "$1" ]; then 7 *COMPILE="fpc fpc-linux fpc-mipsel fpc-arm lazarus"* Michael Am 07.12.14 um 10:54 schrieb FreeMan: Thank you for sharing Michael, Yes its retina display I'm still using qt in linux so use this in osx good idea I think. If I'm not wrong, if I use qt widgetset in osx, and builded application need qt library, so if I copy this application to another osx, have to install qt binary library first, like a in windows. Michael, if its possible, can you share fp script too ? little bit different then lazarus, isn't it? Mattias wrote, After that it is the same as under Linux. This mean I can use my linux script in osx, maybe need small changing. I'll share my scripts but more questions :) I'll try use ramdrive, make command kill ssd live, and ram drive so much faster then ssd (think hdd :) 5400rpm) I know ramdrive how work, and can loose data need backup etc. just for test what is speed, This test in kubuntu 14.04 i7 2600k, 8gb ram, ssd raid0 make ram drive, 2gb is enough I attached my test bash script this is result: sent 901,034,905 bytes received 507,271 bytes 257,583,478.86 bytes/sec total size is 899,101,903 speedup is 1.00 Başlangıç zamanı : 2014-12-07 11:46:31 Bitiş zamanı : 2014-12-07 11:46:34 Süre : 00 Dakika _*03*_ saniye -> saniye mean second Don't forget fp folder is my active folder, I mean all (*.o, *.ppu) compiled files included in copy files. This is just for "can be?" test, not real test. On 06-12-2014 21:37, Michael Ring wrote: When your new Mac has a Retina Display then I'd recommend building the qt version, the fonts look much much better than in the Carbon Version (at least for me) qt has one drawback, the keys [ ] { } do not work on my german keyboard... In theory Cocoa should also give you nice fonts but I did not manage to build a version that works (I just retried with current svn, on start I get list index (-1) out of bounds error) To build for qt you will need to first install qt4 libraries, the installer from the qt page only comes with x64_64 libs, this is the reason why I will build lazarus with CPU_TARGET=x86_64 later. After installing the libs you need to compile the qt4 binding: http://users.telenet.be/Jan.Van.hijfte/qtforfpc/fpcqt4.html (V2.5) instructions to do so are in the README.TXT. Install the built binaries. I am using the following commands to then build lazarus (There might be better solutions, but this works fine for me) make clean all CPU_TARGET=x86_64 LCL_PLATFORM=qt OPT="-k'-framework' -k'ApplicationServices'" #make clean all CPU_TARGET=i386 LCL_PLATFORM=customdrawn OPT="-k'-framework' -k'ApplicationServices'" sudo rm -rf /usr/local/share/lazarus sudo make install CPU_TARGET=x86_64 LCL_PLATFORM=qt #sudo make install CPU_TARGET=i386 LCL_PLATFORM=cocoa sudo chown -R ring:staff /usr/local/share/lazarus # now recompile using lazbuild to have the lazbuild --build-ide= --ws=qt --cpu=x86_64 --compiler=ppcx64 #lazbuild --build-ide= --ws=cocoa --cpu=i386 Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus updatebuild.sh Description: Bourne shell script -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] I'm looking for experience about OSX
Forgot to mention: This list of commands builds the x86_64 and 'merges' the installation into the default i386 installation: (I do this in two steps so that the original installation does not get corrupted) make clean buildbase CPU_TARGET=x86_64 INSTALL_PREFIX=$HOME/2.7.1 make install buildbase CPU_TARGET=x86_64 INSTALL_PREFIX=$HOME/2.7.1 mkdir -p /usr/local/lib/fpc/ sudo cp -r $HOME/2.7.1/lib/fpc/2.7.1 /usr/local/lib/fpc/ sudo cp $HOME/2.7.1/bin/fpc /usr/local/lib/fpc/2.7.1/ # this is not strictly necessary rm -rf $HOME/2.7.1 And this builds a linux crosscompiler: SUBARCH=i386 CROSSOPT="-O- -gw2" make clean buildbase CROSSINSTALL=1 OS_TARGET=linux CPU_TARGET=i386 CROSSOPT="$CROSSOPT" BINUTILSPREFIX=i386-linux- sudo make installbase CROSSINSTALL=1 OS_TARGET=linux CPU_TARGET=i386 CROSSOPT="$CROSSOPT" BINUTILSPREFIX=i386-linux- when you replace 'buildbase' with 'all' you should be able to get a more complete build, for my needs buildbase is sufficient. Michael Am 06.12.14 um 20:37 schrieb Michael Ring: When your new Mac has a Retina Display then I'd recommend building the qt version, the fonts look much much better than in the Carbon Version (at least for me) qt has one drawback, the keys [ ] { } do not work on my german keyboard... In theory Cocoa should also give you nice fonts but I did not manage to build a version that works (I just retried with current svn, on start I get list index (-1) out of bounds error) To build for qt you will need to first install qt4 libraries, the installer from the qt page only comes with x64_64 libs, this is the reason why I will build lazarus with CPU_TARGET=x86_64 later. After installing the libs you need to compile the qt4 binding: http://users.telenet.be/Jan.Van.hijfte/qtforfpc/fpcqt4.html (V2.5) instructions to do so are in the README.TXT. Install the built binaries. I am using the following commands to then build lazarus (There might be better solutions, but this works fine for me) make clean all CPU_TARGET=x86_64 LCL_PLATFORM=qt OPT="-k'-framework' -k'ApplicationServices'" #make clean all CPU_TARGET=i386 LCL_PLATFORM=customdrawn OPT="-k'-framework' -k'ApplicationServices'" sudo rm -rf /usr/local/share/lazarus sudo make install CPU_TARGET=x86_64 LCL_PLATFORM=qt #sudo make install CPU_TARGET=i386 LCL_PLATFORM=cocoa sudo chown -R ring:staff /usr/local/share/lazarus # now recompile using lazbuild to have the lazbuild --build-ide= --ws=qt --cpu=x86_64 --compiler=ppcx64 #lazbuild --build-ide= --ws=cocoa --cpu=i386 Michael Am 06.12.14 um 19:20 schrieb Mattias Gaertner: On Sat, 06 Dec 2014 20:03:55 +0200 FreeMan wrote: Hello, I get new toy today, macbook pro. I'll use crosscompile fpc & lazarus on this system. Means? What is your widgetset suggestion for OSX? Carbon works since years. Cocoa works for 32bit, although still is in an early state. qt works since years. Keep in mind that Lazarus under OS X by default uses Apple like shortcuts, which is annoying at the start. Much important is, How to install _*SVN*_ _*fpc*_ and _*SVN*_ _*lazarus*_? First you need to install XCode and its gdb. After that it is the same as under Linux. has anyone got any script about this. I found just this links and no info about svn install, yet. http://wiki.freepascal.org/Installing_Lazarus_on_MacOS_X http://wiki.freepascal.org/GDB_on_OS_X_Mavericks_and_Xcode_5 Good pages. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] I'm looking for experience about OSX
When your new Mac has a Retina Display then I'd recommend building the qt version, the fonts look much much better than in the Carbon Version (at least for me) qt has one drawback, the keys [ ] { } do not work on my german keyboard... In theory Cocoa should also give you nice fonts but I did not manage to build a version that works (I just retried with current svn, on start I get list index (-1) out of bounds error) To build for qt you will need to first install qt4 libraries, the installer from the qt page only comes with x64_64 libs, this is the reason why I will build lazarus with CPU_TARGET=x86_64 later. After installing the libs you need to compile the qt4 binding: http://users.telenet.be/Jan.Van.hijfte/qtforfpc/fpcqt4.html (V2.5) instructions to do so are in the README.TXT. Install the built binaries. I am using the following commands to then build lazarus (There might be better solutions, but this works fine for me) make clean all CPU_TARGET=x86_64 LCL_PLATFORM=qt OPT="-k'-framework' -k'ApplicationServices'" #make clean all CPU_TARGET=i386 LCL_PLATFORM=customdrawn OPT="-k'-framework' -k'ApplicationServices'" sudo rm -rf /usr/local/share/lazarus sudo make install CPU_TARGET=x86_64 LCL_PLATFORM=qt #sudo make install CPU_TARGET=i386 LCL_PLATFORM=cocoa sudo chown -R ring:staff /usr/local/share/lazarus # now recompile using lazbuild to have the lazbuild --build-ide= --ws=qt --cpu=x86_64 --compiler=ppcx64 #lazbuild --build-ide= --ws=cocoa --cpu=i386 Michael Am 06.12.14 um 19:20 schrieb Mattias Gaertner: On Sat, 06 Dec 2014 20:03:55 +0200 FreeMan wrote: Hello, I get new toy today, macbook pro. I'll use crosscompile fpc & lazarus on this system. Means? What is your widgetset suggestion for OSX? Carbon works since years. Cocoa works for 32bit, although still is in an early state. qt works since years. Keep in mind that Lazarus under OS X by default uses Apple like shortcuts, which is annoying at the start. Much important is, How to install _*SVN*_ _*fpc*_ and _*SVN*_ _*lazarus*_? First you need to install XCode and its gdb. After that it is the same as under Linux. has anyone got any script about this. I found just this links and no info about svn install, yet. http://wiki.freepascal.org/Installing_Lazarus_on_MacOS_X http://wiki.freepascal.org/GDB_on_OS_X_Mavericks_and_Xcode_5 Good pages. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] CodeTools error when using 'section' keyword
Works fine now, thank you very much for the fix! Michael Am 20.11.14 um 15:01 schrieb Mattias Gaertner: On Thu, 23 Oct 2014 21:57:28 +0200 Michael Ring wrote: [...] This is my test program: program hello; const DEVCFG3_DEFAULT=1; const devcfg3: longWord = DEVCFG3_DEFAULT; section '.devcfg3'; devcfg2: longWord = DEVCFG3_DEFAULT; section '.devcfg2'; Fixed. Please test. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] CodeTools error when using 'section' keyword
Unfortunately the fix does not work for me. I still get the same error message I added some debugging: //if UpAtomIs('EXTERNAL') then // debugln(['TPascalParserTool.ReadVariableType ',CurNode.Parent.Parent.DescAsString,' ',CurNode.Parent.DescAsString,' ',CurNode.DescAsString]); //if UpAtomIs('SECTION') then debugln(['TPascalParserTool.ReadVariableType ',CurNode.Parent.Parent.DescAsString,' ',CurNode.Parent.DescAsString,' ',CurNode.DescAsString]); when the 'if' line is uncommented I do not get any output. when it's commented out I see : TPascalParserTool.ReadVariableType Interface Section Var Section Var popping up several times. This is my test program: program hello; const DEVCFG3_DEFAULT=1; const devcfg3: longWord = DEVCFG3_DEFAULT; section '.devcfg3'; devcfg2: longWord = DEVCFG3_DEFAULT; section '.devcfg2'; begin end. Am 23.10.14 um 09:51 schrieb Mattias Gaertner: Michael Ring hat am 22. Oktober 2014 um 09:38 geschrieben: I did a little digging, Sven is right, this is only for embedded targets; I found the following in systems.pas: { all embedded systems } systems_embedded = [system_i386_embedded,system_m68k_embedded, system_alpha_embedded,system_powerpc_embedded, system_sparc_embedded,system_vm_embedded, system_iA64_embedded,system_x86_64_embedded, system_mips_embedded,system_arm_embedded, system_powerpc64_embedded,system_avr_embedded, system_jvm_java32,system_mipseb_embedded,system_mipsel_embedded]; { all systems that allow section directive } systems_allow_section = systems_embedded; I found the first occurence of this in the sources of fpc 2.4.0 Thanks. I added it. Please test. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] How do I tell codetools to use implicitly loaded unit for code complesion?
Saw it, thank you very much! One more thing: I am using record helpers and Codetools does not seem to support them right now, do you have any plans on supporting them some day? I can workarround this limitation, but this makes the units for the controllers a little more uglier to read. Michael Am 23.10.14 um 09:08 schrieb Mattias Gaertner: Michael Ring hat am 22. Oktober 2014 um 22:05 geschrieben: [...] I have attached a patch that adds the missing definitions for mipsel. Thanks. Applied. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] How do I tell codetools to use implicitly loaded unit for code complesion?
OK, I found out what is going on. FindControllerUnit in components/codetools/definetemplates.pas already contains a copy of the arm version of cpuinfo.pas but it does not include the mips version of cpuinfo.pas. so FindControllerUnit does not find a match and returns an empty string -> the Value of -Wp get discarded. I have attached a patch that adds the missing definitions for mipsel. Please note that the definitions differ from the ones in trunk; I have asked sergej to merge my latest changes for mipsel but he did not yet find the time to do so. So trunk is outdated and it makes no sense to use the definitions currently available there. Michael Am 22.10.14 um 09:51 schrieb Michael Ring: Thank you for the hint on macros, I will see if I can come up with a patch. The lookup of the controllerunitstr looks like the 'right' solution, for my purposes it would be enough to simply add the value of -Wp, but this would only help for mipsel target, for arm there usually exists a mapping from the controller model to a more generalized unit. How do you import definitions like those, do you duplicate the code from fpc or do you use the units provided by fpc? If you duplicate the code it is perhaps better to also make the unit files match the controller names in fpc so that the list of controllers does not need to get implemented in both fpc and lazarus. Michael Am 21.10.14 um 23:28 schrieb Mattias Gaertner: Michael Ring hat am 21. Oktober 2014 um 22:27 geschrieben: [...] Example: -Wppic32mx795f512h should load unit pic32mx795f512h The IDE already does that. Search for MacroControllerUnit. to make life a (very little) harder the fully correct rule for selecting the right unit is: search for uppercase(-WpVALUE) in array embeddedcontrollers (defined in [arm,mipsel,avr]/cpuinfo.pas) and load the unit with name defined in the field controllerunitstr Is something like this doable? Theoretically yes. Is that needed? I already hardcoded the unit for my testing purposes (Works fine), but failed to find a way to get the value of the -Wp switch in GetHiddenUsedUnits. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus Index: components/codetools/definetemplates.pas === --- components/codetools/definetemplates.pas(revision 46642) +++ components/codetools/definetemplates.pas(working copy) @@ -6618,7 +6618,7 @@ controllerunitstr: string[20]; end; const -ControllerTypes: array[0..211] of TControllerType = +ControllerTypes: array[0..302] of TControllerType = ((controllertypestr:''; controllerunitstr:''), (controllertypestr:'LPC810M021FN8'; controllerunitstr:'LPC8xx'), (controllertypestr:'LPC811M001FDH16'; controllerunitstr:'LPC8xx'), @@ -6830,7 +6830,99 @@ (controllertypestr:'XMC4500X768'; controllerunitstr:'XMC4500'), (controllertypestr:'XMC4502X768'; controllerunitstr:'XMC4502'), (controllertypestr:'XMC4504X512'; controllerunitstr:'XMC4504'), - (controllertypestr:'THUMB2_BARE'; controllerunitstr:'THUMB2_BARE')); + (controllertypestr:'THUMB2_BARE'; controllerunitstr:'THUMB2_BARE'), + (controllertypestr:'PIC32MX110F016B'; controllerunitstr:'PIC32MX110F016B'), + (controllertypestr:'PIC32MX110F016C'; controllerunitstr:'PIC32MX110F016C'), + (controllertypestr:'PIC32MX110F016D'; controllerunitstr:'PIC32MX110F016D'), + (controllertypestr:'PIC32MX120F032B'; controllerunitstr:'PIC32MX120F032B'), + (controllertypestr:'PIC32MX120F032C'; controllerunitstr:'PIC32MX120F032C'), + (controllertypestr:'PIC32MX120F032D'; controllerunitstr:'PIC32MX120F032D'), + (controllertypestr:'PIC32MX130F064B'; controllerunitstr:'PIC32MX130F064B'), + (controllertypestr:'PIC32MX130F064C'; controllerunitstr:'PIC32MX130F064C'), + (controllertypestr:'PIC32MX130F064D'; controllerunitstr:'PIC32MX130F064D'), + (controllertypestr:'PIC32MX150F128B'; controllerunitstr:'PIC32MX150F128B'), + (controllertypestr:'PIC32MX150F128C'; controllerunitstr:'PIC32MX150F128C'), + (controllertypestr:'PIC32MX150F128D'; controllerunitstr:'P
Re: [Lazarus] How do I tell codetools to use implicitly loaded unit for code complesion?
Thank you for the hint on macros, I will see if I can come up with a patch. The lookup of the controllerunitstr looks like the 'right' solution, for my purposes it would be enough to simply add the value of -Wp, but this would only help for mipsel target, for arm there usually exists a mapping from the controller model to a more generalized unit. How do you import definitions like those, do you duplicate the code from fpc or do you use the units provided by fpc? If you duplicate the code it is perhaps better to also make the unit files match the controller names in fpc so that the list of controllers does not need to get implemented in both fpc and lazarus. Michael Am 21.10.14 um 23:28 schrieb Mattias Gaertner: Michael Ring hat am 21. Oktober 2014 um 22:27 geschrieben: [...] Example: -Wppic32mx795f512h should load unit pic32mx795f512h The IDE already does that. Search for MacroControllerUnit. to make life a (very little) harder the fully correct rule for selecting the right unit is: search for uppercase(-WpVALUE) in array embeddedcontrollers (defined in [arm,mipsel,avr]/cpuinfo.pas) and load the unit with name defined in the field controllerunitstr Is something like this doable? Theoretically yes. Is that needed? I already hardcoded the unit for my testing purposes (Works fine), but failed to find a way to get the value of the -Wp switch in GetHiddenUsedUnits. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] CodeTools error when using 'section' keyword
I did a little digging, Sven is right, this is only for embedded targets; I found the following in systems.pas: { all embedded systems } systems_embedded = [system_i386_embedded,system_m68k_embedded, system_alpha_embedded,system_powerpc_embedded, system_sparc_embedded,system_vm_embedded, system_iA64_embedded,system_x86_64_embedded, system_mips_embedded,system_arm_embedded, system_powerpc64_embedded,system_avr_embedded, system_jvm_java32,system_mipseb_embedded,system_mipsel_embedded]; { all systems that allow section directive } systems_allow_section = systems_embedded; I found the first occurence of this in the sources of fpc 2.4.0 Michael Am 22.10.14 um 08:09 schrieb Sven Barth: Am 21.10.2014 23:32 schrieb "Mattias Gaertner" mailto:nc-gaert...@netcologne.de>>: > > > > > Michael Ring <mailto:m...@michael-ring.org>> hat am 21. Oktober 2014 um 22:36 > > geschrieben: > > > > > > program hello; > > const > > devcfg3: longWord = DEVCFG3_DEFAULT; section '.devcfg3'; > > begin > > end. > > > > is a program that compiles fine but gives me an error in lazarus when I > > try to use completion with ctrl-SPACE. > > > > > > hello.pas(3,48) Error: = erwartet aber '.devcfg3' gefunden > > fpc 2.6.4 gives the same error. > When is "section" allowed? It only works on certain targets (currently only Embedded AFAIK). I don't know its rules of declarations currently though... Regards, Sven -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] CodeTools error when using 'section' keyword
program hello; const devcfg3: longWord = DEVCFG3_DEFAULT; section '.devcfg3'; begin end. is a program that compiles fine but gives me an error in lazarus when I try to use completion with ctrl-SPACE. hello.pas(3,48) Error: = erwartet aber '.devcfg3' gefunden Can I disable codetools for this const definition or is it possible to get a fix for this issue in trunk of lazarus? Thank you, Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] How do I tell codetools to use implicitly loaded unit for code complesion?
Hi Mattias, unfortunately I did not see your answer back in July. I did some digging myself and found GetHiddenUsedUnits. The rule to make loading happen is that target os is "embedded" fpc version >= 2.7.1 and the value of the option -Wp determines which unit to load. Example: -Wppic32mx795f512h should load unit pic32mx795f512h to make life a (very little) harder the fully correct rule for selecting the right unit is: search for uppercase(-WpVALUE) in array embeddedcontrollers (defined in [arm,mipsel,avr]/cpuinfo.pas) and load the unit with name defined in the field controllerunitstr Is something like this doable? I already hardcoded the unit for my testing purposes (Works fine), but failed to find a way to get the value of the -Wp switch in GetHiddenUsedUnits. Michael Am 14.07.14 um 23:34 schrieb Mattias Gaertner: On Sat, 05 Jul 2014 17:03:55 +0200 Michael Ring wrote: [...] Is there a way that I can give a hint to codetools to also use this unit for code competion? program hello; uses pic32mx795f512h; Codetools have built in rules to determine the auto used units (see TLinkScanner.GetHiddenUsedUnits). The pic32mx795f512h needs to be added. When is it used? What fpc version, target OS, target CPU, options enables this unit? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Compiler Options
arm-embedded does not have classes.ppu, same with mipsel-embedded (but this target is not yet fully visible in trunk) arm and mipsel do have definitions in fpc/rtl/embedded/rtl.cfg : #ifdef CPUARM -SfSOFTFPU -SfCLASSES #ifdef CPUMIPSEL -SfSOFTFPU -SfCLASSES but even with those settings active classes does not get built: ppcrossarm -MObjFPC -Scghi -al -Ch1024 -Cs1024 -Tembedded -Parm $DEBUG -vewnhix -l -Cparmv7m -O- -WpSTM32F100XC -XParm-none-eabi- -FD/usr/local/bin -a test.pas Hint: Start of reading config file /etc/fpc.cfg Hint: End of reading config file /etc/fpc.cfg Free Pascal Compiler version 2.7.1 [2014/07/12] for arm Copyright (c) 1993-2014 by Florian Klaempfl and others Target OS: Embedded Compiling test.pas test.pas(3,3) Fatal: Can't find unit classes used by test Fatal: Compilation aborted - program test; uses classes; begin end. A find . -name "classes*" only shows me classes.ppu for the 'big' platforms i build from trunk, x86_64-darwin and i386-darwin, nothing for arm-embedded and mipsel-embedded Michael Am 16.07.14 15:28, schrieb Mattias Gaertner: On Wed, 16 Jul 2014 15:14:01 +0200 Sven Barth wrote: [...] Is there really no classes.ppu for your arm target? That's rather likely as Classes is simply too fat... On targets with classes the fat makes it a good indicator if fpc was installed right. For targets without Classes the test needs to be adapted. What targets do not have a classes.ppu? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] How do I tell codetools to use implicitly loaded unit for code complesion?
On embedded targets a unit with the definition of the target (Registers, Interrupts, etc..) is implicitly loaded when fpc compiles the code. Because of this Codetools does not seem to know about the definitions inside of this specific unit and code completion does not work. When I implicitly add the unit to the uses line of my program then code completion works just fine but I cannot compile the code because I get a 'Duplicate identifier' error because the unit is first implicitly loaded and then loaded again because it is part of uses Is there a way that I can give a hint to codetools to also use this unit for code competion? Thank you, Michael Example: program hello; uses pic32mx795f512h; gives me code completion for all definitions made in pic32mx795f512h, but when I compile the program I get the following error: Compile Project: Exit code 1, Errors:2, Hints:1 hello.pas(3,18) Error: Duplicate identifier "PIC32MX795F512H" hello.pas(3,18) Error: Duplicate identifier "PIC32MX795F512H" hello.pas(3,18) Hint: Identifier already defined in unit HELLO at line 2 -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Retina Font Rendering not working anymore in Lazarus Trunk
Long time since last post but I finally managed to get retina support to work again. I am not sure if Apple has dropped support for retina rendering in carbon apps or if something inside of lazarus changed, right now there are two paths to get super crisp fonts back: Install qt4 and qt4pas, then recompile lazarus from svn trunk: make clean all CPU_TARGET=x86_64 LCL_PLATFORM=qt sudo rm -rf /usr/local/share/lazarus sudo make install CPU_TARGET=x86_64 LCL_PLATFORM=qt and perhaps: lazbuild --build-ide= --ws=qt --cpu=x86_64 --compiler=ppcx64 other way is to recompile lazarus with LCL_PLATFORM=cocoa, but unfortunately cocoa is not really usable at the moment, lots of crashes, but better than the last time I checked. it is necessary to compile in x86_64 because the packages provided by qt only seem to include the x86_64 version of qt. compiling for x86_64 works nearly perfect now, I needed to comment out one function that does not seem to exist on x86_64: Index: lcl/include/sysenvapis_mac.inc === --- lcl/include/sysenvapis_mac.inc(revision 45676) +++ lcl/include/sysenvapis_mac.inc(working copy) @@ -11,7 +11,7 @@ url := CFURLCreateWithBytes(nil, @AURL[1], Length(AURL), kCFStringEncodingUTF8, nil); if not Assigned(url) then Exit(False); - Result := LSOpenCFURLRef(url, nil) = 0; +// Result := LSOpenCFURLRef(url, nil) = 0; CFRelease(url); end; I am testing now for stability issues, so far no major problems (but I am only using a small part of lazarus) Am 18.04.14 16:30, schrieb Michael Ring: Yes, it worked like a charm, super crisp fonts, now the fonts look pretty ugly, they are still anti-aliased but resolution is not as high as before. Will create a bug for this, thank you for your answer. Michael Am 17.04.14 17:23, schrieb Joost van der Sluis: On 09/04/14 10:00, Michael Ring wrote: I realized a few weeks ago that fonts inside of lazarus started to look ugly again on my Macbook Pro Retina, it seems that even though the App has the retina flag set the fonts are rendered in 1920x1080 (My screen resolution) and do not look smooth anymore. But it did work in the past? Maybe you can confirm that by re-installing an older version again. And if no-one here answers, the best thing to do is to open a bug-report. So that this will not be forgotten. Joost. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gdb and openocd via lazarus
TUI is a rather seldomly used option, I also saw that some linux distros do not support it. If you want it you will perhaps really need to build a version of gdb for yourself. Your openocd file looks fine on first glance, I would propably not do the flash command manually and instead use gdb's command to do the flashing, but in the end the result should be pretty much the same. Using gdb for flashing is perhaps a little better because you do not need to change your openocd config file when you binary file changes. If I find the time tonight I will see if this works, but I will not promise anything ;-) So what is your status right now, can you already single step through your code and does entering break main cont work ? Michael Am 16.06.14 16:03, schrieb Justin Smyth: Thanks Michael I got better results from using the GDB from the tool chain binaries from linaro. Is it normal for TUI not to be supported in the arm eabi version ? I can now start openocd8 , and start gdb and I see both of them talk to each other ( I want to see gdb connect correctly then I will move onto getting lazarus to connect once I have it working in two dos prompts on my windows vm ) My open ocd configuration file looks like this ( does this look right ? anything missing or do I need to change anything ? ) source [find interface/stlink-v2.cfg] set CHIPSERIES lpc1300 set TRANSPORT hla_swd set CPUROMSIZE 0x8000 set CPURAMSIZE 0x2000 source [find target/lpc1343.cfg] init reset init flash write_image erase unlock myprogram.elf 0 elf reset run reset init Kind Regards Justin -Original Message- From: Michael Ring [mailto:m...@michael-ring.org] Sent: Monday, 16 June 2014 6:33 PM To: Lazarus mailing list Subject: Re: [Lazarus] Gdb and openocd via lazarus There's an excellent Page on using gdb with freepascal on the wiki: http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips, when you scroll down there's a list of recommended gdb versions. Rebuilding gdb from source is peace of cake on linux and mac, I never really tried it on a windows machine , but this link should help: http://dev.zhourenjian.com/blog/2009/03/11/compiling-gdb-debugger-in-windows .html or have a look at the linaro toolchain, they also have a lot of different precompiled versions for windows, their builds: https://releases.linaro.org/14.05/components/toolchain/binaries When you start at https://releases.linaro.org/ you can see all the different versions available. Michael Am 14.06.14 17:42, schrieb Justin Smyth: Michael A few questions for you , I am back now able to proceeded with my arm project using lazarus ( laptop has been dead 3 weeks needed a replacement motherboard off ebay from the USA). The arm GDB I am using I got from code sorcery ( arm-none-eabi ) C:\LazarusExtras\gdb\bin>arm-none-eabi-gdb.exe GNU gdb (Sourcery G++ Lite 2010.09-51) 7.2.50.20100908-cvs Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=i686-mingw32 --target=arm-none-eabi". For bug reporting instructions, please see: <https://support.codesourcery.com/GNUToolchain/>. Is this the best version to use ? Could I compile the latest version of gdb from there svn ? would that work out of the box - I've been able to compile fpc ok for arm from svn. I just want to make sure the copy of gdb for arm I using can stop on breakpoints etc. Justin Smyth -Original Message- From: Koenraad Lelong [mailto:lazar...@de-brouwerij.be] Sent: Friday, 30 May 2014 6:06 AM To: lazarus@lists.lazarus.freepascal.org Subject: Re: [Lazarus] Gdb and openocd via lazarus op 28-05-14 13:57, Michael Ring schreef: Here's how I call gdb: arm-none-eabi-gdb hello.elf --tui --eval-command="target extended :" --eval-command="monitor reset halt" --eval-command="set mem inaccessible-by-default off" --eval-command="load" This loads the binary, you should end up with the debugger showing you your source code. Now try stepping through the code, if all is fine then great, problem is in the integration of gdb. Stept I use: break main cont step This all works. Tomorrow I will try to send those commands with mseide. Many thanks. Koenraad -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus
Re: [Lazarus] Gdb and openocd via lazarus
There's an excellent Page on using gdb with freepascal on the wiki: http://wiki.lazarus.freepascal.org/GDB_Debugger_Tips, when you scroll down there's a list of recommended gdb versions. Rebuilding gdb from source is peace of cake on linux and mac, I never really tried it on a windows machine , but this link should help: http://dev.zhourenjian.com/blog/2009/03/11/compiling-gdb-debugger-in-windows.html or have a look at the linaro toolchain, they also have a lot of different precompiled versions for windows, their builds: https://releases.linaro.org/14.05/components/toolchain/binaries When you start at https://releases.linaro.org/ you can see all the different versions available. Michael Am 14.06.14 17:42, schrieb Justin Smyth: Michael A few questions for you , I am back now able to proceeded with my arm project using lazarus ( laptop has been dead 3 weeks needed a replacement motherboard off ebay from the USA). The arm GDB I am using I got from code sorcery ( arm-none-eabi ) C:\LazarusExtras\gdb\bin>arm-none-eabi-gdb.exe GNU gdb (Sourcery G++ Lite 2010.09-51) 7.2.50.20100908-cvs Copyright (C) 2010 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "--host=i686-mingw32 --target=arm-none-eabi". For bug reporting instructions, please see: <https://support.codesourcery.com/GNUToolchain/>. Is this the best version to use ? Could I compile the latest version of gdb from there svn ? would that work out of the box - I've been able to compile fpc ok for arm from svn. I just want to make sure the copy of gdb for arm I using can stop on breakpoints etc. Justin Smyth -Original Message- From: Koenraad Lelong [mailto:lazar...@de-brouwerij.be] Sent: Friday, 30 May 2014 6:06 AM To: lazarus@lists.lazarus.freepascal.org Subject: Re: [Lazarus] Gdb and openocd via lazarus op 28-05-14 13:57, Michael Ring schreef: Here's how I call gdb: arm-none-eabi-gdb hello.elf --tui --eval-command="target extended :" --eval-command="monitor reset halt" --eval-command="set mem inaccessible-by-default off" --eval-command="load" This loads the binary, you should end up with the debugger showing you your source code. Now try stepping through the code, if all is fine then great, problem is in the integration of gdb. Stept I use: break main cont step This all works. Tomorrow I will try to send those commands with mseide. Many thanks. Koenraad -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Gdb and openocd via lazarus
If I were you I would try to start as low-level as possible. To do so, please check if your gdb is configured with textui enabled ( try starting it with arm-none-eabi-gdb --tui ) if only commandline shows up then download gdb and recompile it: cd gdb ./configure--target=arm-none-eabi--prefix=/usr/local --program-prefix=arm-none-eabi---disable-werror --enable-tui This Text UI is very nice for finding out if the problem is related to gdb or to the integration of gdb into the ide. Here's how I call gdb: arm-none-eabi-gdb hello.elf --tui --eval-command="target extended :" --eval-command="monitor reset halt" --eval-command="set mem inaccessible-by-default off" --eval-command="load" This loads the binary, you should end up with the debugger showing you your source code. Now try stepping through the code, if all is fine then great, problem is in the integration of gdb. Stept I use: break main cont step When stepping does not work you can go deeper: add --eval-command="layout asm" --eval-command="layout regs" to the commandline and start over, now you can single step through the assembler code with stepi This should help you to track down your problems (I hope) Michael Am 28.05.14 12:36, schrieb Koenraad Lelong: op 21-05-14 20:17, Martin Schreiber schreef: In MSEide the procedure is as follows - I assume same as in Lazarus: In 'Start gdb server command run target' write the command or script which starts the OpenOCD gdb proxy server (I don't know the command). Set 'Wait before connect' to the GDB server startup time + some reserve. 'Target connection' = remote localhost: Activate 'gdb download' then MSEide will use the gdb "load" command for program download. I suggest to make first a minimal C-program with the gcc toolchain of your target. If that works the FPC adventure can start. ;-) Martin Hi, I tried to debug my arm-board with MSEide. I manually started openocd (I need to be root). I configured MSEide debugger : Target connection : extended-remote localhost:. I configured debug-target to the elf-file of my project. Is there a macro to add an extention to the "make-output-file" ? I compiled the project and manually flashed it, and I left it in reset halt. I then can attach to the target, I see gdb connecting to openocd. I get the proper source in the source window. I can start the project, but since there seems still a problem with the compile-fase (the resulting binary does not work properly) I tried to reset the board. There gdb drops the connection to the target. When I set a breakpoint, the target halts, but MSEide does not indicate in the source where it stops. I can step, but again MSEide does not follow in the source. I can "continue" the target and stop it. But when I stop it, no indication where in the source it stopped. So progress, but not there yet. Or maybe I'm doing things wrong ? I still need to find why the binary is not good. When I compile the project via cli, it's working. From within MSEide, it does not work, although the command-line is the same as my manual command-line. I will add -va again and compare the outputs. Koenraad. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Fatal: Compilation aborted
Same on MacOS X Am 24.05.14 19:04, schrieb FreeMan: I new installed kubuntu 14.04 x64 I get this error while makeing lazarus svn : fpc r27816 - Lazarus r45160 lazbuild.lpr(877,76) Error: Wrong number of parameters specified for call to "Execute" compileroptions.pp(4209,34) Error: Found declaration: Execute(const AnsiString;const AnsiString;const AnsiString):LongInt; lazbuild.lpr(889,72) Error: Wrong number of parameters specified for call to "Compile" compiler.pp(273,20) Error: Found declaration: Compile(TProject;const AnsiString;const AnsiString;const AnsiString;Boolean;Boolean;Boolean;const AnsiString):LongInt; lazbuild.lpr(902,76) Error: Wrong number of parameters specified for call to "Execute" compileroptions.pp(4209,34) Error: Found declaration: Execute(const AnsiString;const AnsiString;const AnsiString):LongInt; lazbuild.lpr(1702) Fatal: There were 6 errors compiling module, stopping Fatal: Compilation aborted thank you -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] How to tell debugger what executable to use ?
I only use trunk lazarus, I cannot tell you if this is also available in the release versions. MiR Am 21.05.14 13:48, schrieb Justin Smyth: Do I need lazarus 1.2.2 or will latest trunk work ? I am using this on a vm on my server which is connected to the microprocessor board. , so it will only be used for this ,, my own dev machine is on my laptop -Original Message- From: Michael Ring [mailto:m...@michael-ring.org] Sent: Wednesday, 21 May 2014 9:35 PM To: Lazarus mailing list Subject: Re: [Lazarus] How to tell debugger what executable to use ? Project->Compiler Options->other You can add those settings in Custom options control Target Os (embedded) and Target CPU family can be set in Project->Compiler Options->Config and Target The compiler can be set in Project->Compiler Options->Compiler Commands, in Compiler Command edit Project->field Use the Test button to see if all is complete. Unfortunaltely the debugger cannot be set on project level, you need to set it in Tools->Options->Debugger and set it back when you want to debug a windows project. Am 21.05.14 13:12, schrieb Justin Smyth: I'd like to know more , I am doing the same thing but from windows for a NXP LPC 1343 board. I have recently got FPC 2.6.4 svn -27804 running on Lazarus 1.3 win32 i386 Trunk ( SVN 45035 ) I don't see this version having much debugging for embedded arm plus for my chipset I am missing the -w switch I need to pass to ppcrossarm.exe ( I have to tell lazarus on win32) The chipset I am using is - LPC1343FBD48 I have to pass this to fpc / ppcrossarm -Parm -Tembedded -WpLPC1343FBD48 -Cparmv7m Do you have any clues on how to set up lazarus to pass in the -w command to the compiler ? Kind Regards Justin -Original Message- From: Koenraad Lelong [mailto:lazar...@de-brouwerij.be] Sent: Wednesday, 21 May 2014 8:22 PM To: Lazarus mailing Subject: [Lazarus] How to tell debugger what executable to use ? Hi, I'm trying to use lazarus as a debugging-frontend for arm-embedded. I managed to configure lazarus to compile my source into arm-embedded-code for the STM32F103-processor. My next step is to configure lazarus to debug the code. When I do nothing, the debugger complains that project1 does not exist (used path is OK), which is true because that file really does not exist and should not exist. It's an *elf-file* (extension : .elf) that should be used. If I use gdb-cli I also have to use the elf-file. So how do I tell lazarus to use that elf-file ? I configured lazarus to use arm-none-eabi-gdb as debugger, connect to localhost, port . Which is the port openocd uses to let the debugger have control. I'm using lazarus 1.2.2, and fpc svn 27738 as arm-embedded-compiler. On a linux-machine. P.S. is there a way to send "monitor" commands to the debugger ? That way I could program my chip. Thanks, Koenraad.. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] How to tell debugger what executable to use ?
Project->Compiler Options->other You can add those settings in Custom options control Target Os (embedded) and Target CPU family can be set in Project->Compiler Options->Config and Target The compiler can be set in Project->Compiler Options->Compiler Commands, in Compiler Command edit field Use the Test button to see if all is complete. Unfortunaltely the debugger cannot be set on project level, you need to set it in Tools->Options->Debugger and set it back when you want to debug a windows project. Am 21.05.14 13:12, schrieb Justin Smyth: I'd like to know more , I am doing the same thing but from windows for a NXP LPC 1343 board. I have recently got FPC 2.6.4 svn -27804 running on Lazarus 1.3 win32 i386 Trunk ( SVN 45035 ) I don't see this version having much debugging for embedded arm plus for my chipset I am missing the -w switch I need to pass to ppcrossarm.exe ( I have to tell lazarus on win32) The chipset I am using is - LPC1343FBD48 I have to pass this to fpc / ppcrossarm -Parm -Tembedded -WpLPC1343FBD48 -Cparmv7m Do you have any clues on how to set up lazarus to pass in the -w command to the compiler ? Kind Regards Justin -Original Message- From: Koenraad Lelong [mailto:lazar...@de-brouwerij.be] Sent: Wednesday, 21 May 2014 8:22 PM To: Lazarus mailing Subject: [Lazarus] How to tell debugger what executable to use ? Hi, I'm trying to use lazarus as a debugging-frontend for arm-embedded. I managed to configure lazarus to compile my source into arm-embedded-code for the STM32F103-processor. My next step is to configure lazarus to debug the code. When I do nothing, the debugger complains that project1 does not exist (used path is OK), which is true because that file really does not exist and should not exist. It's an *elf-file* (extension : .elf) that should be used. If I use gdb-cli I also have to use the elf-file. So how do I tell lazarus to use that elf-file ? I configured lazarus to use arm-none-eabi-gdb as debugger, connect to localhost, port . Which is the port openocd uses to let the debugger have control. I'm using lazarus 1.2.2, and fpc svn 27738 as arm-embedded-compiler. On a linux-machine. P.S. is there a way to send "monitor" commands to the debugger ? That way I could program my chip. Thanks, Koenraad.. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Retina Font Rendering not working anymore in Lazarus Trunk
Yes, it worked like a charm, super crisp fonts, now the fonts look pretty ugly, they are still anti-aliased but resolution is not as high as before. Will create a bug for this, thank you for your answer. Michael Am 17.04.14 17:23, schrieb Joost van der Sluis: On 09/04/14 10:00, Michael Ring wrote: I realized a few weeks ago that fonts inside of lazarus started to look ugly again on my Macbook Pro Retina, it seems that even though the App has the retina flag set the fonts are rendered in 1920x1080 (My screen resolution) and do not look smooth anymore. But it did work in the past? Maybe you can confirm that by re-installing an older version again. And if no-one here answers, the best thing to do is to open a bug-report. So that this will not be forgotten. Joost. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Retina Font Rendering not working anymore in Lazarus Trunk
I realized a few weeks ago that fonts inside of lazarus started to look ugly again on my Macbook Pro Retina, it seems that even though the App has the retina flag set the fonts are rendered in 1920x1080 (My screen resolution) and do not look smooth anymore. Any ideas? Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Problem with Record Helpers and Identifier completion
Hi! in the past I have not used Lazarus that much, currently I am developing some code for embedded platforms based on fpc and I would like to make this code as usable as possible in Lazarus. I am currently extending the record definitions for embedded controllers with Record Helpers. (The reason is that this approach uses less precious flash storage than objects or classes and it looks cleaner to me than to redefine the records again). Problem with this approach seems to be that identifier completion does not have a clue about the extra procedures defined in the Record Helper. Here's an example: In stm32f10x_cl I have this code type TGPIO_Registers = record CRL : longword; CRH : longword; end; Then I have a helper Unit defining some extra procedures: unit gpioHelper; uses stm32f10x_cl; // necessary to make indentifier completion work at all type TGPIO_RegistersHelper = record helper for TGPIO_Registers procedure setConfig(bit : TGPIO_Bit; config : TGPIO_Config); procedure setConfig(bit : TGPIO_BitSet; config : TGPIO_Config); end; In main Code I now have: program test; uses gpioHelper; begin GPIOD. end. and hit Ctrl-Space after GPIOD. The record elements show up in completion, all the procedures defined in the helper class are not visible. Is it me doing something wrong? Or is there something that I can do with my code to create hints/whatever so that the helper classes are visible? Or am I doomed and should bite in the sour apple and redefine all records that I need? TnX, Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] FPC / Lazarus ARM Embedded Debuging
Totally disagree (when there is no need to meet a deadline) ;-) ;-) The implementation is still a little rough but growing knowledge by working low level has it's own appeal. And microcontrollers (at least when they are a hobby) should be fun, and I do not want to ruin this fun with huge numbers of defines and macros that do not debug well and are sometimes hard to read. When you have to meet a deadline and your daily business depends on it this is a whole different story, I'd say use CoCoox ide, Eclipse, whatever and come back when everything is ironed out. But for the fun of it Freepascal and it's phantastic community is the right place to be right now... Michael Am 14.03.13 15:15, schrieb Toan Pham: i think you'll be better off developing in C. Dont waste your time with lazarus/freepascal when it comes to embedded systems. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Did anybody else use retinizer for Macbook Retina on lazarus before?
What I saw was that it was necessary for me to do a clean install of lazarus (meaning rm -rf /usr/local/share/lazarus in my case). Without the clean install it did not work. Michael Am 03.03.13 12:10, schrieb Mattias Gaertner: On Sun, 3 Mar 2013 01:31:55 +0100 "Johannes W. Dietrich" wrote: Hi Mattias, sorry that I did not answer your Post before today, somehow I did not see it. But as I saw in svn you managed to find it out by yourself, thank you for adding retina support to trunk! It does not always work. Maybe some Mac expert has an idea how to do it properly. Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Did anybody else use retinizer for Macbook Retina on lazarus before?
Hi Mattias, sorry that I did not answer your Post before today, somehow I did not see it. But as I saw in svn you managed to find it out by yourself, thank you for adding retina support to trunk! Michael Am 27.02.13 10:59, schrieb Mattias Gaertner: On Sun, 17 Feb 2013 20:45:07 +0100 Michael Ring wrote: The fonts of lazarus look very ugly on my Macbook Retina, a few weeks ago I found the tool retinizer http://retinizer.mikelpr.com/ and used it on lazarus, the results were amazing, very nice&crisp fonts! Nice. How does it achieve that? I would now like to create the necessary ressources for lazarus so that it uses retina out of the box without the need of using retinizer, main problem for me is that I do not use the graphical designer at all, I am using lazarus for embedded systems only, so I cannot really tell if switching lazarus to retina mode breaks anything in the GUI. Anybody else any experience ? Mattias -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] Did anybody else use retinizer for Macbook Retina on lazarus before?
The fonts of lazarus look very ugly on my Macbook Retina, a few weeks ago I found the tool retinizer http://retinizer.mikelpr.com/ and used it on lazarus, the results were amazing, very nice&crisp fonts! I would now like to create the necessary ressources for lazarus so that it uses retina out of the box without the need of using retinizer, main problem for me is that I do not use the graphical designer at all, I am using lazarus for embedded systems only, so I cannot really tell if switching lazarus to retina mode breaks anything in the GUI. Anybody else any experience ? Michael -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Arm Embedded.( see FPC Bug report 23844)
Great, and also a big thaks for providing the unit for the NXP LPC 1343, I just saw it materializing in svn ;-) Please contact me when you ulink2 kit has arrived... Michael Am 14.02.13 22:30, schrieb Justin Smyth: Thanks All , I'm happy to test the openocd modification to lazarus , I'm running both x64 Lazarus and x86 lazarus on my copy of win8 Pro x64 & a copy of both on a win7 x64 pc. i should have my ulink2 kit soon , ordered recently , so once i have it i would be able to help test the changes needed for lazarus for openocd . Kind Regards Justin -Original Message- From: Michael Ring Sent: Friday, February 15, 2013 6:15 AM To: lazarus@lists.lazarus.freepascal.org Subject: Re: [Lazarus] Lazarus and Arm Embedded.( see FPC Bug report 23844) Koenraad, I have played with the crosscompiler under linux and I (hopefully) found a hack to workarround your problem, please see me answer to your original mail from a few minutes ago in fpc-pascal. I am now compiling a small howto on how to build & use lazarus with openocd support, this could, once it is done perhaps be added to the (very instructive) wiki article on http://wiki.freepascal.org/TARGET_Embedded Michael Am 14.02.13 16:46, schrieb Koenraad Lelong: On 14-02-13 14:51, Michael Ring wrote: Hi Justin, as Michael already wrote we are currently integrating openocd into lazarus, the integration is already working but needs some testing. I would love to see that somebody else besides me gives the implementation a try. If Unlink2 is supported by openocd you should be fine, same is true if unlink2 brings it's own gdbserver. What OS are you working on, MacOS, Windows or linux? Michael Hi Micheal, I would like to test this. Could you give a link to the wiki-page ? P.S. can you make executables with your compiler ? How did you make your compiler ? I always get an error about not being able to link (see my post of jan 30, 18:26 in the fpc-pascal list). FWIW, I made a virtual machine : x386 with fpc 2.7.1, arm-none-eabi- toolchain, available on susestudio.com. Is there a way to make big files available, without being forced to have an account on the service (like dropbox or susestudio) ? Thanks, Koenraad Lelong. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Arm Embedded.( see FPC Bug report 23844)
Koenraad, I have played with the crosscompiler under linux and I (hopefully) found a hack to workarround your problem, please see me answer to your original mail from a few minutes ago in fpc-pascal. I am now compiling a small howto on how to build & use lazarus with openocd support, this could, once it is done perhaps be added to the (very instructive) wiki article on http://wiki.freepascal.org/TARGET_Embedded Michael Am 14.02.13 16:46, schrieb Koenraad Lelong: On 14-02-13 14:51, Michael Ring wrote: Hi Justin, as Michael already wrote we are currently integrating openocd into lazarus, the integration is already working but needs some testing. I would love to see that somebody else besides me gives the implementation a try. If Unlink2 is supported by openocd you should be fine, same is true if unlink2 brings it's own gdbserver. What OS are you working on, MacOS, Windows or linux? Michael Hi Micheal, I would like to test this. Could you give a link to the wiki-page ? P.S. can you make executables with your compiler ? How did you make your compiler ? I always get an error about not being able to link (see my post of jan 30, 18:26 in the fpc-pascal list). FWIW, I made a virtual machine : x386 with fpc 2.7.1, arm-none-eabi- toolchain, available on susestudio.com. Is there a way to make big files available, without being forced to have an account on the service (like dropbox or susestudio) ? Thanks, Koenraad Lelong. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] Lazarus and Arm Embedded.( see FPC Bug report 23844)
Hi Justin, as Michael already wrote we are currently integrating openocd into lazarus, the integration is already working but needs some testing. I would love to see that somebody else besides me gives the implementation a try. If Unlink2 is supported by openocd you should be fine, same is true if unlink2 brings it's own gdbserver. What OS are you working on, MacOS, Windows or linux? Michael Am 14.02.13 14:36, schrieb Justin Smyth: I've been working on a patch for FPC to add support for the NXP LPC 1343 ( smaller cousin to the NXP LPC 1768 ) , i've successfully added in all the correct units , can get FPC to recompile with my changes but i am wondering how i would recompile lazarus so i could debug any application i create. ( ie write the smalll nongui app in lazarus , compile it , Update the board using flashmagic ( or the command prompt utility ) and debug via gdb using a UNLINK2 usb debugging kit. ).. Does Lazarus currently support this , i know i can write my own application save the file and compile using a command like this fpc-Parm -Tembedded -Wplpc1343 -Cparmv7m myprogram.pp Can we extend lazarus so we can create embedded arm applications ? ( if it allready does this i would love to know what type of project to select when selecting NEW.. & how to set the subarch setting for the ARM Family.) I only ask as i want to be able to write my own app in lazarus and debug it there too.. i am not sure how i would debug otherwise Kind Regards Justin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
Re: [Lazarus] svn revision 40207 breaks build at least on MacOS X
Yes, fixed again, thank you! Am 08.02.13 16:01, schrieb Alexander Klenin: On Sat, Feb 9, 2013 at 1:44 AM, Michael Ring wrote: I just did a svn update, build breaks, reverting to 40206 solves the problem Should be fixed by r40208 -- Alexander S. Klenin -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus
[Lazarus] svn revision 40207 breaks build at least on MacOS X
I just did a svn update, build breaks, reverting to 40206 solves the problem Compiling ttfile.pas ttfile.pas(328,4) Note: Local variable "rec" not used ttfile.pas(669,47) Hint: Local variable "C" does not seem to be initialized ttfile.pas(805,49) Fatal: Syntax error, ":" expected but "identifier COUNT" found Fatal: Compilation aborted make[1]: *** [lazutils.ppu] Error 1 make: *** [lazutils] Error 2 [ring@MacBookPro lazarus]$ svn update At revision 40207. [ ring@MacBookPro lazarus]$ svn update -r 40206 Ucomponents/lazutils/ttfile.pas Ucomponents/lazutils/ttcmap.pas Ucomponents/lazutils/ttgload.pas Ucomponents/lazutils/easylazfreetype.pas Ucomponents/lazutils/lazfreetype.pas Ucomponents/lazutils/ttload.pas Ucomponents/lazutils/ttobjs.pas Updated to revision 40206. -- ___ Lazarus mailing list Lazarus@lists.lazarus.freepascal.org http://lists.lazarus.freepascal.org/mailman/listinfo/lazarus