DrQueue and Windows

This is a [screenshot:23 screenshot] of a running Windows setup. (Just in case you won't believe it. ;) )

*UPDATE: if you are looking for Windows binaries, they are almost ready. Stay tuned !.*

*Please, check the information found on [/files/win32/READ.THE.DOCUMENTATION.BEFORE.DOWNLOADING.THIS.txt this text file]*

We are working on a full featured Windows slave, your feedback is really important.

If you find any bug, please report it. We probably don't know about it as our development tests are done on those operating systems (it is compiled on Windows thanks to Cygwin but development is done under Linux and MacOS X).

Notes about the binaries

If you download the installer available as binary (version 0.63.2) please note that some of the bugs have already been solved, some others have not.

It is now (Aug 30, 2006) around 9 months old. Just be advised.

Recommended procedure is to build from sources. It is only the first time that you could find it long and complex (installing dependencies, cygwin, gtk...) but once you've done that, you will only need new sources.

Documents (HowTo's)

These documents have been written by Blender users. But they provide very good and useful information for any other renderer, as the steps are the same, with the only difference of the script you will use. Listed in BlenderWindows.

Importan Information

The windows version of DrQueue only needs the ipc services to be running before the execution of any of the daemons/clients.

If you happen to see any slave process or master process before you have started them, you should terminate them. That also applies to the master.

That seems to have been the cause of "-f" (meaning "--force") flag to be present in all tutorials and documents people have written. That flag is not needed by default, and both the slave and master shared memory could be corrupted at run time if you use it. Only use that flag when after having checked that no other slave/master process is running you still get an error message stating that it could be useful.

Also the configuration file is not necessary, and could cause some errors in some circumstances that won't appear if you don't use it.

So, if possible, set your environment variables properly instead (read this to know more about them).

Most basic environment setup should include the following:

  • DRQUEUE_MASTER : with a resolvable hostname or IP address of the master computer.
  • DRQUEUE_ROOT: that is the base path to guess all the rest (for example: if you don't set DRQUEUE_LOGS it will be guessed to be $DRQUEUE_BASE/logs)
  • Any other variable that won't fit with previous guesses. For example, if you have all files in "Z:\drqueue" except for binaries, that are located at "C:\DrQueue\bin" you would "set DRQUEUE_ROOT=Z:\drqueue" and then "set DRQUEUE_BIN=C:\DrQueue\bin".

If you are getting any error message after some drqueue tool has read the config file and printed it's values, with no other further info avoiding the config files by using the environment will probably solve it.

Some known problems that might show up

The most common problem is the "tcsh -b" that needs to be added at the beginning of the command entry in drqman. Making it look like (without the quotes): "tcsh -b /path/to/script/you/already/had" (instead of simply "/path/to/script/you/already/had"). *

Also the tray icons do not work. Do not use them.

You might find path related problems due to the fact that under Windows the character "/" is regurlarly used instead of "\" for paths and filenames. Also, if you change that character remember that the "\" could be interpreted as the escape character, escaping next character on the string. That will depend on where that string is interpreted. In case it is interpreted as the escape character (check if the next character after the backslash appears on the output) you'll probably have to write two of them "\\" for it to be valid (that is 'escaping the escape character' so it won't be interpreted). Single or double quotes around the file name or path might also solve that problem.

Another common path related problem (related with the previous) is that many Windows paths include the "space" character. Those spaces depending on where they will be used, could need to be scaped (like "this path" converted to "this\ path") or quoted around with double-quotes or single quotes (shells usually don't substitute variables typed inside single quotes).

So instead of: /my documents/my renders/ you could need to type "/my documents/my renders/", or "Z:\\my\ documents\\my\ renders\\", or even "Z:/my documents/my renders/".

If you're getting error about files not being found, consider those hints.

It is highly advised to not use spaces or other special punctuation or symbols on filenames, paths, arguments, or any other variable that could be used for generating one of the previous. For example, the job name will be used when creating the job's log directory. But there are many others. As rule of thumb, do not use them.

But again, we are working on solutions to handle also that in a convenient way. So it is posible to use them already in some places.

other Windows problems you might find

After the initial Windows port by Vincent Dedun there have been many changes and updates.

That means that some parts might not work properly on Windows because:

  • further development has been done. Causing most Windows specific bugs to go unnoticed.
  • the Windows port was not complete and it was only tested with some rendering engines. There were glitches on several parts (the tray icons didn't work afaik, and some others).

Most of those problems have workarounds detailed in the documentation or links you'll find here. Windows users have found hacks and workarounds to make it fit their needs.

In any case, even if you find a workaround, report the bugs you find.



The original file wrote by Vincent for compiling DrQueue under windows can be found [source:trunk/README.windows here].