[Bug 19912] New: gyp fails its test suite, can't build hello, world with Visual C++ 8's devenv.exe

wine-bugs at winehq.org wine-bugs at winehq.org
Wed Sep 2 00:47:28 CDT 2009


http://bugs.winehq.org/show_bug.cgi?id=19912

           Summary: gyp fails its test suite, can't build hello, world
                    with Visual C++ 8's devenv.exe
           Product: Wine
           Version: 1.1.28
          Platform: PC
               URL: http://code.google.com/p/gyp/wiki/GypTesting
        OS/Version: Linux
            Status: NEW
          Keywords: download
          Severity: normal
          Priority: P2
         Component: -unknown
        AssignedTo: wine-bugs at winehq.org
        ReportedBy: dank at kegel.com


gyp is the makefile generator written for Chromium.
(It's kind of like cmake, but is pure python.)
It comes with a small test that makes sure it
can build a working trivial C program using Visual C++.
Sadly, this fails at the moment.

Here's what I tried:

$ cd ~/.wine/drive_c
$ svn checkout http://gyp.googlecode.com/svn/trunk/ gyp-read-only
$ wget http://winezeug.googlecode.com/svn/trunk/winetricks
$ sh winetricks vc2005trial
$ sh winetricks python
$ wine cmd 
> cd \Program*
> cd Microsoft*8  
> cd Common7\Tools
> vsvars32.bat 
> cd c:\gyp-read-only
> c:\python26\python gyptest.py test\hello\gyptest-all.py

This failed at first with 
 File not found
because Python wasn't on the path; worked around this with
 PATH C:\Python26;%PATH%

Rerunning 
> c:\python26\python gyptest.py test\hello\gyptest-all.py

then failed with something more interesting:

  File "C:\gyp-read-only\pylib\gyp\generator\msvs.py", line 538, in
_GenerateProject
    vcuser_filename = '.'.join([vcproj_filename, domain, username, 'user'])
TypeError: sequence item 1: expected string, NoneType found

Looking at the code, here's what's failing:

    domain = os.environ.get('USERDOMAIN')
    username = os.environ.get('USERNAME')
    if not domain or not username:
      call = subprocess.Popen(['net', 'config', 'Workstation'],
                                stdout=subprocess.PIPE)
      config = call.communicate()[0]
      username_re = re.compile('^User name\s+(\S+)', re.MULTILINE)
      username_match = username_re.search(config)
      if username_match:
        username = username_match.group(1)
      domain_re = re.compile('^Logon domain\s+(\S+)', re.MULTILINE)
      domain_match = domain_re.search(config)
      if domain_match:
        domain = domain_match.group(1)

So I guess our "net" implementation is lacking.  Worked around this
with
  SET USERNAME=dank
  SET USERDOMAIN=kegel.com

That got a bit further:

> python.exe test\hello\gyptest-all.py

produced lines like this (duplicate-ish lines removed):

fixme:ole:CoInitializeSecurity (0x33f948,-1,(nil),(nil),0,0,(nil),8,(nil)) -
stub!
err:ole:TLB_ReadTypeLib Loading of typelib L"C:\\Programme\\Microsoft Visual
Studio 8\\Common7\\IDE\\dte80a.olb" failed with error
2
err:ole:CoGetClassObject class {48443b3b-c1e3-449f-9988-4bfb510951d5} not
registered
err:ole:CoGetClassObject no class object {5a673b91-a6dc-431d-8758-a53aa4189057}
could be created for context 0x17
err:ole:CoGetClassObject no class object {2a811bb2-303b-48b8-82c2-e029a22c3ef2}
could be created for context 0x17
fixme:shell:URL_ParseUrl failed to parse L"Microsoft.VisualStudio.CommonIDE"
...
err:ole:CoInitializeEx Attempt to change threading model of this apartment from
apartment threaded to multi-threaded
fixme:ole:CoGetCallerTID stub!
fixme:advapi:LookupAccountNameW (null) L"lappy\\dank" 0xa0adb58 0xa0adac4
0x8e5bf8 0xa0adabc 0xa0adcf8 - stub
fixme:ntdll:NtCreateJobObject stub: 0xa0ae408 1f001f <null>
fixme:ntdll:NtIsProcessInJob stub: (nil) 0xffffffff
fixme:ntdll:NtAssignProcessToJobObject stub: 0xdead 0x378

and then just sat there.

(Kinda reminds me of http://bugs.winehq.org/show_bug.cgi?id=17096#c2 )

-- 
Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email
Do not reply to this email, post in Bugzilla using the
above URL to reply.
------- You are receiving this mail because: -------
You are watching all bug changes.



More information about the wine-bugs mailing list