On Sat, Jan 19, 2013 at 11:01 AM, Andres Mejia <amejia...@gmail.com> wrote: > On Sat, Jan 19, 2013 at 4:59 AM, Reinhard Tartler <siret...@gmail.com> wrote: >> On Sat, Jan 19, 2013 at 7:13 AM, Sean Yiu <sean...@gmail.com> wrote: >>> Hi >>> >>> I hope not to have to go thru the clang conversion and many steps to have >>> libav work with Visual Studio 2010 (to be able to run source code debugger >>> into the libav code). Not being an expert at builds, I would probably make >>> mistakes and spend many hours in trial and error. >> >> This question is better addresed at libav-user. I'll respond anyways >> because I think that there is something that can still be discussed on >> the -devel list. >> >> I have found http://msdn.microsoft.com/en-us/library/bb165951(v=vs.80).aspx >> as description what an sln file actually is. Are there better >> ressources? Are there free software tools that help with creating >> them? > > All you really need to know is that these solution (*.sln) files are > ordinary text files that Visual Studio uses to describe certain > aspects about the "solution." They describe things like what > "projects" belong to the solution and what release types are available > (debug, release, etc.). The "projects" themselves are each described > with their own *proj files. In libav's case, being a C project, these > project files would be *.vcxproj files. These are what actually > describe what binaries or libraries to build, what sources and headers > are needed, what dependencies are required, and so forth. These > *.vcxproj files are ordinary text files as well and resemble standard > XML files. > > In libav's case, adding Visual Studio support could consist of > multiple project files for each library and binary built, all tied to > a single solution file. These files can be kept directly under version > control. They pose no licensing problems if you want to distribute > them along with libav. If you want to generate these solution or > project files, then you would just need a way to create text files, > which libav's build system can already do. > >>> Is there a prepackaged libav build I can download which is already converted >>> with .sln ? >> >> no >> >>> It could be slightly outdated libav code. I could update it from latest >>> libav git after having the Visual Studio working. I think this method might >>> be useful to others as well. >> >> You can find windows libav binaries at >> http://win32.libav.org/releases/. They do not contain a .sln file, >> because the libav sources need to be configured before you can start >> compiling them. This configuration process checks the available >> libraries on your system (e.g., libav provides various wrappers such >> as libx264, libvpx and many more that get activated if they are found >> in the system), and also allows you to enable/disable functionality >> such as encoders/decoders (e.g., allowing you to create a very >> specialized build that can decode only certain files, etc). Note that >> the selected configuration may also impact your rights to distribute >> the build products! > > It is certainly possible to allow configuring a Visual Studio project > to create different builds. > >> (we should probably put something along those lines at >> http://libav.org/faq.html) >> >> I guess that it would be possible to make our configure script to >> create a suitable .sln file. Does anyone know what it would take to >> implement this? > > See above. It would help to first use Visual Studio to create these > solution and project files, study them, and then modify libav's build > system to generate these files. However, if I were involved in libav, > I would opt for keeping these solution and project files directly > under version control instead. > >> >> -- >> regards, >> Reinhard >> _______________________________________________ >> libav-devel mailing list >> libav-devel@libav.org >> https://lists.libav.org/mailman/listinfo/libav-devel > > > > -- > ~ Andres
One more thing, I think it would be worthwhile if libav could find it's way into NuGet [1]. NuGet is to .NET as Maven is to Java, CPAN is to Perl, and PyPI is to Python. I see FFMpeg is already in there, though I haven't checked how recent those NuGet distributables of FFMpeg are. 1. http://nuget.codeplex.com -- ~ Andres _______________________________________________ libav-devel mailing list libav-devel@libav.org https://lists.libav.org/mailman/listinfo/libav-devel