Results 1 to 3 of 3

Thread: Compiling as opposed to prebuilt

  1. #1

    Default Compiling as opposed to prebuilt

    I may sound rather insane, but I've found the CL compiling process for VC10 extremely difficult. First of all, I compiled the dependencies in the form of DLLs so that if one gets updated, I needn't rebuild the whole enchilada, save for a few (libjpeg, freetype mystify the process of DLL creation for VC users). I also like to supply the latest version of dependencies for general bug fixes.

    However, the current method of compiling leaves me to rely on prebuilt static dependencies, some of them slightly outdated, as well as forcing me to use a static C++ runtime -- The MSVC runtime redistribution is pretty much only 3 DLLs totaling under 3 MB at minimum I believe.

    As much as advocating for something like CMake build files to ease the process, ClanLib looks rather big and I'm but a novice with CMake.

    Sorry if I seem like a nitpick. CL seems like my dream toolkit, but the only major criticism I have to give it is lack of customizable compilation. I still very much want to use it despite this, but taking my suggestion into account would really ease the frustration of setting it up.

  2. #2
    ClanLib Developer
    Join Date
    Sep 2006
    Location
    Denmark
    Posts
    554

    Default

    I haven't tried to build it with visual studio 2010, so I don't know if there is something special about that version that makes it more complicated. But for VS2008 compiling clanlib is fairly simple (install the directx sdk, run configure, make sure include paths are correct, hit build).

    It is true that building the 3 dependency libraries (zlib, libpng and libjpeg) can be rather painful and the only way to solve this part would be to include them in the ClanLib build process. Still, compared to many other libraries out there I consider ClanLib fairly simple to build.

    ClanLib favors static libraries over DLLs for two reasons. Originally it was because the single threaded C runtime was the default in Visual Studio and we chose the static multithreaded since you then only needed one .exe for your program to run. The single threaded runtime has since then been removed and Microsoft chose to make the DLL runtime the default instead.

    Later on in VS2005 Microsoft got the "great" idea to make the DLL runtime part of the side-by-side assembly system and that made it significantly more complicated to successfully deploy. I hear that VS2010 reversed this decision so that the msvcrt DLLs can now just be copied next to your executable again.

    Anyhow this doesn't mean our current build process is perfect and we appreciate any input you can give that may improve it. It could be argued that the DLL runtime version of ClanLib should be made the default build and download simply to ease things for new developers (the less changes they must make to their projects, the less things may go wrong). If the SxS dependency is gone in VS2010 I'm personally in favor of that solution.

  3. #3
    ClanLib Developer
    Join Date
    May 2007
    Posts
    1,824

    Default

    Compiling ClanLib with VisualStudio 2010 is easy, although not as easy as VisualStudio 2008. But that may be because i'm more used to using VisualStudio 2008.

    See - http://clanlib.org/wiki/CompilingCla...thVisualStudio

    All of ClanLib dependancies should be up to date. I last updated the packages on the 6th October 2010.

    See - http://clanlib.org/wiki/ExternalLibraries

    You can download the individual package source code from that page. All the packages have a standardised build system (our own project file, compiling the unmodified package source code)

Similar Threads

  1. Compiling with MinGW
    By kitmor in forum Official ClanLib SDK Forums
    Replies: 12
    Last Post: 01-23-2011, 04:17 AM
  2. Compiling Novashell for Mac
    By Jam in forum Novashell Game Creation System
    Replies: 3
    Last Post: 08-30-2010, 03:43 PM
  3. Compiling CL in VS 2008
    By ViolentOne in forum Official ClanLib SDK Forums
    Replies: 6
    Last Post: 08-16-2009, 03:32 PM
  4. Compiling on Mac OS X
    By moople in forum Official ClanLib SDK Forums
    Replies: 3
    Last Post: 06-23-2009, 07:03 AM
  5. Compiling
    By SushiBox in forum Novashell Game Creation System
    Replies: 2
    Last Post: 11-27-2008, 02:41 AM

Bookmarks

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
  •