Results 1 to 10 of 40

Thread: New Get Lazarus Initiative

Hybrid View

Previous Post Previous Post   Next Post Next Post
  1. #1
    @paul_nicholls: I have no idea where those messages originate. It might be a false positive, or maybe my system is compromised, that is I have a virus which somehow has infected the files I am distributing, which I guess isn't a complete impossibility.

    Let me go over how I generate the final setup.exe for Windows.

    On a development Windows 7 machine I first download the bintools from the official free pascal locations. Then I download free pascal 2.6.4 win 32 bin from sourceforge. Finally I download silk svn command line tools from the silksvn website. I put all of them in my path and open a cmd terminal.

    Making fpc 3.0.1:

    I cd to path_to and svn checkout a free pascal fixes 3.0 branch revision. I cd to path_to\fpc, make all, then make install INSTALL_PREFIX=path_to\fpc. Then I make crossinstall CPU_TARGET=cpu CPU_TARGET=os INSTALL_PREFIX=path_to\fpc for all cpus and targets. Next I copy the cross compilers to path_to\fpc\bin\i386-win32. Then I copy all the libs for each cross compile target to lib folders. Files like libX11.so libpthread.so, which I didn't compile myself, but downloaded from a bundle on a cross compile website.

    Making lazarus 1.4:

    I remove fpc 2.6.4 from my path, and add path_to\fpc\bin\i386-win32. I fpcmkcfg a new fpc.cfg in that same folder. I cd to path_to and svn checkout a lazarus trunk branch revision. I then cd lazarus, copy changes.diff there, and run patch -p0 -i changes.diff. Then I make all, lazbuild components\anchordocking\design\anchordockingdsgn. lpk, make useride, and finally I strip all exe in path_to\lazarus. I copy in my premade config folder, which contains window layouts, preferences, builds modes already setup.

    Clean up:

    I delete all svn files from path_to\fpc and path_to\lazarus. This frees up maybe 100MB or more of space in the final release. Next I delete a lot of fpc intermediate files used when making the compiler. Next I delete a lot of pas files for architectures I don't see being used for cross compile uses, like MIPS cpu and others, saving up even more space.

    Making setup.exe:

    I run inno setup, copy in this script https://github.com/sysrpl/Codebot.Se...dows/setup.iss, and press build. After five minutes or so setup.exe is created which is then uploaded to an amazon s3 bucket for distribution.

    Now back to, is there a virus? Maybe, I mean I am using a lot of tools I didn't write myself, like silksvn, bintools, the sourceforge stuff, even a downloaded inno setup. Maybe my system has a virus from some other piece of software. I am not totally sure. What I can do though, if your AV is reporting a problem and it's a decent AV, and if other people report similar problems is take a new pc, install a fresh copy of windows, get just the tools I've outlined above on it, repeat all those steps, and deliver another setup.exe, and you can check if your AV software reports the same problem. In that case either the AV is wrong or a tool along my chain of dependencies has a virus.

    In either case, I run a virus scan on my development system every Sunday morning at 3:00AM, which is about 24 hours away. I will consider perhaps a better AV software before then, allowing it to run tomorrow morning. I will look if anything is reported and copy those results back to this thread.

    Edit: I forgot to mention, I also distribute a tool called FART http://fart-it.sourceforge.net/ in the fpc bin folder to replace config paths with locations on my development pc (C:\Development\RC1) and your chosen install location.
    Last edited by sysrpl; 07-02-2015 at 08:24 AM.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •