install windows 64 bits
Modérateur : xcasadmin
install windows 64 bits
Deux etudiants m'ont montre un probleme d'install sur win 64 bits. A chaque fois, le chemin du repertoire d'install par defaut contenait Program Files (x86) et les chemins d'acces pour les fichiers runxcasfr.bat et runxcas.fr etaient incorrects, il manquait un slash. En editant avec le bloc note ces 2 fichiers et en ajoutant les / manquants on arrive a corriger le probleme. Mais j'ai beau regarder dans le script d'install xcas.nsi et dans le programme win2unix.cc de creation des fichiers batch et shell, je ne vois pas ou j'aurai oublie un / et comme je n'ai pas de machine 64 bits je ne peux rien tester. Du coup je soupconne un probleme du cote de nullsoft installer (qui genere l'installer a partir de xcas.nsi et appelle win2unix.cc avec en argument le nom du repertoire d'installation). Si quelqu'un a une machine windows 64 bits et a rencontre le probleme, peut-il nous en dire plus? Entre autres, il serait interessant de savoir si on peut choisir le chemin d'install par defaut c:\xcas.
Re: install windows 64 bits
Je peux confirmer le problème de chemins pour c:\Program Files (86).
En revanche, l'installateur me propose par defaut c:\xcas.
Et avec cet emplacement il n'y a bien évidement aucun souci de chemins.
Il parait que l'on peut choisir n'importe quel autre repertoire, par exemple
c:\xcas (86)
(avec un espace) et il n'y a pas de souci non plus.
Sans en savoir plus, j'aurais tendance à penser que l'installateur est hors cause au niveau des chemins mais qu'il pourrait y avoir un problème de gestion de droits d'ecriture dans c:\Program Files (86).
Par exemple, en tant que l'admin et le seul utilisateur de ma machine, je n'arrive pas, à modifier xcasfr.bat avec un editeur de texte. La fenetre de dialogue d'autorisation supplementaire ne se declenche pas et tout simplement la sauvegarde est refusee.
J'imagine donc qu'un probleme similaire empeche un script d'installateur de modifier correctement les fichiers de config/lancement.
En revanche, l'installateur me propose par defaut c:\xcas.
Et avec cet emplacement il n'y a bien évidement aucun souci de chemins.
Il parait que l'on peut choisir n'importe quel autre repertoire, par exemple
c:\xcas (86)
(avec un espace) et il n'y a pas de souci non plus.
Sans en savoir plus, j'aurais tendance à penser que l'installateur est hors cause au niveau des chemins mais qu'il pourrait y avoir un problème de gestion de droits d'ecriture dans c:\Program Files (86).
Par exemple, en tant que l'admin et le seul utilisateur de ma machine, je n'arrive pas, à modifier xcasfr.bat avec un editeur de texte. La fenetre de dialogue d'autorisation supplementaire ne se declenche pas et tout simplement la sauvegarde est refusee.
J'imagine donc qu'un probleme similaire empeche un script d'installateur de modifier correctement les fichiers de config/lancement.
Re: install windows 64 bits
Mise à jour : c'etait une fausse piste... (enfin, xcasfr est modifié).Alek a écrit : J'imagine donc qu'un probleme similaire empeche un script d'installateur de modifier correctement les fichiers de config/lancement.
Ce qui est mysterieux, c'est que ca marche bien avec
c:\mon dir\xcas
ou avec
c:\xcas (86)
mais ne marche pas avec
c:\mon dir (x86)\xcas
Cela indiquerait plutot un parseur de chemins.
A.
Re: install windows 64 bits
J'ai essaye de compiler sous unix win2unix.cc, puis
et
dans les 2 cas le fichier xcasfr.bat est correct
ou
Donc je soupconne que l'argument $INSTDIR passe par l'installer lors de l'appel a win2unix d'etre incorrect dans le 2eme cas. La commande dans xcas.nsi est la suivante
Peut-etre que quelqu'un qui connait bien windows peut comprendre pourquoi la chaine du chemin generee pourrait etre bonne dans le 1er cas et pas dans le 2eme (en quoi les parentheses peuvent-elle jouer?). Faut-il mettre des guillemets autour du 2eme $INSTDIR?
En attendant on peut conseiller de toujours choisir le chemin c:\xcas.
Code : Tout sélectionner
./a.out "c:\mon dir\xcas"
Code : Tout sélectionner
./a.out "c:\mon (dir)\xcas"
Code : Tout sélectionner
set PATH=c:\mon dir\xcas;%PATH%
bash.exe '/cygdrive/c/mon dir/xcas/runxcas.fr' %1
Code : Tout sélectionner
set PATH=c:\mon (dir)\xcas;%PATH%
bash.exe '/cygdrive/c/mon (dir)/xcas/runxcas.fr' %1
Code : Tout sélectionner
Exec '"$INSTDIR\win2unix.exe" $INSTDIR'
En attendant on peut conseiller de toujours choisir le chemin c:\xcas.
Re: install windows 64 bits
J'ai joue un peu avec win2unix.exe. Concretement,
win2exe c:\abcd (x86)\xcas
reproduit le problème or
win2exe "c:\abcd (x86)\xcas"
donne les chemins corrects.
Peut-etre alors mettre des guillemets autour de $INSTDIR dans xcas.nsi resout le probleme?
J'aurais envie de dire que les parentheses font partie de la syntaxe DOS (groupe de commandes etc.) et apparemment elles sont quelque part interpretees par le shell avant de passer pour un argument de win2unix. Mais quelques exemples de plus (que je ne cite plus) et je comprends vite que je ne comprends plus rien. En esperant que ca marche...
A.
win2exe c:\abcd (x86)\xcas
reproduit le problème or
win2exe "c:\abcd (x86)\xcas"
donne les chemins corrects.
Peut-etre alors mettre des guillemets autour de $INSTDIR dans xcas.nsi resout le probleme?
J'aurais envie de dire que les parentheses font partie de la syntaxe DOS (groupe de commandes etc.) et apparemment elles sont quelque part interpretees par le shell avant de passer pour un argument de win2unix. Mais quelques exemples de plus (que je ne cite plus) et je comprends vite que je ne comprends plus rien. En esperant que ca marche...
A.
Re: install windows 64 bits
j'ai fait le changement pour xcasunst.exe, est-ce que ca marche?
Re: install windows 64 bits
Ca a l'air de marcher !
En fait, je viens de le tester sous XP, mais c'était le même comportement et la nouvelle version s'installe sans problème. Je verrai encore ce soir sous win7 (mais si je dis rien, c'est que ça marche).
A.
En fait, je viens de le tester sous XP, mais c'était le même comportement et la nouvelle version s'installe sans problème. Je verrai encore ce soir sous win7 (mais si je dis rien, c'est que ça marche).
A.