Announcement

Collapse
No announcement yet.

C4 Engine Drops Linux Support, Calls It "Frankenstein OS"

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Originally posted by Cyber Killer View Post
    Fixed that for you:
    Compile your program (on a sufficiently old distro version), pack the binary + the dependent libs into a zip or whatever. Include a simple script to run the program:

    Code:
    #!/bin/bash
    
    cd "`dirname $0`"
    LD_LIBRARY_PATH=$LD_LIBRARY_PATH:./lib ./binary
    (assuming you put the dependent libs inside 'lib' subdir in the programs directory)

    Then when the user unpacks this, assuming he has a newer glibc and the architecture is ok (64bit/32bit), then the program will run and use system libs first or if they're not installed then the libs that you provided (just be sure to provide the dependencies of your dependencies too - it's generally a good idea to not use too many libs, better stick with 1 fairly complete framework). The only thing this differs from your windows example is the script to set the LD_LIBRARY_PATH for the binary.

    No need to thank me ;-).
    I vaguely remember trying this method about a year ago. I do not remember the exact reason, but I was unable to get it work reliably on different distributions. Then again, we have a fair amount of libraries, and those libraries have many dependencies themselves so it is likely that the error was on my part. I will once again revisit this in the near future.

    On a related note, do you have any experience with the LSB (Linux Standard Base)?

    I appreciate your input .

    Comment


    • Originally posted by AnonymousCoward View Post
      I am a cross-platform developer for a proprietary program which runs on GNU/Linux, Windows and Mac OSX.
      ...
      We're a small development team so we can not compile, package, and test on all major distributions (Ubuntu, Mint, Debian, Fedora, OpenSUSE, RHEL, CENTOS, etc.). It would simply be too time consuming.

      It would be great if supporting many distributions would be as easy as supporting different versions of Windows, i.e compile once and ship all the library dependencies with your proprietary program.
      Others already said how to pack libs; I'll just add that you can do a test run with one of my sw: http://sourceforge.net/projects/fift...er/files/v0.2/

      Grab the binary release and see if it runs on your Ubuntu/Mint/Fedora/etc local system. I have done nothing special, C++ libs are static, less common C libraries are packed, only a few most common C libraries are expected to be on the system.

      Comment


      • @Cyber Killer

        It is not that simple, basically you can ship libs if needed with your game/engine. But it is not that good if you do that with core libs like libstdc++.so.6 or libgcc_s.so.1 which happend with the Steam runtime for example. This can break 3d acceleration with Gallium based drivers. The other thing is if you want to run an app with a distro with older libc6 you have to compile it against that libc6. It usually does not have got any bad sideeffects on newer systems. But you don't need to use an old system to develop - just compile it for release in a more compatible way, a chroot is definitely enough. As mentioned before: Steam ships with runtime environments with lots of libs, if some are missing just tell em - maybe you did not notice that, but that's why you don't need to install so many 32 bit libs on your 64 bit system even if the games are 32 bit only.

        Comment


        • Originally posted by AnonymousCoward View Post
          I vaguely remember trying this method about a year ago. I do not remember the exact reason, but I was unable to get it work reliably on different distributions. Then again, we have a fair amount of libraries, and those libraries have many dependencies themselves so it is likely that the error was on my part. I will once again revisit this in the near future.
          There's also stuff like multimedia codecs, fonts, etc to keep in mind too. As for libs - having too many dependencies is your enemy. For desktop apps sticking with something like Qt solves most library problems, but if you already are far into development, then there's no point switching now.

          Originally posted by AnonymousCoward
          On a related note, do you have any experience with the LSB (Linux Standard Base)?
          Not from a developers point of view, sorry. I'm just an amateur coder, I'm a sysadmin by profession.

          Originally posted by Kano
          But it is not that good if you do that with core libs like libstdc++.so.6 or libgcc_s.so.1
          True, better don't touch the base libs, that's why it's good to compile against older versions, like you said.
          Last edited by Cyber Killer; 15 January 2015, 11:57 AM.

          Comment


          • Originally posted by bitman View Post
            If it is the solution then clearly something is wrong. Thats now how modern systems should be worked around. Seriously...
            That is not a work around, it is the only correct and robust way to install multiple operating systems without dealing with virtual machines. Wubi was a toy for previewing Ubuntu so can later install it properly on eg another hard disk or free space on an existing disk.

            Comment


            • Originally posted by bitman View Post
              Are you nuts? How about installing arch? Ok its edge case. How about installing mint when installer accidentlally crashes? Whats so easy about it then? Ofc most of the time it does not happen. But when it did happen i had to learn and manually set up lvm + luks. Valuable experience for me but not for most people. On the contrary installing windows never gave me trouble so please dont preach crap sir.
              So you need to mention a profi distro, if you are a user that just want to install his first linux or wants just a running linux and is not willing to dig deaper why in hell would such person choose arch linux? But you kind of said self that this is a dumb example.

              I never installed mint but ubuntu, I think its 99% the same because mint is ubuntu with some other default packages and maybe 1-2 own ppa like things enabled by default, so I answer it for ubuntu. Ubuntus normal installer does not support lvm only the cli based debian-like installer does that. windows installer does not support lvm or anything like lvm, so why in hell do you need that if you are a user that is in fear of linux problems?

              Its a bit like choosing a family car for doing a racing competition, maybe thats no good idea.

              luks is even cracyer, why do you need that? lvm dont needs luks, something with encryption basic windows does also not allow to encrypt so how can you compare this tasks when its maybe somethimes difficult task under linux and impossible in windows?

              And again next step you compare a linux distro installation with a windows installation. A windows installation is more or less like debian-minimal installation. nothing what you need is there, you can search 5 days in the internet after 1000 setup.exes full with viruses and some cds maybe too.

              Most of that (cant boot) Problems are then vendor problems driver problems... something like that, thats no linux problem, but a problem that this companies suck, and should go bankrupt.

              Comment


              • Originally posted by nanonyme View Post
                That is not a work around, it is the only correct and robust way to install multiple operating systems without dealing with virtual machines. Wubi was a toy for previewing Ubuntu so can later install it properly on eg another hard disk or free space on an existing disk.
                Creating virtual machines is usually a pretty good and useful way to have multiple distros on hand to make builds, test them, etc. Though not in this case, cause VMs don't work good with 3d acceleration that is needed for game engines.

                Comment


                • Originally posted by nanonyme View Post
                  That is not a work around, it is the only correct and robust way to install multiple operating systems without dealing with virtual machines. Wubi was a toy for previewing Ubuntu so can later install it properly on eg another hard disk or free space on an existing disk.
                  Fact that multiple versions of same operating system are required to build software for them is problem here. I get why i would need windows to build software for windows. But it would be weird if i had to install windows xp, vista, 7, 8 and 8.1 and provide different packages for each of them. After all its same fkin core which is being added upon incrementaly. But wait it gets better. With windows 7 they changed lots of internal userspace stuff and introduced lots of weird dlls. And you know what? Old apps still work just fine as well as we can build software targetting older OS just like that. No crazy hacks like chroot. Yes its OS within the OS. Yes it is reliable and awesome. Yes in this particular usecase it is a hack because problem should not be solved this way.

                  Originally posted by blackiwid View Post
                  So you need to mention a profi distro, if you are a user that just want to install his first linux or wants just a running linux and is not willing to dig deaper why in hell would such person choose arch linux? But you kind of said self that this is a dumb example.

                  I never installed mint but ubuntu, I think its 99% the same because mint is ubuntu with some other default packages and maybe 1-2 own ppa like things enabled by default, so I answer it for ubuntu. Ubuntus normal installer does not support lvm only the cli based debian-like installer does that. windows installer does not support lvm or anything like lvm, so why in hell do you need that if you are a user that is in fear of linux problems?

                  Its a bit like choosing a family car for doing a racing competition, maybe thats no good idea.

                  luks is even cracyer, why do you need that? lvm dont needs luks, something with encryption basic windows does also not allow to encrypt so how can you compare this tasks when its maybe somethimes difficult task under linux and impossible in windows?
                  Im just saying things happen. One might not need lvm but encryption nowdays is important. While setting it up in installer is easy its a bummer for average user when installer crashes. On windows its bit different. Not saying its better but it works. Like Next > Next > Next > Finish > ... Wait ... > Reboot and you got your machine encrypted. Same for bitlocker, same for truecrypt. No magic.

                  Originally posted by blackiwid View Post
                  And again next step you compare a linux distro installation with a windows installation. A windows installation is more or less like debian-minimal installation. nothing what you need is there, you can search 5 days in the internet after 1000 setup.exes full with viruses and some cds maybe too.

                  Most of that (cant boot) Problems are then vendor problems driver problems... something like that, thats no linux problem, but a problem that this companies suck, and should go bankrupt.
                  I would not compare windows to debian-minimal. See one thing windows does good is separation between user software and system software. While user is supposed to install software himself its not a bad thing. Although if linux people did it they would surely do it better. Problem with linux distros is that you cant really have multiple versions of software side by side unless you are willing to endure lots of pain. Distros dont usually package multiple versions. Also distros get old and expire soon so if user is not constantly updating to newer version he gets same frozen set of apps that were available at release time. While on rest of popular desktop OSes you can install multiple versions just fine. Well nixos is changing that so future looks bright.

                  Originally posted by blackiwid View Post
                  Most of that (cant boot) Problems are then vendor problems driver problems... something like that, thats no linux problem, but a problem that this companies suck, and should go bankrupt.
                  Well you are mostly right. The only "cant boot" problem i ever had was infamous black blinking cursor which needed "nomodeset" kernel parameter to make nvidia driver happy. While it was no biggie it should not happen. It indeed is fault of nvidia that is being retarded with linux but still i think maybe there could at least be workaround added to make users not see even this.

                  Comment


                  • You write total crap about Windows. Up to XP apps were allowed to write to system wide directories for config files and data, Steam/Origin still do that somehow but with changed write permissions to the game dirs. If you run old apps then Win really writes to a folder in the user settings to allow those writes. But you can never run any 16 bit app in a 64 bit Windows system, that only works with 32 bit apps. Lots of games needed patches to run correctly - or you would need to run em as admin. Do you run games as root?

                    Comment


                    • Originally posted by bitman View Post
                      Im just saying things happen. One might not need lvm but encryption nowdays is important. While setting it up in installer is easy its a bummer for average user when installer crashes. On windows its bit different. Not saying its better but it works. Like Next > Next > Next > Finish > ... Wait ... > Reboot and you got your machine encrypted. Same for bitlocker, same for truecrypt. No magic.
                      truecrypt is gone/dead, and it was proprietary so, when you care about security and use proprietary software its a joke anyway. and using microsoft proprietary bitlocker is even a bigger joke, using a encryption from a company that is known to weaken his own software so that nsa can spy and even is unable or more like unwilling to fix bugs in 90 days and rants against the evil google because of them releasing the bug-information after 90 days is a joke. But you are more concerned about the criminals than the nsa criminal organisation and if I read wikipedia about truecrypt and bitlocker its even known that there is software for police (which bad people shurly get their hands not on) that can extract the passwort... except the pc is out, and even then its not shure it cant be extracted with a more exclusive software.

                      good I see that truecrypt did give people at least read access to the source... makes it a bit better, but another funny point is that it was fuer linux too. so if you really trust such software (even the authors did not in the end), the process was shurly exactly like in windows. start yes yes yes done...

                      You also should give more inmformation, what you say about ubuntus installer and encryption are 1. ubuntu specific 2. most likely a rare bug, I doubt that the installer defaults on trashing installation if people active encryption. I have also funny bugs in windows, ok maybe not so extreme ones like not booting up, but whenever I install a windows version on my gaming pc, it just wakes up from its standby in the middle of the night, which is bad because its noise and I sleep in the same room... so i had to search "konsole" commands to make him not hear to the networkcard wakeup shit, even nobody tries to wake it, but windows mistakenly things that somebody wants to wake him.

                      I would not compare windows to debian-minimal. See one thing windows does good is separation between user software and system software. While user is supposed to install software himself its not a bad thing. Although if linux people did it they would surely do it better. Problem with linux distros is that you cant really have multiple versions of software side by side unless you are willing to endure lots of pain. Distros dont usually package multiple versions. Also distros get old and expire soon so if user is not constantly updating to newer version he gets same frozen set of apps that were available at release time. While on rest of popular desktop OSes you can install multiple versions just fine. Well nixos is changing that so future looks bright.
                      Why the hell would you want different versions of one package? also in fedora its no problem and in gentoo too. and basicly in no distro its a problem as long as you dont use the package system, because its a rare case taht you need more than one version of a package, its ok if the package manager dont support it, you are back to windows, like xonotic.zip extract it go into the folger ./starter-name.sh enter done. looked at firefox there is a tar.bz2 file and I am shure thats not the source code on the user website.

                      yes maybe to unpack that its minimal more difficult than press a setup.exe but if you are needing different versions its most likely that you are a developer/technical person anyway.
                      And btw not all distros get old more or less only debian based distros get old fast, because of their software philosopy. in fedora I get updates to more or less anything, kernel, firefox, I think even libre office, not shure... and its much easier to pin a file in fedora than in debian/ubuntu in my experince if really needed.

                      The need of having differnt versions from programm installed in windows most often is a result of windows is bad at seperating user-data and programm-data. most proprietary softwares must create a product out of each version, so it has to becomre more or less incompatible with the previous version. and then you have to copy all the files around tax-software last time I checked needed to install tax 2012 then 2013 then 2014 then 2015 to get the files converted version after version to the newest version on the pc of my dad, horrific design because each version has a specific importer, its the same company but they need a importer... so cracy. So I doubt that its a advantage in most cases.

                      often people end up loading a new setup.exe from a programm to update it, and then they are pretty pissed when they have a second version installed or the installer tells them that they should deinstall the old version first... even thats possible that it does not allow the installation of 2 versions... in windows every programm makes his own shit... so its just not true in generall what you are saying, its just true for 1-2 apps you like maybe.

                      And that it gets old is also not true in general. even in ubuntu you can switch to the alpha/beta versions of ubuntu-next, I never had big problems with it, with betas I think I had 0 problems at all. debian is supposed to run more or less primary on servers, and ubuntu is to bad to keep ahead of that thats why many people use also ubuntu for server. so if you use a very server-centred distro, you should not wonder about very old software. So do we talk about bad ubuntu or bad linux, I switched away from ubuntu, maybe my reasons were less technical in the first place (ater the switch I realised how bad technicaly ubuntu is, and how much more superiour fedora and archlinux), so I am not so happy to having to defend ubuntu here. But still its not that bad that you try to make it look.

                      I switched just recently to fedora 22, because I did not miss much software from it. Ok for most the point would be a newer gnome version, but if you dont need that it offers not much, not that the update was painfull just worked and have only a few small bugs since then (something with my xrandr scripts primary), except a newer mesa version and activated SNA in X with my SNA-Laptop the only other thing I wanted was 24.4 version of emacs, not that I could not have installed that in Fedora 21 by pinning.

                      dont get me wrong this package managers has seldom its weaknesses, but in my oppinion for most users its much better 99% of the time. I would kill kittens for having a global udpate-everything command in windows, that 99% of the time does not break anything. And then the reinstallation, yes maybe windows installation breaks nothing, but you have to do it every few years, while a normal linux installation you install once and then upgrade just 10-20 years copy it to new harddisk or new computers and it just starts again without trouble. while in windows I have to reinstall evyerhint every 2 years or more often in some cases its insane waste of time.

                      Well you are mostly right. The only "cant boot" problem i ever had was infamous black blinking cursor which needed "nomodeset" kernel parameter to make nvidia driver happy. While it was no biggie it should not happen. It indeed is fault of nvidia that is being retarded with linux but still i think maybe there could at least be workaround added to make users not see even this.
                      maybe... you could even argue that having proprietary software-installers is a bad thing (in my opinion it is) because linux should not advertise such bad software. you can (I am not) even be for proprietary user-software and still be strict against such practises, a driver with kernel-rights should not be allowed on systems its insane, 1. there is no rational reason for it, its not like they need to sell the driver and protect it from pirates.

                      Also does have steamos have this problem? Maybe no? I would bet on? so its also a ubuntu problem. And not hiding bugs from nvidia is maybe no bad thing, the least they could do if we have to live with that freedom hating company and its politics to support their hardware in this nasty way.

                      What would happen if nvidia driver would start to make same bugs in windows? Well people would bitch about nvidia and start boykotting them hard for beeing unable to make even basic stuff. in a post/steammaschine release world, I doubt that they can make such things without patching em fast, if so.. they get what they deserve thousends if not millions of people start boykotting them, not because of the gpl freedoms they wnat but because of a incompetentence of this company unable to support their own hardware with drivers that work.

                      Comment

                      Working...
                      X