Building VCMI undre Linux

I’m trying to compile programmingChallenge branch on my virtual machine with pclos. Very messy but I figured out which files need to be corrected (and that, for example, ‘.’ in configure command must be replaced by pwd :-/ ). Unfortunately I can’t get rid of “cannot find the library `/usr/lib/libdirectfb.la’” message.

Works for me. I just did “./configure” and then “make”. What did you do ?

Well, my setup is a bit messy but I basically do autoreconf -i, ./configure and make… anyway, I have some problems with these commands: they’re not sufficient if you have wrong name of directory with vcmi sources. I had to do find . -name “.deps” -exec rm -rf {} ; to get rid of (one of) my problems.

Linux makes me miserable :frowning:

It seems you copied that new branch from the main one without using svn for that. I can do a checkout wherever I want, and configure+make will work. There’s no hardcoded paths in them.

Actually what I did was:

  1. mounting host OS directory to vcmi_root/vcmi_host
  2. trying to build vcmi (autoreconf -i, configure, make)
  3. unmounting vcmi_host and deleting it (some build files remained in vcmi_root)
  4. mounting host OS directory to vcmi
  5. step 2 again
  6. fail of make

Anyway, it’s not a problem; I don’t know what to do with libdirectfb. It’s obviously installed but I cannot link against it.

BTW,
is anything except */Makefile.am and configure.ac needed for autoconf?

well let use those hack:
copy libdirectftb to vcmi custom libs directory under name it seeks
doing that you hack over the find because you copy in one of places where it seeks

The .la file are text files that contains the real name of the library you want to link against (both the .so shared lib and the .a static). May be it’s one of them that’s missing.

So, what can I do if my default package repository provides a package libdirectfb-devel, but it lacks that file? I tried reinstalling the package.

Usually they come in pairs: libdirectfb-devel contains the headers and other files necessary to compile, and libdirectfb contains the library itself.
I don’t the distrib you’re using (LinuxOS I guess), so I can’t really tell.

I’m using newest PCLinuxOS (KDE version). I have those two packages installed. Version 1.4.2-7pclos2010 (latest).

EDIT: Fixed by reinstalling the non-devel directfb package. Very Windows-like method of fixing things.

ah thats *.la
i thought it may be some similair to *.lo, *.o, or *.lib
so sorry for messing about