Which Virtualbox image distro is best for Lazarus? lazarus / 1-Linux ---------------------------------------------------------------------- Andyk · 2012-06-25 08:19 Currently running Win7 32 bit edition and want to try cross compiling my apps for Linux. I want to run a virtual Linux machine in virtual box and they have a number of Linux versions on their images page http://virtualboxes.org/images/ Which one would be the best to install for running Lazarus? ---------------------------------------------------------------------- JD · 2012-06-25 08:31 I personally use Ubuntu & Linux Mint but I did not use the images; I installed them directly from their installation CD/DVD into VirtualBox. JD ---------------------------------------------------------------------- Andyk · 2012-06-25 09:43 Thanks, I installed LinuxMint and it runs OK. Downloaded the Lazarus linux versions and I don't know what to do with it. Unzipped the files and it left me with a load of .deb files. What am I supposed to do with these? ---------------------------------------------------------------------- BigChimp · 2012-06-25 09:46 To be blunt: learn about Linux. You can use e.g. dpkg -i *.deb in a console to install all .deb packages. This may not work for the Lazarus debs as you may miss some dependent libraries. Have a look at the getting the source wiki link or the wiki page on installations for more details. ---------------------------------------------------------------------- Andyk · 2012-06-25 11:05 Not good enough BigChimp ! People are turned on or off by their first introduction and if it can't even do the basics, like installing without consulting a 100 page manual then its going to turn people away. They need to call in Jordan Russell to sort Linux out. ---------------------------------------------------------------------- BigChimp · 2012-06-25 12:34 Well, Andyk, perhaps Linux is not for you. The point I was trying to make is that I think dealing with .deb (or .rpm) files when using Linux at developer level should be part of one's knowledge. It's not specific to Lazarus or FreePascal either. I'd suggest you try and read that 100 page manual As for calling in Jordan Russell - see another thread here on somebody who wanted to create an innosetup clone on Linux and the reasons why a lot of people (me included) thought that was a bad idea. ---------------------------------------------------------------------- Martin_fr · 2012-06-25 13:03 Well, about the 100 page manual. You do not need it to install Lazarus. But maybe to use Linux? The point is, how to you install other, not pre-installed software on Linux? On Windows, installers come as exe, or msi, and you can double click them. In order for that to work, windows (and not the software, that you install) provides various features. On Linux, linux demands, that it is done the linux way: that is not an installer exe. Actually linux provides various ways: - An integrated software repository (ports or similar) that allow to select from a list, and does the rest for you - rpm or debs file - compile it yourself (and more work, that needs knowledge), often via tar, gz , or similar. The way is defined by the OS, so if you know the OS, then you can install, without needing to read a big manual. --- Search the equivalent to the start menu, likely it has an "install software" or similar. Lazarus may be in there. If you chose a linux that is well maintained, then you even get an up to date version. Or find out, if your linux uses rpm or debs, and read up on them (I don't use them, so I can't tell you) ---------------------------------------------------------------------- KpjComp · 2012-06-25 13:08 QuoteAs for calling in Jordan Russell - see another thread here on somebody who wanted to create an innosetup clone on Linux and the reasons why a lot of people (me included) thought that was a bad idea. If I'm reading the correct thread, the reasons were strange. I'm assuming an InoSetup clone would do exactly what you suggested -> Quotecreate something like an RPM builder or deb builder Creating a innosetup clone that duplicated windows behaviour of course would be pointless.  You even mention here that .deb "may miss some dependent libraries.".  A good setup program could then handle this, eg. ironically a bit like your fpcup.  In some ways, to me it feels like a bit of the Linux superiority complex kicking in here, (why would we want to clone a windows app), and if your not confable with a bash script, then linux is not for you. ---------------------------------------------------------------------- Martin_fr · 2012-06-25 13:43 Quote from: KpjComp on June 25, 2012, 03:08:41 pmCreating a innosetup clone that duplicated windows behaviour of course would be pointless.  You even mention here that .deb "may miss some dependent libraries.".  A good setup program could then handle this, eg. ironically a bit like your fpcup.  In some ways, to me it feels like a bit of the Linux superiority complex kicking in here, (why would we want to clone a windows app), and if your not confable with a bash script, then linux is not for you. This' has nothing to do with better or worse, or wanting to clone behaviour or not. Linux has become a lot (a big one) more user friendly, than it once was. But it follows a different concept. And that brings both advantages, and problems. Long ago, windows (win 3) was running on dos. And there where different dos manufacturers. That is a bit of what linux does. It means choice, but it means NOT 100% compatible. Windows abandoned that. Not because of it is better to have all in one, but because MS did want to sell there stuff. So win95 officially had no does any-more (well officially). So if you have an app for windows, then all the OS parts are known. On Linux that is different. You need: - the kernel (which there are different ones avail) - X11 or another graphical layer - gtk, qt or another widgetset layer - a window-manager (again plenty of them, and they make your app react differently) All of those come in different versions. Linux also splits them into the runtime part (which is needed for normal apps), and development parts, which is needed to create new apps. The devel parts are often not installed. You need to find the exact matching ones.... Why believe that an installer written with the aim to run on all Linux distros, would be able to deal with the above situation better than the installers that are supplied with each distro (by the people who wrote the distro, and should know best)? ---------------------------------------------------------------------- KpjComp · 2012-06-25 14:10 QuoteWhy believe that an installer written with the aim to run on all Linux distros, I'm not sure your following here, I'm not suggesting the installer doesn't use DEB etc.  But something that can package what's required together for you.  The installer could even create you a nice setup.sh to bootstrap your dpkg, but of course as linux guru, that would be seen as an insult. For Linux standard repo's, there isn't an issue.  But from were I'm standing, for none official repos there's certainly room for improvement. And it's this part from BigChimp that prove it -. QuoteThis may not work for the Lazarus debs as you may miss some dependent libraries. Either the Lazarus debs are badly put together, or the Debs just don't cut the mustard.  As a none Linux guru, I'll leave that for you to decide. ---------------------------------------------------------------------- fabienwang · 2012-06-25 14:29 In the linux distro called ArchLinux, a single command can install Lazarus: pacman -S lazarus and I made packages for lazarus-svn on AUR (user repository), with a tool named yaourt you can install them really easily: yaourt -S lazarus-svn and this goes check the latest version, get it, compile it, package it and install the package. ---- Also, an OS just to compile and test in virtualbox, shouldn't take much harddisk space, cross-compiling is good, but if you test your products in a real environment, and i hope you do, different OS are absolutely necessary ! Then, there is just a step to install lazarus on them and compile from them xD ---------------------------------------------------------------------- KpjComp · 2012-06-25 15:24 QuoteIn the linux distro called ArchLinux, a single command can install Lazarus: pacman -S lazarus Isn't this then an official repo?. Where I think things fall down in Linux, is say if wanted to install my own software etc.  Things get a little bit more complicated, and having to publish to an official repo is not always ideal. The nice thing with Lazarus, in theory you can just execute the program.  Even in Linux as long as the basic dependencies are there.  Doesn't this mean then it's possible to create a nice front-end for installing in different flavours of Linux?, you could maybe even embed the Deb, the installer could maybe even call the OS's repo installer to check dependencies etc/etc. To put it another, in both MacOS & WinOS I've rarely ever need a terminal windows to install something, and even if big dependencies like .NET framework is required the installer has helped. ---------------------------------------------------------------------- Andyk · 2012-06-25 15:37 Quote from: Martin_fr on June 25, 2012, 03:43:32 pmWhy believe that an installer written with the aim to run on all Linux distros, would be able to deal with the above situation better than the installers that are supplied with each distro (by the people who wrote the distro, and should know best)? In my world, anything that requires a command line is  . Frankly I'm shocked at the fragmentation that has occurred in the Unix universe, I had no idea it had got that bad. Is there no standards committee? Can the Lazarus team not define a standard Linux distro for which a "one touch" install is made (including FPC) ? The really odd thing is, I downloaded the LinuxMint virtualbox image and it just ran, straight away, no setup, no nothing.......perfect. Now..... how about making that same  virtualbox image with Lazarus already installed ? ---------------------------------------------------------------------- BigChimp · 2012-06-25 15:47 You can always try fpcup or svn+make+make install etc to get an up to date install from subversion. Much easier than fiddling around with debs etc. As for standards committees and Unix.... that was a nice joke, a bit old, but still nice and applicable Personnally, I'd use the distro most FPC/Lazarus devs use. Perhaps Fedora, no idea.... but running fpcup on my Debian VMs works just fine. ---------------------------------------------------------------------- Andyk · 2012-06-25 15:54 Quote from: BigChimp on June 25, 2012, 05:47:54 pm As for standards committees and Unix.... that was a nice joke, a bit old, but still nice and applicable Joke? I'm sorry, but I really am a naive dumbass when it comes to Linux  (as you may have guessed already) ---------------------------------------------------------------------- BigChimp · 2012-06-25 16:59 The joke is that there are so many standards to choose from on Unix/Linux. Though a lot of things are standardized... I wonder though about Windows where Microsoft implements and then throws out some "game changing, must use" technology every few years.... ---------------------------------------------------------------------- KpjComp · 2012-06-25 20:49 QuoteI wonder though about Windows where Microsoft implements and then throws out some "game changing, must use" technology every few years.... Yes, Microsoft and standards are not always good friends, eg. take HTML for example, what a mess they made there, and then decided to invent another standard nobody needed, Silverlight, when HTML5 was being developed. But the one thing you can do, is create an install that will work all the way from  Windows 95-Windows 7, and most likely W8 too. ---------------------------------------------------------------------- CaptBill · 2012-06-26 03:30 I assume you want to target the widest audience with your apps and want a good test-bed. In that case you want for your test Linux environments: Ubuntu, Debian, and probably Mint. That will cover probably 90% of the Linux installations out there. Chiefly Ubuntu and Debian. If you are set up for either/both of those, you are assured that people with other distros can install too. Generally, most distros can work with .deb's (debian repo format) and Ubuntu's repo format. ---------------------------------------------------------------------- BigChimp · 2012-06-26 04:58 Quote from: CaptBill on June 26, 2012, 05:30:34 amI assume you want to target the widest audience with your apps and want a good test-bed. In that case you want for your test Linux environments: Ubuntu, Debian, and probably Mint. That will cover probably 90% of the Linux installations out there. Chiefly Ubuntu and Debian. If you are set up for either/both of those, you are assured that people with other distros can install too. Generally, most distros can work with .deb's (debian repo format) and Ubuntu's repo format. Well.... unless you count Red Hat Enterprise Linux/CentOS  & Fedora (& other distros using .rpms.) Ubuntu seems to be popular on the desktop, yes, but RHEL seems to be the distribution of choice in corporations. Depends on your market though - I think Ubuntu/Mint is more prevalent on desktops while RH is more prevalent on servers. Edited: typo ---------------------------------------------------------------------- Andyk · 2012-06-26 08:35 Are Ubuntu and Mint different ? I installed Mint, it says "Mint" in the splash screen but it says Ubuntu in the top right hand corner. ---------------------------------------------------------------------- JD · 2012-06-26 09:11 Quote from: Andyk on June 26, 2012, 10:35:29 amAre Ubuntu and Mint different ? I installed Mint, it says "Mint" in the splash screen but it says Ubuntu in the top right hand corner. Mint is a derivative of Ubuntu which is itself a derivative of Debian. ---------------------------------------------------------------------- Andyk · 2012-06-26 10:57 So now I realise that, unlike the Windows installer, FPC is not included in the Lazarus build for Linux. Is there a reason for this? I did download it and, lo and behold, it has an installer. I just ran the script and FPC installed automatically. I still haven't figured out how what to do withe deb files, doesn't seem to be any use for them. I followed the instructions here... http://wiki.freepascal.org/Lazarus_release_version_for_Ubuntu created the getlaz file and it worked, so I'm up and running.