waf install does not work on windows

Bug #687887 reported by Bugs-valaide on 2009-10-30
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
valide
Medium
Unassigned
Packages
Undecided
Unassigned

Bug Description

Operating system: Windows XP SP3
Vala version: 0.7.7
Valide version (or svn revision): 0.6.0

What steps will reproduce the problem?
1. waf configure --prefix=c:/
2. waf
3. waf install

What is the expected output? What do you see instead?

The files should be installed to c:/bin, c:/lib and so on. Instead some
files are installed into ./_build_/../lib and ./_build_/../share

Waf: Entering directory `C:\build\valide\_build_'
* installing _build_\default\plugins\completion\completion.dll as
..\lib\valide\plugins\completion\completion.dll
* installing _build_\default\plugins\todo\todo.dll as
..\lib\valide\plugins\todo\todo.dll
* installing pixmaps\icone.xcf as ..\share\pixmaps\valide\icone.xcf
* installing pixmaps\icone-16.xpm as ..\share\pixmaps\valide\icone-16.xpm
* installing pixmaps\icone-32.xpm as ..\share\pixmaps\valide\icone-32.xpm
* installing pixmaps\icone-48.xpm as ..\share\pixmaps\valide\icone-48.xpm
* installing pixmaps\icone-64.xpm as ..\share\pixmaps\valide\icone-64.xpm
* installing pixmaps\logo.png as ..\share\pixmaps\valide\logo.png

Please provide any additional information below.

If I start valide it cannot find its pixmaps and template files, so I
cannot create projects. At exit, it crashes (probably because it tries to
free the pixmap resources it hasn't acquired).

Nicolas Joseph (gege2061) wrote :

Hello,

First, valide doesn't compile with vala 0.7.7. A bug
(https://bugzilla.gnome.org/show_bug.cgi?id=597331) make a segfault, used vala 0.7.6.

Seconds, for installation on Windows, instead of waf install, you should use the nsi
script in the package/win32 directory.

Bugs-valaide (bugs-valaide) wrote :

Thanks for your answer.

Valide was compiled successfully with valac 0.7.7. When moving the share and lib
directories to the right place it works flawlessly (as far as I can tell).

Could you perhaps mention the package\win32 issue in the Readme? How do I use it?

Nicolas Joseph (gege2061) wrote :

> Could you perhaps mention the package\win32 issue in the Readme? How do I use it?

Done!

Bugs-valaide (bugs-valaide) wrote :

Thanks again. One minor thing: it seems neither fileassoc.nsh nor EnvVarUpdate.nsh is
part of the NSIS Installer (v2.45).

Also, the NSIS script seems to assume a lot about how my system is set up and cannot
find a whole bunch of files. Would it be possible to generate the NSIS script using waf?

Or have you ever looked at CMake? It is very mature, fast, supports various
development environments and OSes, and can generate zip, tar.gz, rpm, deb packages
and windows installers (using NSIS). The KDE project chose CMake to be the build
system of choice after considering SCons and waf.

Nicolas Joseph (gege2061) wrote :

> Thanks again. One minor thing: it seems neither fileassoc.nsh nor EnvVarUpdate.nsh
> is part of the NSIS Installer (v2.45).

No, that's why I've copied the files in the package/ directory.

> Also, the NSIS script seems to assume a lot about how my system is set up and
> cannot find a whole bunch of files. Would it be possible to generate the NSIS
> script using waf?

It's possible, but how to know the dependencies installation path?

> Or have you ever looked at CMake?

I did a quick overview of the different systems, but only waf supports vala and
offers the clear syntax of python.

Bugs-valaide (bugs-valaide) wrote :

> No, that's why I've copied the files in the package/ directory.

Yes, but in the README you instruct users to copy these files from the NSIS installer
whereas it isn't part of that installer and is already provided by valide sources itself.

> It's possible, but how to know the dependencies installation path?

Doesn't waf provide some functionality to find these out? Using pkg-config for instance?

> I did a quick overview of the different systems, but only waf supports vala and
> offers the clear syntax of python.

CMake is fairly easy to extend. IMHO, waf isn't mature just yet. Usually you just get
some incomprehensible, 20+ lines stacktrace pointing to a 'string' as the source of
the problem in case of an error.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.