Path: csiph.com!v102.xanadu-bbs.net!xanadu-bbs.net!news.mixmin.net!rt.uk.eu.org!newsfeed.xs4all.nl!newsfeed1.news.xs4all.nl!xs4all!newsgate.cistron.nl!newsgate.news.xs4all.nl!post.news.xs4all.nl!not-for-mail Return-Path: X-Original-To: python-list@python.org Delivered-To: python-list@mail.python.org X-Spam-Status: OK 0.009 X-Spam-Evidence: '*H*': 0.98; '*S*': 0.00; '16,': 0.03; 'subject:Python': 0.06; '64-bit': 0.07; '32-bit': 0.09; 'windows,': 0.09; 'python': 0.11; 'windows': 0.15; '64-bit,': 0.16; 'command,': 0.16; 'subject:default': 0.16; 'subject:install': 0.16; 'subject:non': 0.16; 'prevent': 0.16; 'sender:addr:gmail.com': 0.17; 'wrote:': 0.18; 'wed,': 0.18; 'skip:% 10': 0.24; "i've": 0.25; 'defined': 0.27; 'header:In- Reply-To:1': 0.27; 'skip:p 30': 0.29; 'am,': 0.29; "doesn't": 0.30; 'message-id:@mail.gmail.com': 0.30; '(which': 0.31; 'quotes': 0.31; 'could': 0.34; 'something': 0.35; 'point.': 0.35; 'but': 0.35; 'received:google.com': 0.35; 'subject:?': 0.36; 'similar': 0.36; 'thank': 0.38; 'easiest': 0.38; 'to:addr:python- list': 0.38; 'files': 0.38; 'issue': 0.38; 'sure': 0.39; 'to:addr:python.org': 0.39; 'either': 0.39; 'skip:p 20': 0.39; "you're": 0.61; 'name': 0.63; 'skip:6 10': 0.63; 'jul': 0.74; 'glad': 0.83; 'or:': 0.84; 'ware': 0.91 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:from:date:message-id :subject:to:content-type; bh=FbyB66xy0zGZCiNiKjLmkIBrGKWgMdZoRhQSYRuVrXc=; b=ZyGqBEYJ1mgVd/aEnBU72wNCVaus8PNHL6JEGMffwWbiyYBfiUu7yrldoVtUz+xkkN qAiQfld/7NJx0F1HBxVTdY5ppE6qIWEVGWnnqNAs6UBkIej3xlHsHp3++/2hHxdvl41/ ZqD0MDu4tXGiQasNqq95U6MO9FlFI62lDaaPH4rG6p3OlZ/DPdnUyKF8GBJOU8mHbK+l 7TgPL4lxZb1gc0vqY1v2kZtfErdeTFg7GYsvg97HO/RGux5i+VK7wJR+Syl3iN/E2/Vg jnrAPEWAXfrYmi5iAok1GOq1kIqJg8m2aUvRMbTQgNdvNsZS9cZ5FSzQeff5/rcMEHFT 50SQ== X-Received: by 10.60.52.115 with SMTP id s19mr18431329oeo.21.1405529154456; Wed, 16 Jul 2014 09:45:54 -0700 (PDT) MIME-Version: 1.0 Sender: zachary.ware@gmail.com In-Reply-To: <1405521180.31678.YahooMailNeo@web163802.mail.gq1.yahoo.com> References: <1405517362.434.YahooMailNeo@web163802.mail.gq1.yahoo.com> <1405521180.31678.YahooMailNeo@web163802.mail.gq1.yahoo.com> From: Zachary Ware Date: Wed, 16 Jul 2014 11:45:34 -0500 X-Google-Sender-Auth: I7nD1QN3HNgxf1eMwhKoN6oZArY Subject: Re: how to msi install Python to non-default target dir? To: Python Content-Type: text/plain; charset=UTF-8 X-BeenThere: python-list@python.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: General discussion list for the Python programming language List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Newsgroups: comp.lang.python Message-ID: Lines: 40 NNTP-Posting-Host: 2001:888:2000:d::a6 X-Trace: 1405529580 news.xs4all.nl 2900 [2001:888:2000:d::a6]:39003 X-Complaints-To: abuse@xs4all.nl Xref: csiph.com comp.lang.python:74570 On Wed, Jul 16, 2014 at 9:33 AM, Albert-Jan Roskam wrote: > From: Zachary Ware >> Also, 'set' doesn't require quotes >> around a value with spaces, and you're also quoting %PYTHONDIR% when >> you use it in the msiexec command, so you're actually double-quoting >> the dir name (which could also be the issue). > > That was it, thank you!! Glad I could help :) >> And, not necessarily an >> issue that would prevent installing, but you may want to make sure >> you're in the correctly-bitted Program Files directory if you're on >> 64-bit Windows (%PROGRAMFILES% for 64-bit, %PROGRAMFILES(x86)% for >> 32-bit; %PROGRAMFILES(x86)% will not be defined on 32-bit Windows or >> in a 32-bit process on 64-bit Windows). > > Good point. The easiest solution would be to write one .bat for 32bit and one for 64bit. You could also do something like (untested, but I've used similar in the Doc/make.bat script): if DEFINED ProgramFiles(x86) set 64bitext=.amd64 set PYTHONDIR=%ProgramFiles%\Python27 set PYTHONMSI=python-2.7.3%64bitext%.msi msiexec /i %PYTHONMSI% TARGETDIR="%PYTHONDIR%" /qb That's for 64-bit Python on 64-bit Windows, 32-bit Python on 32-bit Windows. Or: if DEFINED ProgramFiles(x86) set PgrmFls=%ProgramFiles(x86)% if NOT DEFINED ProgramFiles(x86) set PgrmFls=%ProgramFiles% set PYTHONDIR=%PgrmFls%\Python27 msiexec /i python-2.7.3.msi TARGETDIR="%PYTHONDIR%" /qb for 32-bit Python on either platform. -- Zach