2010-06-10 7 views
0

J'ai un constructeur de commande en tant que tel:scons + Windows: ne peut pas exécuter le script shell dans le constructeur de commande()

jsontar = Commande ("bundle.tar", bundleDir, "mkvgconf $ SOURCE $ TARGET")

mkvgconf est un script shell $ SOURCE est un chemin vers un répertoire $ TARGET est un chemin vers un fichier

Lors d'une tentative d'exécution sous windows, SCons ne reconnaît pas vgmkconf comme un exécutable.

Google se présente: http://www.scons.org/wiki/UsingPkgConfigMsysShellScripts

En utilisant ce script, je suis capable de faire un mkvgconf.cmd que SCons reconnaît et tente d'exécuter. Malheureusement, SCons transmet $ SOURCE et $ TARGET en tant que chaînes de chemins UNIX, pas de chaînes Windows. Les chaînes de chemin sont mal interprétées et la construction échoue.

Question 1: Comment faire SCons reconnaître mon script shell sans le kludge?

Questions 2: Si la question 1 n'a pas de solution, comment est-ce que je rends mes noms de chemin d'accès correctement formatés pour la plate-forme de construction?

Répondre

0

Vous pouvez utiliser cygwin pour exécuter le script bash, en remplaçant mkvgconf $SOURCE $TARGET avec:

C:\cygwin\bin\bash.exe -c "mkvgconf $SOURCE $TARGET" 
Questions connexes