[Pidgin] #13671: Building installer fails due to MakeNSIS parameter misinterpretation as script filename?

Pidgin trac at pidgin.im
Tue Apr 5 06:59:16 EDT 2011


#13671: Building installer fails due to MakeNSIS parameter misinterpretation as
script filename?
-------------------------------------------------------------------+--------
 Reporter:  jasmine.aura                                           |     Owner:  rekkanoryo
     Type:  defect                                                 |    Status:  new       
Component:  unclassified                                           |   Version:  2.7.11    
 Keywords:  Installer Build MakeNSIS parameters script MinGW MSYS  |  
-------------------------------------------------------------------+--------
 Followed [http://developer.pidgin.im/wiki/BuildingWinPidgin
 BuildingWinPidgin].

 Installed MinGW/MSYS using latest graphical installer (
 [http://sourceforge.net/projects/mingw/files/Automated%20MinGW%20Installer
 /mingw-get-inst/mingw-get-inst-20110316/mingw-get-
 inst-20110316.exe/download mingw-get-inst-20110316.exe] ) per the
 [http://www.mingw.org/wiki/Getting_Started Getting Started] guide, and
 updated the wiki page to add a note on "Perl 5.10" to avoid conflicts with
 the msys-perl-bin (5.6) bundled with mingw-develper-toolkit.

 Managed to build pidgin after a problem that has been previously reported;
 #12563, per my [http://developer.pidgin.im/ticket/12563#comment:8
  comment:8] reconfirming user-submitted workaround.

 Now when trying to build just the online installer as the wiki instructs:

 {{{
 make -f Makefile.mingw installer
 }}}

 If fails at makensis.

 {{{
 makensis.exe /V3 /DPIDGIN_VERSION="2.7.11"
 /DPIDGIN_PRODUCT_VERSION="2.7.11.99"
 /DPIDGIN_INSTALL_DIR="./pidgin-2.7.11-wi
 n32bin" /DGTK_INSTALL_VERSION="2.16.6.0" pidgin/win32/nsis/pidgin-
 installer.nsi
 MakeNSIS v2.46 - Copyright 1995-2009 Contributors
 See the file COPYING for license details.
 Credits can be found in the Users Manual.

 Processing config:
 Processing plugin dlls: "c:\Program Files\NSIS\Plugins\*.dll"
  - AdvSplash::show
  - Banner::destroy
  - Banner::getWindow
  - Banner::show
  - BgImage::AddImage
  - BgImage::AddText
  - BgImage::Clear
  - BgImage::Destroy
  - BgImage::Redraw
  - BgImage::SetBg
  - BgImage::SetReturn
  - BgImage::Sound
  - Dialer::AttemptConnect
  - Dialer::AutodialHangup
  - Dialer::AutodialOnline
  - Dialer::AutodialUnattended
  - Dialer::GetConnectedState
  - InstallOptions::dialog
  - InstallOptions::initDialog
  - InstallOptions::show
  - LangDLL::LangDialog
  - Math::Script
  - NSISdl::download
  - NSISdl::download_quiet
  - Splash::show
  - StartMenu::Init
  - StartMenu::Select
  - StartMenu::Show
  - System::Alloc
  - System::Call
  - System::Copy
  - System::Free
  - System::Get
  - System::Int64Op
  - System::Store
  - TypeLib::GetLibVersion
  - TypeLib::Register
  - TypeLib::UnRegister
  - UserInfo::GetAccountType
  - UserInfo::GetName
  - UserInfo::GetOriginalAccountType
  - VPatch::GetFileCRC32
  - VPatch::GetFileMD5
  - VPatch::vpatchfile
  - nsDialogs::Create
  - nsDialogs::CreateControl
  - nsDialogs::CreateItem
  - nsDialogs::CreateTimer
  - nsDialogs::GetUserData
  - nsDialogs::KillTimer
  - nsDialogs::OnBack
  - nsDialogs::OnChange
  - nsDialogs::OnClick
  - nsDialogs::OnNotify
  - nsDialogs::SelectFileDialog
  - nsDialogs::SelectFolderDialog
  - nsDialogs::SetRTL
  - nsDialogs::SetUserData
  - nsDialogs::Show
  - nsExec::Exec
  - nsExec::ExecToLog
  - nsExec::ExecToStack
  - nsisunz::Unzip
  - nsisunz::UnzipToLog
  - nsisunz::UnzipToStack
  - nsisunz::extract_RunDLL

 !define: "MUI_INSERT_NSISCONF"=""

 Can't open script "C:/MinGW/msys/1.0/V3"
 make: *** [installer] Error 1
 }}}

 Apparently there's a problem somewhere between MinGW/MSYS and
 makensis.exe, as the first parameter "/V3" is interpreted as a filename,
 and so translated to "C:/MinGW/msys/1.0/V3"

 This is MakeNSIS v2.46 (latest NSIS as of date)

 I googled quite a bit for a workaround solution, but to no avail.

 An [http://www.abisource.com/mailinglists/abiword-dev/2003/Sep/0274.html
 ancient thread (2003)] suggests MinGW needing double slashes for the
 command-line options, but that this would break cygwin/msvc builds.

 Another old thread (2007) from nullsoft forum:

 [http://forums.winamp.com/archive/index.php/t-269002.html changed command
 line behaviour for makensisw in v.2.25?]

 And 2 related bug reports:

 [http://sourceforge.net/tracker/index.php?func=detail&aid=1696534&group_id=22049&atid=373085
 Broken Parameter Handling for Makensisw.exe v.2.3 - ID: 1696534]

 [http://sourceforge.net/tracker/index.php?func=detail&aid=1796053&group_id=22049&atid=373085
 Command-line parsing error - ID: 1796053]

 both suggest that this problem was fixed in NSIS 2.3

 Any ideas why this still happens here? MinGW bug perhaps?

-- 
Ticket URL: <http://developer.pidgin.im/ticket/13671>
Pidgin <http://pidgin.im>
Pidgin


More information about the Tracker mailing list