[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [libcvd-members] windows project file changes

From: Georg Klein
Subject: Re: [libcvd-members] windows project file changes
Date: Sat, 25 Jul 2009 18:59:04 +0100

Windows users don't like compiling code. The most useful way to do this for a large audience would be to provide precompiled versions of all the below in a convenient .zip file. This could for example be automatically provided by a build machine - which would also flag up when commits break stuff on windows (which I'm guessing happens quite often!)

On 23 Jul 2009, at 19:39, Gerhard Reitmayr wrote:

my question was about something else(sort of)... I think Georg's question side tracked the discussion...

the issue is not so much how to compile libcvd, its more how to compile other programs that need access to headers and libs from:

so, its more about putting some infrastructure in place to make life easier for other stuff. yes, using configure could do that for our libs but I guess the solution I worked out in the project files and a simple batch script was easier than making configure work.

for other programs that never used configure, its not really an option.

yes, generating project files is possible, others do it. still it doesn't change my suggestion, because you also need to generate the mechanisms to copy the stuff to an install location unless you want to work mixed (jump between VC to compile and cmd line to install).

so anyway, I have a reasonable working solution (as described) and wanted to know, if there are any objections against checking it in ?


On 23 Jul 2009, at 20:16, E. Rosten wrote:

On Thu, 23 Jul 2009, Gerhard Reitmayr wrote:

I don't know. I think Ed used it with mingw ?

I use mingw, but that uses GNU make. I strongly suspect you could get away with GNU make from MinGW, and the visual studio compiler. Of course, the CXXFLAGS would need changing.

Or, one could have a simplified makefile, which would work.

Much of the complexity of the makefile is to allow it to be autoconfigured, for doing make install, making .sos or .dylibs on different systems, doing debug builds and so on. If one was to use the current approach of dropping support for configuration , then a simple makefile would work very well.

not really an option for me. very VC heavy environment and I would actually give up the one good thing, the IDE.

but, maybe something like cmake is a possible solution?

There's a bunch of problems which need solving. As far as I can tell, cmake will solve much of what the configure script and makefile currently do (ie testing for installed software and so on). I have no idea how to do the configure time dependency resolution which I hacked in a while back.

Sounds like a lot or work, though.

Also, I seem to remember that cmake creates recursive makefiles under unix. If this is the case, then it is evil and nasty, and will make the building process under unix somewhat less pleasant, and considerably slower on heavily multicore systems. I may be mistaken, though.

Getting in to wilder territory... the visual studio project files appear to be a quite simple XML format. It would probably be quite straightforward to generate one automatically from the configure script. That would remove almost all of the maintainance.

Also, I believe that it is possible to run a configure script with visual studio as the compiler. Apparently one needs a wrapper script to mangle GCC commandline arguments in to visual studio ones, but this does exist. One could also hack the configure script to not be too addicted to - instead of /. That way, one could get by with a mix of mingw/cygwin and visual studio.


On 23 Jul 2009, at 17:45, Georg Klein wrote:

Does cvd compile with the free command line only tools?
using a makefile?
On 23 Jul 2009, at 15:17, Gerhard Reitmayr <address@hidden> wrote:
Hi everyone,
just a quick heads-up on what I plan to do with the Windows project files. Its getting tedious to keep all the include and lib paths correct in lots of project files, so I propose to do the following: - do a unix style install into three directories for headers, libs and bins (which include the shared libraries, dlls under windows) - these three directories are set by the user with three environment variables: INCLUDEDIR, LIBDIR, BINDIR . of course they can be set from a single common prefix like this:
- project files will only use a single include dir (besides the local one) and libdir - projects will also have an install project which copies the files into the installation location defined above. - some 3rd party libraries (like jpeg, ptheads-win32) can be copied by the user into these directories to make them available.
what do you think ? any thoughts about this ?
Gerhard Reitmayr
MIL, Engineering Department, Cambridge University
libcvd-members mailing list

Gerhard Reitmayr
MIL, Engineering Department, Cambridge University

libcvd-members mailing list

(You can't go wrong with psycho-rats.)( ~er258)

/d{def}def/f{/Times s selectfont}d/s{11}d/r{roll}d f 2/m{moveto}d -1
r 230 350 m 0 1 179{ 1 index show 88 rotate 4 mul 0 rmoveto}for/s 12
  d f pop 235 420 translate 0 0 moveto 1 2 scale show showpage

Gerhard Reitmayr
MIL, Engineering Department, Cambridge University

libcvd-members mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]