Stories
Slash Boxes
Comments

News for nerds, stuff that matters

Slashdot Log In

Log In

Create Account  |  Retrieve Password

PlayStation 2 Game ICO Violates the GPL

Posted by kdawson on Wed Nov 28, 2007 05:17 AM
from the fun-with-dissassembly dept.
An anonymous reader writes "Apparently the video game ICO for the Playstation 2 is using GPL-licensed code from libarc. Sony could end up having to release the source code for the entire game!"
+ -
story

Related Stories

This discussion has been archived. No new comments can be posted.
The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More
Loading... please wait.
  • Get real... (Score:5, Insightful)

    by Anonymous Coward on Wednesday November 28 2007, @05:19AM (#21502627)

    Sony could end up having to release the source code for the entire game!
    Not going to happen.
    • Re:Get real... (Score:5, Informative)

      by OrangeTide (124937) on Wednesday November 28 2007, @05:47AM (#21502757) Homepage Journal
      Sony has to cease distribution of the game. Which they already have done. Because of the way licenses work GPL gives you the choice of cease distribution or release the source. Obviously the easiest route for a now defunct game that you no longer publish is to cease distribution.

      You can go after ever used game shop and stop them from redistributing the binaries without source too, if you'd like.
      • Re:Get real... (Score:5, Insightful)

        by RupW (515653) * on Wednesday November 28 2007, @06:57AM (#21503061)

        Sony has to cease distribution of the game. Which they already have done. Because of the way licenses work GPL gives you the choice of cease distribution or release the source.
        Given this isn't FSF code, there's a third way: contact the original author and negotiate a commercial licence to distribute the code. If this was going to be a problem I expect that's the cheapest solution.
        • Re:Get real... (Score:5, Insightful)

          by gEvil (beta) (945888) on Wednesday November 28 2007, @07:11AM (#21503137)
          Given this isn't FSF code, there's a third way: contact the original author and negotiate a commercial licence to distribute the code.

          Any chance that Sony may have done that in the first place and that this guy is making an issue where there isn't one?
          • Re:Get real... (Score:5, Insightful)

            by Dr. Evil (3501) on Wednesday November 28 2007, @10:29AM (#21504859)

            Any chance that Sony may have done that in the first place and that this guy is making an issue where there isn't one?

            HAHAHAHAHA

            Intellectual property laws don't apply to big corporations!, they only apply to the little guy.

            I think it's more likely that a developer is an idiot and Sony's going to take a "wait until we get a letter from a lawyer" attitude.

            • Re:Get real... (Score:5, Insightful)

              by Intron (870560) on Wednesday November 28 2007, @11:48AM (#21506111)
              Of course the law applies to big corporations. Sony will be able to sue this guy for violating their EULA by disassembling their game. You don't buy a game from a big company, you just buy a license to use it under their terms and conditions. See? All legal.
            • by Anonymous Coward on Wednesday November 28 2007, @10:04AM (#21504563)

              I hope not, I was looking forward to a good witchburning.
              You don't need a real issue to have a good witchburning. That's the great thing about it. All you need is a wild allegation and pack of frothing fanboys with pitchforks and you're good to go.
        • Re:Get real... (Score:5, Insightful)

          by Mr. Underbridge (666784) on Wednesday November 28 2007, @08:35AM (#21503637)
          Assuming the original author wrote the entire thing from scratch, true. But if he used any GNU material (or other GPL licensed libraries) himself, then you're right back where you started.
      • Re:Get real... (Score:5, Insightful)

        by PhilHibbs (4537) <snarks@gmail.com> on Wednesday November 28 2007, @07:08AM (#21503117) Homepage Journal
        Or you could not accept the GPL, and let the lawyers loose on the poor unsuspecting copyright holder that dares to take you to court. Sony are in the wrong, but it's unthinkable that a judge would order them to release the source to their entire game.
        • Re:Get real... (Score:5, Insightful)

          by gnasher719 (869701) on Wednesday November 28 2007, @08:06AM (#21503397)

          Or you could not accept the GPL, and let the lawyers loose on the poor unsuspecting copyright holder that dares to take you to court. Sony are in the wrong, but it's unthinkable that a judge would order them to release the source to their entire game.
          It is indeed unthinkable, because the GPL is not a contract. A judge would likely say that copyright infringement has happened. And that damages have to be paid. Now the plaintiff may offer that Sony could publish the source code under the GPL instead of paying damages. In that case it is completely up to Sony to accept the offer or not, but nobody can force them.

          The only reason why people have published source code in the past was because it was the cheaper solution. If I had one million lines of Linux code and 1000 lines of my own, I would likely publish the source code. If I had 1000 lines of GPL'd code and one million lines of my own, I might be more willing to pay damages.
    • Re: (Score:3, Informative)

      Exactly. Tag the story "notheydont" or "FUD". This is classic anti-GPL FUD.

      The result of breaking any license is that you have to stop breaking the license and pay compensation. You have the choice between removing the offending code, or start obeying the license. In this case Sony has no reason to not just remove it.
  • by eclectro (227083) on Wednesday November 28 2007, @05:22AM (#21502639)

    Sony could end up having to release the source code for the entire game!"
    Rather than go to the all the hassle with lawyers and all, why don't we mail a CD with a Sony rootkit to the Sony CEO and get the source code that way?
  • reverse-engineering (Score:4, Interesting)

    by TwistedSpring (594284) on Wednesday November 28 2007, @05:28AM (#21502651) Homepage
    Isn't reverse engineering with the tools used in this article disallowed by the license agreement for the game? I know little about law, so who has the trump card here?
    • Re: (Score:3, Insightful)

      Isn't reverse engineering with the tools used in this article disallowed by the license agreement for the game? I know little about law, so who has the trump card here?

      Probably yes. But if a criminal broke into your house and found a drug lab and then phoned the police about it you are sunk. You are confusing the law that stops the police from doing this (entrapment) with the non-existent law that stops normal people from doing this.

    • by Seahawk (70898) <tts@@@image...dk> on Wednesday November 28 2007, @06:27AM (#21502925) Homepage
      Well - in most sane countries reverse engineering is specifically allowed - no matter what the EULA's say. :)
      • Re: (Score:3, Interesting)

        I once saw a game crack that had a EULA that said, no one was ever allowed to run the software. I later got the opportunity to ask an EFF lawyer about that, and she said that the EULA would not protect you against copyright violation, and would likely just make any judge you faced annoyed. So, the EFF at least does not think that Sony would be in the right here. I know that the EFF are not judges, but since I actually asked an IP lawyer about this, I though I would relay what I was told.
      • by boaworm (180781) <boaworm@gmail.com> on Wednesday November 28 2007, @11:10AM (#21505527) Homepage Journal
        I found this a bit more interesting though: /* You can do whatever you like with this source file, though I would
              prefer that if you modify it and redistribute it that you include
              comments to that effect with your name and the date. Thank you. */

        After the standard GPL stuff, the guy writes this. IANAL, but this clearly sais you can do whatever you want with the code, without asking.

        So which one takes legal precedence, the standard GPL statement or his own personal addition to it.
  • by MichaelCrawford (610140) on Wednesday November 28 2007, @05:28AM (#21502653) Homepage Journal
    And I quote [gnu.org]:

    8. Termination.

    You may not propagate or modify a covered work except as expressly provided under this License. Any attempt otherwise to propagate or modify it is void, and will automatically terminate your rights under this License (including any patent licenses granted under the third paragraph of section 11).

    However, if you cease all violation of this License, then your license from a particular copyright holder is reinstated (a) provisionally, unless and until the copyright holder explicitly and finally terminates your license, and (b) permanently, if the copyright holder fails to notify you of the violation by some reasonable means prior to 60 days after the cessation.

    Moreover, your license from a particular copyright holder is reinstated permanently if the copyright holder notifies you of the violation by some reasonable means, this is the first time you have received notice of violation of this License (for any work) from that copyright holder, and you cure the violation prior to 30 days after your receipt of the notice.

    Termination of your rights under this section does not terminate the licenses of parties who have received copies or rights from you under this License. If your rights have been terminated and not permanently reinstated, you do not qualify to receive new licenses for the same material under section 10.

    What that means is that they have to stop shipping the game entirely.

    Now, the FSF, often acting on behalf of the copyright holders, have often allowed infringers to comply by releasing the source under the GPL. But I recall reading here at Slashdot recently that they are starting to play hardball with violators, and not allowing them to comply simply by shipping source. The copyright holder would be fully within his rights to get a permanent injunction against the sale of the game.

    • Re: (Score:3, Insightful)

      And, as our trusty friend Amazon.com tells us, the game has already been discontinued by the manufacturer.
      • Re: (Score:3, Interesting)

        This would imply that Sony has to do precisely squat. While I have no reasonable authority to hold forth on this, I do think it might still have a few repercussions.

        For one thing it could make the game legal to run on an emulator. The other I can think of is it might possibly allow people to tear apart their binaries. "Legal" reverse engineering requires a lot of rigmarole that may not be necessary here. That might still be a lot more trouble than it's worth. The game is pushing 6 years old after all.
  • by One Childish N00b (780549) on Wednesday November 28 2007, @05:32AM (#21502683) Homepage
    As numerous other posters have pointed out, this will not result in Sony having to release the source code for their game. The myth of the 'viral GPL' is already going strong enough without /. fuelling it by posting articles like this.

    Oh well, time to sit back and watch the trolls have a field day...
    • The myth of the 'viral GPL' is already going strong enough without /. fuelling it by posting articles like this.
      What's this "viral GPL myth"? I thought the GPL was viral (and proud of it). Is there some confusion out there?
      • by Eivind (15695) <eivindorama@gmail.com> on Wednesday November 28 2007, @07:38AM (#21503269) Homepage
        The point is, there is nothing in copyright-law that will force anyone, under any circumstances, to release code.

        If you do not comply with the GPL, it is revoked, which means you have no right to distribute the work. Which makes you guilty of violating copyright.

        You would be punished like any other copyright-violator: By fines, by being forced to stop distribution, by paying compensation to the copyrigth-holders.

        It may be that you are able to -avoid- these other punishments by reaching an *agreement* with the copyright-holder. Such an agreement is a private matter, it can contain backrubs, money, source-releases or the delivery of albino chimpanzes. But its up to you what agreement you enter into, if any.

        The FSF has a history of saying: "We will forgive your past transgressions if you release the code", that is an OFFER by them, not a property of copyright-law or the GPL. You're free to take the offer, or decide -not- to take the offer.
        • Re: (Score:3, Informative)

          That is close but not fully it

          This alleged infringement is not part of the myth. The myth goes like this "if you use any GPL type software to develop your code then you lose all rights to your code". The myth is wrong because it ignores the fact that a GPL complier does not make your code GPL and most libraries you would ever link about are LGPLed not GPLed and you don't have to release the code if you don't distribute etc etc. This Sony case would still be a copyright problem if the code was say copyright

    • by Eivind (15695) <eivindorama@gmail.com> on Wednesday November 28 2007, @07:43AM (#21503285) Homepage
      That's because people are horribly confused about even blindingly obvious simple cases of law. They are likely confused by the fact that the FSF has a history of saying, "We offer you forgiveness if you release the code" and people somehow think that it says somewhere (it doesn't) that "if you break copyright you have to release the code".

      Possibly the source of the confusion is that if you -did- release the code originally, you wouldn't have been in violation of the GPL, and thus not of copyright.

      ReleaseCode, no_violation = true
      violation, mustReleaseCode = false

      Indeed, unless you're made a spesific offer of forgiveness in exchange for releasing the code by the copyright-holder, releasing the code after being in violation doens't even HELP. You still broke copyright-law, you're still responsible for the damages arising therefrom.

      • The LGPL is a good license. BSD is a good license. GPLv2 is a maybe license, the GPLv3 is shit.

        Errrr.... no. They're all good licenses, with different goals behind them. Choose the one that's right for you. But don't criticize others because they happen to have different goals to you.

        Taking somebodies code and making is disappear sucks, but taking someones code and giving credit while using it in a closed app..I don't get why this is such a big deal?

        How about because the author doens't want that to happen? If you don't care about that, then BSDL or LGPL would seem to be good choices for you. Others do care, and hence the GPL is more appropriate for them.

        Let the market decide vs. forcing the GPL and it's uber linkage pawnage down everyones throat.

        No. Let the author decide. The author of any given bit of code is under no obligation to release it to the public at all. When they choose to do so, they get to release it on the terms they decide. For some that will be "take my code, do what you want with it", while for others it will be "take my code, but any changes you make to it have to be available to all". Different people have different views on it, and there are a range of licenses to choose from that cater for that. Simple, really...

  • by El_Muerte_TDS (592157) <elmuerte@drun k s n i p e r s . com> on Wednesday November 28 2007, @05:39AM (#21502719) Homepage
    1) release the code for ICO under a GPL compatible license (and thereby conforming to the GPL)
    2) license the library under different terms (might be difficult depending on the fact if all copyright holders agree to do this)
    3) violate copyright (and thereby enter the usual legal road for copyright violations)

    They don't have to release the code if they don't want to.
  • by DraconPern (521756) <.draconpern. .at. .hotmail.com.> on Wednesday November 28 2007, @05:40AM (#21502725) Homepage
    Arm chair lawyer alert! Slashdot, where programmers become legal vigilantes.
  • by renoX (11677) on Wednesday November 28 2007, @05:42AM (#21502735)
    Looking at libarc website http://libarc.sourceforge.net/ [sourceforge.net]: the license indicated here isn't the GPL..

    So either it's not the same libarc or its license has changed or the website is incorrect or the issue happen in some other file but not in libarc..
  • by mumblestheclown (569987) on Wednesday November 28 2007, @05:53AM (#21502795)
    If I were starting a business, I'd just go on and bright-line and outright abuse the GPL. I would go into business (such as PS2 games or whatever) where any "outrage" by the OSS community would go unnoticed and would simply ignore the empty threats of lawsuits and what-have-you. Heck, many companies are doing this already. it's a very legitimate and none too risky business strategy. For all its good philosophical points that would encourage good hearted individuals to contribute to my bottom line, I would benefit from the fact that enforcement of the GPL is ultimately toothless.

    Please, do go on and tell me how, exactly, I'm wrong in this.
  • by apankrat (314147) on Wednesday November 28 2007, @01:06PM (#21507333) Homepage
    libarc borrows heavily from zlib, which is .. surprise ! .. BSD licensed. There is however no mention of BSD in libarc, which effectively means that it is in violation of BSD license.

    Gotta love the ethics of the freedom fighters.
    • by MichaelCrawford (610140) on Wednesday November 28 2007, @05:30AM (#21502663) Homepage Journal
      The GNU Lesser General Public License (formerly the "Library" GPL) has the terms you describe, but the GNU General Public License (without the "Lesser") requires one to release full source if any covered libraries are used.

        • Re: (Score:3, Informative)

          You know, it was formerly called the Library GPL because it was used in things like glibc...
        • by tolan-b (230077) on Wednesday November 28 2007, @05:48AM (#21502763)
          No, because Glibc is licensed under the LGPL not the GPL.
        • by squiggleslash (241428) on Wednesday November 28 2007, @06:24AM (#21502915) Homepage Journal

          No. As the GP pointed out, there are two licenses, the LGPL and the GPL. GLIBC is licensed under the LGPL, therefore you don't have to release the source to your own C program, just any modifications you might have made to GLIBC. As for the library of libarc, erm, I'm not sure what's going on here but I can't see any evidence it's licensed under either the GPL or LGPL. From http://libarc.sourceforge.net/ [sourceforge.net]:

          License
          Copyright &#169; 2004 Basis Technology Corp.
          All Rights Reserved.

          Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met:

          * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer.

          * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution.

          * Neither the name of Basis Technology Corporation nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission.

          THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.

          Looks like a permissive free software license (*BSD, MIT) to me, not copyleft at all.

          • by DrYak (748999) on Wednesday November 28 2007, @09:18AM (#21504025) Homepage
            TFA points to a different libarc : http://www.onicos.com/staff/iz/release/libarc-2.0.2.tar.gz [onicos.com], not the sourceforge one.

            According to the few info available in english on the page [onicos.com], this libarc is used to open quite a lot of different archive format (could some Japanese-speaking /.er help here ?).
            Whereas, the sourceforge one [sourceforge.net], is mainly designed for a GZIPed ARC file used on the internet archive.

            And whereas the libarc you point out is licensed under some sort of permissive license,
            the Japanese libarc used by ICO is licensed under GPL. The file "inflate.c" is mentioned in TFA, and the following license/comments are cited :

            /*
            Copyright (C) 2000 Masanao Izumo

            This program is free software; you can redistribute it and/or modify
            it under the terms of the GNU General Public License as published by
            the Free Software Foundation; either version 2 of the License, or
            (at your option) any later version.

            This program is distributed in the hope that it will be useful,
            but WITHOUT ANY WARRANTY; without even the implied warranty of
            MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
            GNU General Public License for more details.

            You should have received a copy of the GNU General Public License
            along with this program; if not, write to the Free Software
            Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
            */ /* inflate.c -- Not copyrighted 1992 by Mark Adler
            version c10p1, 10 January 1993 */ /* You can do whatever you like with this source file, though I would
            prefer that if you modify it and redistribute it that you include
            comments to that effect with your name and the date. Thank you.
            [The history has been moved to the file ChangeLog.]
            */

            TFA's author then point out a couple of subtle difference all showing that it's this libarc's specific file which is used. (You can find similar "inflate.c" in a lot of decompression libraries. But libarc's has some specific memory subroutines, which can be traced in the disassembled code flow of the US version, or in the list of symbol names in the debug info included with the EU version).

            ---

            Now to go back to the possible outcomes :

            - The most easy is to stop distributing the infringing piece of work.
            Which as pointed out by the /. has already been done. This game isn't produced anymore.
            - An alternative is to publish the code, *NOT* of the whole game, as said by some /. er, only to the specific executable which contains the GPL code ("SCUS_971.13" according to TFA. The other few GB of data that are on the DVD are safe).
            - The third solution, which wasn't mentioned yet by /.ers (and which would require a little bit more work) would be to separate the functionality into a

    • by pmontra (738736) on Wednesday November 28 2007, @05:38AM (#21502713) Homepage
      I think you are confusing the GPL with the LGPL [wikipedia.org]. If a library is licensed under the GPL, the program that uses it is GPLed too. You have to link a library licensed under LGPL if you want to keep your software proprietary. That's exactly what the LGPL has been made for.
    • You clearly have no idea what you're talking about. The GPL is indeed viral and does require the full release
      of any source dependent or otherwise that is coupled with GPL code.

      That said finding the definition of derivative and derivative works on the FSF's GPL FAQ page is quiet
      interesting - they've gone to a lot of trouble hiding it towards the end, one would think such an
      important FAQ would be say the 1st or 2nd listing.
      • Re: (Score:3, Insightful)

        How do these libraries save time and money if you have to hire a lawyer first to see what you can actually do with it?

        You are the one who says they do that. Some of us use free software because it's the ethical thing to to. Some other people use it because of technical reasons.

        Aside from that, non-free software libraries also have legal issues, and if you wanted to be safe, you would have to hire a lawyer in every case, because you have to deal with redistribution issues, plus in some cases EULAs.
        In the case of the GPL you could hire a lawyer once (provided you don't understand the terms after actually reading them) and t

      • At no point can they be forced to release the sourcecode. The legal system just doesnt work that way.

        Assuming it is a GPL(not LGPL) library then yes, to legally distribute the game they have to release the source to all of it. But that doesnt mean that they have to retroactively comply to the license after they broke it, it just means that continuing to distribute it is illegal, and the software authors could sue for financial compensation.

        Whether or not its easier to just release the sourcecode (which they
    • Re:Where? (Score:5, Informative)

      by rjames13 (1178191) on Wednesday November 28 2007, @05:38AM (#21502711)

      I'm kind of confused where you get the idea that they could have to release all of their source code. It doesn't seem to mention that in the link at all, also its very doubtful that sony would do that regardless. I could be missing something though so if thats the cause I apologize.

      You are not missing something. Sony does not have to release the source code unless someone who owns a copy of the game ICO asks for that code. If Sony is infringing then that would need to be the scenario. If they do not want to do so then it would lead to a court case the results of which anyone would be guessing at this stage. And unless they do lose such a court case then no code gets released.

      Of course the big question in my mind is are they infringing? In order for them to be infringing they need to have compiled into their game some source code that is licensed under the GPL. It is not totally clear from the article that this is the case it just appears to be so at the moment.

    • Re:What is it? (Score:5, Informative)

      by RogueyWon (735973) * on Wednesday November 28 2007, @06:10AM (#21502863) Journal
      The game is an excellent (but now dated) adventure/puzzle game (with minor action elements), that was something of a sleeper hit in the early-ish days of the PS2, before its software library became the unstoppable juggernaut it eventually turned into.

      The basic concept of the game is that the player, who takes the role of a boy with horns, left in a mysterious castle as a sacrifice, must guide a mute girl around and eventually out of said castle, fighting against shadowy enemies and solving increasingly complicated puzzles. The game was notable for a number of reasons.

      First, it had a striking visual and aural style. Unlike many early PS2 games, it turned away from bright colours and fancy coloured lighting effects, adopting a colour scheme that verged on monochrome at times, with a heavy emphasis on contrasting light and dark areas. The music was distinctly minimalist, but fitted the game well enough that the soundtrack went on to sell well in its own right.

      The game-play was also notable. By contrast with the excess of button-mashing titles that dominated the PS2 scene at the time, Ico had a slower, more thoughtful pace. Combat elements were largely perfunctory - the real challenge was in defeating the puzzles posed by the game environment. In some respects, the gameplay had many parallels to that of the 3d Zelda games, although Ico placed higher degree of emphasis upon artistry than almost anything else around at the time on any platform. There was no enthusiastic voice-over urging you on to rack up big combo attacks, or to rush to the next objective before the bomb went off. Instead, the player experienced a mix of trepidation and a genuine sense of exploration as he made his way through the game world.

      Ico never became a huge seller and never got a huge mainstream following. Nevertheless, it's an important part of gaming history. It was the first game to really use the power of its console generation to deliver something other than fancy special effects. It set new standards for story-telling, that remain influential even today. It spawned a "spiritual successor", in the form of "Shadow of the Colossus" (released relatively late in the PS2's life-cycle), which took many of Ico's concepts and developed them further, with greater technical expertise, to deliver an experience which was simultanously substantially flawed and deeply engaging.

      So yes, we should care about Ico.
    • by The Evil Couch (621105) on Wednesday November 28 2007, @06:27AM (#21502927) Homepage
      why do I want the source code for a game I have never heard of?

      Because you're tired of playing Tux Racer and the other two GPLed games? :p
        • Re:GPL Violations (Score:5, Informative)

          by totally bogus dude (1040246) on Wednesday November 28 2007, @07:52AM (#21503317)

          Am i better off just writing all of my own code from scratch?

          If you intend to distribute your program to others, then yes, though you might want to investigate some other options first.

          • Write it all yourself. Pros: you can license it however the hell you want. Also, you'll understand how every bit of your program works in great detail. Cons: it takes longer, and you're probably not an expert at everything so some parts of the finished program might not be as good or well-tested as they could be if you used a library from someone else.
          • Use a commercial library. Pros: will probably be fine to distribute in binary form (but make sure you read the license for any library you're considering). Saves you time, and you probably get support from the author. Cons: costs money, may impose additional restrictions on what you can do (read the license carefully!)
          • Use GPL licensed code. Pros: you can see the code, others can see the code, if it's a project with even a moderate sized userbase it's likely to be high quality and well tested, and lots of people able to provide support for it. Cons: you have to release the code to your own program.
          • Use LGPL licensed code. Pros: same as for GPL code. Cons: you have to make it possible for people you distribute your program to to re-link your code with the LGPL library (e.g. newer version or one with bug fixes you can't be bothered shipping).
          • Use code under a more permissive license, e.g. BSD. Pros: same as for GPL code. Cons: not many. Normally they have an advertising/credit clause, but you're okay with that.

          If there's particular GPL code you want to use, you could consider contacting the author directly (assuming you can establish a particular copyright holder) and explain what you want to do and see if they're willing to grant you use of their code under a different license. This can be a bit thorny: if they've accepted contributions from other people who haven't explicitly signed their copyright over to them, then the author does not have a legal right to re-license other people's work.

          First though, I'd urge you to reconsider your aversion to the GPL. Chances are whatever you're doing isn't particularly unique and masterful, and you'll lose less than you'd think by making the code available.

          Another "sneaky" tactic would be to consider who you're distributing the binaries to. You don't have to provide the source with them, only an offer (good for 3 years) to do so. So, if the people you're giving your small project to aren't likely to be interested in the source, you could take that gamble. You don't have to provide the source to anyone you didn't distribute your software to (but be aware that if you put it on a public web site, anybody can download it, and that's distribution). Just be prepared for the possibility that someone will ask for it, and be prepared to hand it over with a smile.

          (IANAL, and this is not legal advice.)