WebSocket & FPC lazarus / 38-Networking and Web Programming ---------------------------------------------------------------------- aradeonas · 2015-12-07 09:58 Hi, As I searched there is many libraries for WebSocket for Delphi and two for FPC 1-https://code.google.com/p/bauglir-websocket/ 2-Mormot has simple WebSocket. As it talked before it seems the best choice is bauglir but it's source is old and I cant compile it correctly with FPC 3 and I want to know is there any other choice or an updated version or anything else? ---------------------------------------------------------------------- marcov · 2015-12-07 10:02 So what goes wrong, did you install synapse etc etc ?  It is not your first post, you should know by know you need to provide some information for others to be able to gauge the problem. ---------------------------------------------------------------------- aradeonas · 2015-12-07 10:57 I thought it seems obvious to everyone checked bauglir once in new FPC but OK here you are : (Now I tested again and could run it but still not success completely) 1-Download last version that I found from here and a demo from here 2-Get last stable version of Synapse, 40 . 3-Open server demo and add Synapse to dependencies. 4-Add library path to demo paths. 5-Try to compile and errors will begin : -An error in BClasses in TBThread.Create about inherited so I changed it: From : Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i inherited;to Code: Pascal  [Select][+][-]window.onload = function(){var x1 = document.getElementById("main_content_section"); if (x1) { var x = document.getElementsByClassName("geshi");for (var i = 0; i   inherited Create(True);  -So now all TCriticalSection in all library units has error about that it has note create or it is not right way to call ... so I go two way, 1- one replace syncobjs with LCLType (that as I remember said it is a better way) and 2- two add syncobjs before all TCriticalSection and try and also it cant find WaitForSingleObject in main form unit of server so I add windows unit for now. Also it cant find any resource in lpr so I comment them like this : Quoteprogram ServerDemo; {$mode DELPHI}{$H+} uses   {$IFDEF UNIX}   cthreads,   {$ENDIF}   Interfaces, // this includes the LCL widgetset   Forms, MainFormU, LResources   { you can add units after this }; //{$IFDEF WINDOWS}{$R ServerDemo.rc}{$ENDIF} begin   //{$I ServerDemo.lrs}   Application.Initialize;   Application.CreateForm(TMainForm, MainForm);   Application.Run; end.                   And done all the same with client demo and now run. In first way after all changes client and server will run but sending any message will cause access violation so I should go with syncobjs way. In second way it will work (in my previous tests I went first way because I thought I should use LCLType because its a better way,I dont remember why.) Server and demo now works but I cant make it work with Browser. I tested https://www.websocket.org/echo.html . both demo and code and some other codes but it says : Quote ERROR: undefined  DISCONNECTEDWith or without ssl. So why should I do now? ---------------------------------------------------------------------- aradeonas · 2015-12-07 11:30 About my test I should say I can connect to echo.websocket.org with demo on port 80 but I cant connect with my browser to demo server. ---------------------------------------------------------------------- abouchez · 2015-12-07 13:54 Quote from: aradeonas on December 07, 2015, 10:58:32 amAs it talked before it seems the best choice is bauglir but it's source is old and I cant compile it correctly with FPC 3 and I want to know is there any other choice or an updated version or anything else? Out of curiosity, what was wrong with mORMot WebSockets support? It is pretty efficient, maintained and running in production between Delphi/FPC apps. The "pure WebSockets" part is pretty straightforward, and working with AJAX clients. The "Delphi/FPC" part has some unique features, like a proprietary binary format, supporting encryption and compression, REST emulation, and automatic frame gathering. ---------------------------------------------------------------------- aradeonas · 2015-12-07 14:53 I couldnt find ssl support and it always a pain to run it with Lazarus. I always got problems when I want to compile it. For example I want to compile demos to find out what can I do and just can compile Project31SimpleEchoServer, other WebSocket demos will not compile because Lazarus can find Synopse.inc ! Sure I add all need path for all of demos but they will not compile and to be honest because Mormot is to much big and some kind of complicated it is hard to find out what you want. Its not even has a Lazarus package or a Lazarus demo and yes I can make one but it take me 2 hours making Momot work and in this time I can make a simple WebSocket server and client from scratch. I want to say I appreciate your works and maybe you remember that time I trying to choose Mormot as my main internet library and put days on reading massive documentation and testing and finally gave up but still every time like now I check it and every time it surrender me and I will gave up. It is full and complicated and just for fun and take it as compliment when I say every time I look into it it reminds the days I was playing with Linux source and learn nothing and goes to bed angry ---------------------------------------------------------------------- TheEditor · 2015-12-12 16:49 Its not just FPC3; I get the same issues with Bauglir with 1.4.4/2.6.whatever. I second aradeonas' issues with mORMOT/Synopse. After a little while I just figure since AB is a genius and I'm a hack therefore I can't use it. Its too bad too because as I see it Lazarus/mORMOT is what should really allow a guy like me coming from D7 (don't laugh) to do cool & meaningful stuff on Linux. ---------------------------------------------------------------------- DonAlfredo · 2015-12-12 18:31 About mORMot: Feel free to ask any question !! I have many systems running with FPC (in fact: only FPC) on all sorts of systems. With 100% success. ---------------------------------------------------------------------- aradeonas · 2015-12-12 20:18 QuoteI have many systems running with FPC (in fact: only FPC) on all sorts of systems. With 100% success.Very interesting. QuoteFeel free to ask any question !!Sure. Here you are: How you learn mORMot? How you test mORMot and run in with FPC without problem? What kind of system do you made with it? What are the reasons you choose it beside that it is Pascal? What things do you miss in compare of other choices like PHP? Is there any open source example or work that can we take a look so find out what is what?Yes it has demos but they are so simple (and not run with FPC easily) or much complicated like main demo. Is it easy for you to make it work with JS? .... Fill free to dont answer them ---------------------------------------------------------------------- TheEditor · 2015-12-12 20:26 What he said. Quote from: aradeonas on December 12, 2015, 09:18:44 pmQuoteI have many systems running with FPC (in fact: only FPC) on all sorts of systems. With 100% success.Very interesting. QuoteFeel free to ask any question !!Sure. Here you are: How you learn mORMot? How you test mORMot and run in with FPC without problem? What kind of system do you made with it? What are the reasons you choose it beside that it is Pascal? What things do you miss in compare of other choices like PHP? Is there any open source example or work that can we take a look so find out what is what?Yes it has demos but they are so simple (and not run with FPC easily) or much complicated like main demo. Is it easy for you to make it work with JS? .... Fill free to dont answer them ---------------------------------------------------------------------- DonAlfredo · 2015-12-12 20:51 @aradeonas .... few answers to start with ... Well, I learned the hard way ... helped the author in porting the mORMot to FPC a year ago ! Took some effort I must say ... ;-) Samples 1 to 4 include FPC / Lazarus ! Just try them. They should work more or less out of the box. One piece of advice before starting: mORMot uses SQLite3 as its main engine. Inside Synopse.inc, you will find : {$define FPCSQLITE3STATIC} This means that mORMot will use a static SQLite3 library, that has to be present at compile time. Please have a look at the doc for some help about this: http://synopse.info/files/html/Synopse%20mORMot%20Framework%20SAD%201. 18.html#TITL_113 You can also use the mORMot without static libs. Just do {.$define FPCSQLITE3STATIC} (undefine by adding a dot in front), and add sqlite3.dll to your project directory. This setup is used by me the most !! Once you have learned to use the mORMot, perhaps you will get addicted (like me). It makes every aspects of data persistence and web (REST) deployment so easy and elegant and secure and readable. E.g., you start with a database project. Start simple from Sample 2. Expand sample 2 for your needs. Most people then use sample 26 to make a nice multi-tier. Change backend with one line. Change from standalone to client-server with one line. All is transparent. One final but very important remark : the forum ... very active !!!! ---------------------------------------------------------------------- aradeonas · 2015-12-12 21:05 QuoteWell, I learned the hard way ... helped the author in porting the mORMot to FPC a year ago ! Took some effort I must say ... ;-)So good one to ask  Don want to be rude but I wish you port samples too  QuoteThis setup is used by me the most !!I used it with static and no problem in that time but why you use without? A question probably for AB but ask anyway : As I read I couldnt understand why it use SQlite now? I remember 2-3 years ago that it be on SQlite and then changed the unit names but what is the philosophy behind? How do you make a server? without any Apache or similars? how good it controls many users or it good to use in small,medium organisation projects that I guessed it very good at? QuoteOne final but very important remark : the forum ... very active !!!!I asked there multiple time but never found a straight answer. Remember 1 year ago I was searching for making a simple API for a database for a beginning point (because we used PHP and now I want a sample like that to learn) but not found any. Back then and even now I dont know how make a simple API like this : A system for managing users. sign in and out and up. Query information like a log or something like this. Even after reading BIG documentation in a week and testing demos I couldnt make something simply like that. Thanks for answering ---------------------------------------------------------------------- DonAlfredo · 2015-12-12 21:21 Well, just ask me which Sample # ... I will then try to port ... send it to Ab ... and he will add it to the mORMot if ok !! Static linking is a bit of a no-go on Linux for servers. But I always use it for Windows clients. User management is build-in. And saw some recent changes (http://synopse.info/forum/viewtopic.php?id=3057). Again, its not that easy. The learning curve is definitely steep for a start. But once started ... it gives you back a lot of coding-joy ! So, again, tell me which sample for a start. I will try to help. ---------------------------------------------------------------------- aradeonas · 2015-12-12 21:30 Quoteow do you make a server? without any Apache or similars? how good it controls many users or it good to use in small,medium organisation projects that I guessed it very good at?? QuoteSo, again, tell me which sample for a start. I will try to help.Thank you. Can I ask a simple demo when ever you have time instead of one demos coming with mormot? A simple not manager like I asked here a year ago and test many of demos but couldn't make it work. A note manager that user can add,edir,delete notes so I could make a API and test it my browser to find out how it work. http://synopse.info/forum/viewtopic.php?pid=15501#p15501 I ask this because that time I manged to compile some demos and read doc but even after that I couldn't make something like this. ---------------------------------------------------------------------- DonAlfredo · 2015-12-13 07:15 Have a look at Sample 20 ! It will show you the basics of  DTO Code: [Select]TNoteManager = class(TInterfacedObject, INoteManager) public     function LogIn(const Username:RawUTF8; const Password:RawUTF8):Boolean;     function LogOut:Boolean;     function Add(const Text:RawUTF8;Out Note:TSQLNote):Boolean;     function Delete(const Note:TSQLNote):Boolean;     function Update(var Note:TSQLNote;Text:RawUTF8):Boolean; end; function TNoteManager.LogIn(const Username:RawUTF8; const Password:RawUTF8):Boolean; begin   //.... end; function TNoteManager.LogOut:Boolean; begin   //.... end; // add other methods here !! // Server setup (again Sample 20) var   aModel: TSQLModel;   aDB: TSQLRestServerDB;   aServer: TSQLHttpServer; begin   aModel := TSQLModel.Create([TSQLUser,TSQLNote],ROOT_NAME);   try     aDB := TSQLRestServerDB.Create(aModel,'mydb.db3'));     try       aDB.DB.Synchronous := smNormal;       aDB.DB.LockingMode := lmExclusive;       aDB.CreateMissingTables; // creates TSQLUser and TSQLNote       aDB.ServiceDefine(TNoteManager,[INoteManager],sicShared);       aServer := TSQLHttpServer.Create(PORT_NAME,[aDB]{$ifndef ONLYUSEHTTPSOCKET},'+',useHttpApiRegisteringURI{$endif});       try         aServer.AccessControlAllowOrigin := '*'; // allow cross-site AJAX queries         writeln('Background server is running'#10);         write('Press [Enter] to close the server.');         ConsoleWaitForEnterKey;       finally         aServer.Free;       end;     finally       aDB.Free;     end;   finally     aModel.Free;   end; end. Please note the docs on one very important aspect: RTTI !! http://synopse.info/files/html/Synopse%20mORMot%20Framework%20SAD%201. 18.html#TITLE_628 I am using the special FPC RTTI branch when using mORMot. Works 100%. Ps: Some of my mORMot-server run in Amazon Web Services, in a very small t2 instance. You should try this ! For me, AWS was a revelation ... so easy, so fast, so reliable, so cheap. Just get a free t2 tier, setup a Linux instance, install your mORMot note-server, open the port (8888) and off you go !! ---------------------------------------------------------------------- aradeonas · 2015-12-13 08:26 hank you very much.I am working on it and come back with more questions Please take a look at my other questions in the middle time ---------------------------------------------------------------------- DonAlfredo · 2015-12-13 08:37 Please state your (remaining) question(s) more clear. Do you need an example for your notes ? Notes are available as Sample 26 ! Please try to compile this sample and report back any problems ! ---------------------------------------------------------------------- aradeonas · 2015-12-13 13:14 QuoteI am using the special FPC RTTI branch when using mORMot. Works 100%.Can you help me to setup an environment for mORMot? I still have problems compiling demos. For cleaning I get the last nightly build of mORMot. Try to pen demo 20 in Lazarus 1.5 and FPC 3.1.1 so I convert server project to a simple Lazarus project and add paths to mORMot directory and sqlite3 directory (Shouldn't be there a package for Lazarus if it support it?) after that I comment out {$I SynDprUses.inc}  and then with having some more problem I could run it but it will never run the first line! just run and nothing. So How could I simply install or run or compile any demos without problem? About questions : How you learn mORMot? How you test mORMot and run in with FPC without problem? What kind of system do you made with it? What are the reasons you choose it beside that it is Pascal? What things do you miss in compare of other choices like PHP? Is there any open source example or work that can we take a look so find out what is what?Yes it has demos but they are so simple (and not run with FPC easily) or much complicated like main demo. Is it easy for you to make it work with JS? How mORMot servers works in compare of a PHP server in Apache? ---------------------------------------------------------------------- avra · 2015-12-13 14:53 Quote from: DonAlfredo on December 13, 2015, 08:15:24 amI am using the special FPC RTTI branch when using mORMot. Works 100%.I didn't know FPCUP supports FPC RTTI branch. Info about mORMot FPC status and it's proper RTTI use should be gathered into one place. I wish there was a wiki page for this. Only after seeing your quoted reply I realized that just monitoring FPC RTTI status in bug tracker is not enough, and that even ARM32 seams to be supported. Anyway, after trying FPCUP/FPCLAZUP in Win7 32bit VM, on starting executable I receive error message "The ordinal 4540 could not be located in the dynamic link library libeay32.dll". The issue was solved after downloading "http://slproweb.com/download/Win32OpenSSL_Light-1_0_2e.exe" which supports WinXP and up. I didn't have this error with old FPCUP. Edit: fpclazup without any parameters builds and lazarus runs. fpclazup with parameters to build fpc trunk and laz trunk fail on bootstraping (verbose log attached). fpclazup_rtti.bat builds all but starting laz shows error message (attached). All tests on Win7 32bit 2.5Gb VMware. ---------------------------------------------------------------------- DonAlfredo · 2015-12-14 07:51 @avra Lazarus trunk and FPC trunk (RTTI) can cause trouble when used. This is due to their nature. Often, I also encounter errors (also your error during the last couple of weeks ... see http://lists.lazarus.freepascal.org/pipermail/lazarus /2015-November/095311.html) when compiling trunk. You have to find a compatible (trunk-)combi for Lazarus and FPC. @aradeonas I am going to test Sample 20 with a default FPC / Lazarus install (without RTTI). Will report back, and upload a working Lazarus project in case of success. (I think the missing RTTI cause your problems) ---------------------------------------------------------------------- aradeonas · 2015-12-14 08:28 Very good and thank you for you helps. If I had a simple demo like a note manager so find out how manage users and some job like adding note then I can go for more complicated on my self. ---------------------------------------------------------------------- DonAlfredo · 2015-12-14 08:55 Good plan. Take many small steps to travel the long distance to a full knwoledge of mORMot. Please test the included Sample 20 for FPC. As I already suspected, the standard Sample 20 does not work on an FPC with missing RTTI. An extra unit is added to get things working with FPC: SQL3FPCInterfaces.pas. Please report. ---------------------------------------------------------------------- DonAlfredo · 2015-12-14 11:43 @avra Made some small changes to fpc(laz)up to get FPC RTTI working with Lazarus trunk ! @aradeonas Included Sample 30 for FPC without RTTI. It will show you the template use of mORMot to render HTML pages. Enjoy !! ---------------------------------------------------------------------- aradeonas · 2015-12-14 11:50 Thank you very much DonAlfredo. QuoteMade some small changes to fpc(laz)up to get FPC RTTI working with Lazarus trunk !I am going to tets them but how can I prepare a proper Lazarus for running Mormot?And with RTTI? ---------------------------------------------------------------------- DonAlfredo · 2015-12-14 11:55 With fpclazup (that has just been updated, so download the latest), you should be able to setup an isolated install of FPC, together with Lazarus. If you are on Windows: Code: [Select]fpclazup.exe --installdir="c:\fpcwithrtti" --fpcURL="RTTI" --lazURL="trunk" --verbose A standard (default: FPC 3.0.0, Lazarus 1.4.4) install is easy with: Code: [Select]fpclazup.exe --installdir="c:\fpcdefault" ---------------------------------------------------------------------- aradeonas · 2015-12-14 13:34 Excuse me but until now I didnt hear from fpclazup ,just fpcup and its repository didnt updated for days and searching  for fpclazup didint lead to anything. ---------------------------------------------------------------------- DonAlfredo · 2015-12-14 13:45 Sorry about that ... forgot to sync ! https://github.com/LongDirtyAnimAlf/Reiniero-fpcup https://github.com/LongDirtyAnimAlf/Reiniero- fpcup/blob/master/bin/i386-win32/fpclazup.exe ---------------------------------------------------------------------- TheEditor · 2015-12-15 03:11 I don't understand this. Can't we just use the fpc that comes with Lazarus? Quote from: DonAlfredo on December 14, 2015, 12:55:28 pmWith fpclazup (that has just been updated, so download the latest), you should be able to setup an isolated install of FPC, together with Lazarus. If you are on Windows: Code: [Select]fpclazup.exe --installdir="c:\fpcwithrtti" --fpcURL="RTTI" --lazURL="trunk" --verbose ---------------------------------------------------------------------- halim · 2015-12-15 05:48 Quote from: TheEditor on December 15, 2015, 04:11:07 amI don't understand this. Can't we just use the fpc that comes with Lazarus? Yes, you still can, but without RTTI support ---------------------------------------------------------------------- DonAlfredo · 2015-12-15 07:40 Quote from: halim on December 15, 2015, 06:48:30 amQuote from: TheEditor on December 15, 2015, 04:11:07 amI don't understand this. Can't we just use the fpc that comes with Lazarus? Yes, you still can, but without RTTI support To be 100% correct, the lack of interface RTTI can be circumvented by adding a special unit that contains info about the methods, so FPC can resolve the methods without RTTI. Have a look at the files in some of the previous messages (SQL3FPCInterfaces.pas). FPC with interface RTTI (from the special branch) will allow the mORMot to do all the magic for you, without the need of that special unit. So, in both cases, the mORMot will work. And, if you do not use interfaces, no extra effort is needed. ---------------------------------------------------------------------- avra · 2015-12-15 08:01 Quote from: DonAlfredo on December 14, 2015, 08:51:12 amLazarus trunk and FPC trunk (RTTI) can cause trouble when used. This is due to their nature.I was aware of such possibilities with trunks, but I didn't expect it with rtti version. I didn't know that rtti version can suffer the same problem. QuoteOften, I also encounter errors (also your error during the last couple of weeksOk, I understand that error now. But did you notice "The ordinal 4540 could not be located in the dynamic link library libeay32.dll" error? I get it when I started fpcup and fpclazup. Is it intended behavior? I have provided a fix url where updated lib can be downloaded, but maybe you should investigate that a little. I have solved that problem but someone else will probably give up. Win7 is not that old OS and it's widely used so I suspect that potentially many people will be affected. ---------------------------------------------------------------------- avra · 2015-12-15 08:06 Quote from: DonAlfredo on December 15, 2015, 08:40:42 amSo, in both cases, the mORMot will work. And, if you do not use interfaces, no extra effort is needed.If he needs json-rpc, he will need special rtti version of fpc. ---------------------------------------------------------------------- DonAlfredo · 2015-12-15 08:39 @avra RTTI is just some recent trunk version, with added RTTI (21-11-2015). The problem you detected with FPC/Lazarus trunk was caused by a (temporary) bug in the lcl document updater (build_lcl_docs.lpr). I just told fpcup to ignore this bug and continue. And in the meantime, this bug has vanished. And I did notice your bug report. Subsequently updated OpenSSL to 1.0.2e. But I cannot reproduce your issue unfortunately. There is nothing special about OpenSSL and fpcup. It just uses synopse without any change ! So, I do not understand fully. ---------------------------------------------------------------------- aradeonas · 2015-12-15 12:03 Aha! So you are the fpcup maintainer! Man I have many problems with it and I post here many times! Congratulate first for new fpclazup. Second I tried  a new version and just run what you said and it says : Quotefpmkunit.pp(1260,17) Warning: An inherited method is hidden by "constructor Create(TComponent);" fpmkunit.pp(1842,7) Warning: Symbol "CommandLine" is deprecated fpmkunit.pp(2563,5) Warning: Symbol "CommandLine" is deprecated fpmkunit.pp(5327,27) Warning: Local variable "i" does not seem to be initialized fpmkunit.pp(6975,13) Warning: Symbol "FixPath" is deprecated: "Use the overload with AIsDir instead" make[3]: Leaving directory `C:/development/trunkall/fpc/packages/fpmkunit' C:/development/trunkall/fpc/compiler/ppc386.exe fpmake.pp  -FuC:/development/trunkall/fpc/packages/fpmkunit/units_bs/i386-win32 -FuC:/development/trunkall/fpc/rtl/units/i386-win32  -g -gl -O1 -Xs -CX -XX fpmake_proc.inc(224,2) Fatal: Cannot open include file "gdbm\fpmake.pp" Fatal: Compilation aborted make[2]: *** [fpmake.exe] Error 1 make[2]: Leaving directory `C:/development/trunkall/fpc/packages' make[1]: *** [packages_smart] Error 2 make[1]: Leaving directory `C:/development/trunkall/fpc' make: *** [build-stamp.i386-win32] Error 2 make: Leaving directory `C:/development/trunkall/fpc' fpclazup: info: FPC: Running fpc make all install failed with exit code 2 Details: fpclazup: ERROR: Error running BuildModuleCustom for module FPC fpclazup: info: Error running fpcup. Technical details: error executing sequence fpc; line: 5, param: FPC fpclazup: info: Error running fpcup. Technical details: error executing sequence DefaultWin32; line: 3, param: fpc Fpclazup failed. Please check log for details. Possible troubleshooting steps: - run again with --verbose and check for make, lazbuild errors etc. - if compiling Lazarus, make sure your lhelp is closed. - try removing all intermediate files by running fpcup with the --clean option   and/or manually deleting all *.ppu/*.a/*.o followed by svn up - if that does not work: use the --uninstall option to remove all files   including your FPC and Lazarus directories - remove the files in the bootstrap directory. fpcup will redownload if required. ---------------------------------------------------------------------- DonAlfredo · 2015-12-15 12:41 If I look at your log, I can see something like trunkall. And that could mean that you used some kind of script to run fpc(laz)up. I just ran Code: [Select]fpclazup.exe --installdir="c:\fpcrttitrunk" --fpcURL="RTTI" --lazURL="trunk" --verbose without any problem ! Please state the exact command you used !? ---------------------------------------------------------------------- aradeonas · 2015-12-15 14:06 exactly what you wrote and just copy pasted and that trunkall is my folder name. ---------------------------------------------------------------------- aradeonas · 2015-12-15 14:50 I just try this : Quotefpclazup.exe --installdir="c:\fpcrttitrunk" --fpcURL="RTTI" --lazURL="trunk" --verbose --noconfirm > vlog.txtAnd get full log: Quote..... ..... A    C:\fpcrttitrunk\fpc\packages\gtk2\src\gtk+\gtk\gtkfilesystem.inc svn: E175013: Access to '/svn/fpc/!svn/rvr/30547/branches/interfacertt i/packages/gtk2/src/glib/gstring.inc' forbidden fpclazup: info: FPC was at: failure fpclazup: info: No updates for FPC found. fpclazup: info: TFPCInstaller: building module FPC... fpclazup: info: Running make all install for FPC: Executing : C:\fpcrttitrunk\fpcbootstrap\make.exe "FPC=C:\fpcrttitrunk\fpcbootstrap\ppc386.exe" "-- directory=C:\fpcrttitrunk\fpc" "INSTALL_PREFIX=C:\fpcrttitrunk\fpc" "UPXPROG=echo" "COPYTREE=echo" "OPT=-g -gl -O1 -Xs -CX -XX" "all" "install" (working dir: C:\fpcrttitrunk\fpc) make: Entering directory `C:/fpcrttitrunk/fpc' C:/fpcrttitrunk/fpcbootstrap/make compiler_cycle RELEASE=1 make[1]: Entering directory `C:/fpcrttitrunk/fpc' C:/fpcrttitrunk/fpcbootstrap/make -C compiler cycle make[2]: Entering directory `C:/fpcrttitrunk/fpc/compiler' C:/fpcrttitrunk/fpcbootstrap/make tempclean ppc3.exe make[3]: Entering directory `C:/fpcrttitrunk/fpc/compiler' C:/fpcrttitrunk/fpcbootstrap/rm.exe -f ppcross386.exe ppc.exe ppc1.exe ppc2.exe ppc3.exe ./msg2inc.exe pp1.wpo pp2.wpo C:/fpcrttitrunk/fpcbootstrap/make 'OLDFPC=' next CYCLELEVEL=1 make[4]: Entering directory `C:/fpcrttitrunk/fpc/compiler' C:/fpcrttitrunk/fpcbootstrap/make rtlclean rtl make[5]: Entering directory `C:/fpcrttitrunk/fpc/compiler' C:/fpcrttitrunk/fpcbootstrap/make -C  clean make: Entering an unknown directory make: Leaving an unknown directory make: *** clean: No such file or directory.  Stop. make[5]: *** [rtlclean] Error 2 make[5]: Leaving directory `C:/fpcrttitrunk/fpc/compiler' make[4]: *** [next] Error 2 make[4]: Leaving directory `C:/fpcrttitrunk/fpc/compiler' make[3]: *** [ppc1.exe] Error 2 make[3]: Leaving directory `C:/fpcrttitrunk/fpc/compiler' make[2]: *** [cycle] Error 2 make[2]: Leaving directory `C:/fpcrttitrunk/fpc/compiler' make[1]: *** [compiler_cycle] Error 2 make[1]: Leaving directory `C:/fpcrttitrunk/fpc' make: *** [build-stamp.i386-win32] Error 2 make: Leaving directory `C:/fpcrttitrunk/fpc' fpclazup: info: FPC: Running fpc make all install failed with exit code 2 Details: fpclazup: ERROR: Error running BuildModuleCustom for module FPC fpclazup: info: Error running fpcup. Technical details: error executing sequence fpc; line: 5, param: FPC fpclazup: info: Error running fpcup. Technical details: error executing sequence DefaultWin32; line: 3, param: fpc Fpclazup failed. Please check log for details. Possible troubleshooting steps: - run again with --verbose and check for make, lazbuild errors etc. - if compiling Lazarus, make sure your lhelp is closed. - try removing all intermediate files by running fpcup with the --clean option   and/or manually deleting all *.ppu/*.a/*.o followed by svn up - if that does not work: use the --uninstall option to remove all files   including your FPC and Lazarus directories - remove the files in the bootstrap directory. fpcup will redownload if required.It has error on this : Quotesvn: E175013: Access to '/svn/fpc/!svn/rvr/30547/branches/interfa certti/packages/gtk2/src/glib/gstring.inc' forbidden ---------------------------------------------------------------------- DonAlfredo · 2015-12-15 14:54 Thanks for reporting back. Definitely a SVN error. Just delete the fpc directory and try again. Your command sequency is 100% ok !! ---------------------------------------------------------------------- aradeonas · 2015-12-15 16:31 I tested again. Quotesvn: E730053: Error running context: An established connection was aborted by the software in your host machine.  Is it a SVN problem again?Is there anyway to check?