winGlobus/pyGlobus saga

Robert Olson olson at mcs.anl.gov
Mon Mar 10 15:23:52 CST 2003


My rebuilding pyGlobus from the bob-zipfile saga, mostly for Justin and Ti.

WinProjects\SourceSolution\DebugLib\All_Libs.sln
Clean project, build project

WinProjects\SourceSolution\DebugThreadedLib\All_Libs.sln
Clean project, build project

C:\temp\newwing>cd pyGlobus

C:\temp\newwing\pyGlobus>set 
GLOBUS_LOCATION=c:\temp\newwing\WinGlobus2.0_Alpha3


C:\temp\newwing\pyGlobus>python setup.py build
Checking for which modules to build
Run c:\temp\newwing\WinGlobus2.0_Alpha3\bin\globus-makefile-header.py 
-flavor=gc
c32dbgpthr globus_common

...

globus_common_win32dbgthr.lib(globus_common.obj) : error LNK2001: 
unresolved ext
ernal symbol ___security_cookie
globus_common_win32dbgthr.lib(globus_libc.obj) : error LNK2001: unresolved 
exter
nal symbol ___security_cookie
globus_common_win32dbgthr.lib(globus_thread_common.obj) : error LNK2001: 
unresol
ved external symbol ___security_cookie
globus_common_win32dbgthr.lib(globus_print.obj) : error LNK2001: unresolved 
exte
rnal symbol ___security_cookie
globus_common_win32dbgthr.lib(globus_common.obj) : error LNK2001: 
unresolved ext
ernal symbol @__security_check_cookie at 4
globus_common_win32dbgthr.lib(globus_libc.obj) : error LNK2001: unresolved 
exter
nal symbol @__security_check_cookie at 4
globus_common_win32dbgthr.lib(globus_thread_common.obj) : error LNK2001: 
unresol
ved external symbol @__security_check_cookie at 4
globus_common_win32dbgthr.lib(globus_print.obj) : error LNK2001: unresolved 
exte


then I remembered that my stystem has VS 6.0 and VS.net installed, and that 
the python distutils don't pick that up properly. So I edited 
\Python22\lib\distutils\msvccompiler.py added the last line below, at line 209:

     def __init__ (self,
                   verbose=0,
                   dry_run=0,
                   force=0):

         CCompiler.__init__ (self, verbose, dry_run, force)
         versions = get_devstudio_versions ()

         versions = ["7.0"]

Then I got this, which is the problem with the project files that I thought 
I'd fixed in the zip:

    Creating library build\temp.win32-2.2\Release\ftpClientc.lib and object 
build
\temp.win32-2.2\Release\ftpClientc.exp
globus_gssapi.lib(acquire_cred.obj) : error LNK2001: unresolved external symbol
_globus_i_gsi_gssapi_module
globus_gridftp_control_win32dbgthr.lib(globus_ftp_control.obj) : error LNK2001:
unresolved external symbol _globus_i_gsi_gssapi_module
globus_gss_assist.lib(globus_gss_assist_module.obj) : error LNK2001: unresolved
external symbol _globus_i_gsi_gssapi_module
globus_gssapi.lib(init_sec_context.obj) : error LNK2019: unresolved 
external sym
bol _globus_i_gsi_gssapi_module referenced in function _gss_init_sec_context at 52
globus_gssapi.lib(accept_sec_context.obj) : error LNK2001: unresolved 
external s
ymbol _globus_i_gsi_gssapi_module
globus_gssapi.lib(init_sec_context.obj) : error LNK2001: unresolved 
external sym
bol _once_control
globus_gssapi.lib(accept_sec_context.obj) : error LNK2001: unresolved 
external s
ymbol _once_control
globus_gssapi.lib(acquire_cred.obj) : error LNK2001: unresolved external symbol
_once_control
build\lib.win32-2.2\pyGlobus\ftpClientc.pyd : fatal error LNK1120: 2 unresolved
externals
error: command '"C:\Program Files\Microsoft Visual Studio 
.NET\VC7\BIN\link.exe"
' failed with exit status 1120

Next, I deleted the contents of the /lib dir in the winglobus tree, as I 
think I had some old state there. In doing that I deleted the openssl 
libraries that I now remember building. I built those from the openssl0.9.6 
version taht was the latest at the time. I had built these again last week, 
static linked so we didn't have to worry about DLLs, from version 0.9.6i. I 
copied libeay32.lib and ssleay32.lib into the winglobus lib dir as well.

I did a rebuild solution on both the nonthreaded and threaded lib solutions.

At this point the pyGlobus build succeeded; apparently the .lib files from 
the zip file were incorrect and also not getting rebuilt properly.

C:\temp\newwing\pyGlobus>set 
PYTHONPATH=c:\temp\newwing\pyGlobus\build\lib.win32
-2.2

C:\temp\newwing\pyGlobus>cd \temp

C:\temp>python
Python 2.2.2 (#37, Oct 14 2002, 17:02:34) [MSC 32 bit (Intel)] on win32
Type "help", "copyright", "credits" or "license" for more information.
 >>> import sys
 >>> sys.path
['', 'c:\\temp\\newwing\\pyGlobus\\build\\lib.win32-2.2', 
'C:\\Python22\\lib\\si
te-packages\\Pythonwin', 'C:\\Python22\\lib\\site-packages\\win32', 
'C:\\Python2
2\\lib\\site-packages\\win32\\lib', 'C:\\Python22\\lib\\site-packages', 
'c:\\pyt
hon22\\DLLs', 'c:\\python22\\lib', 'c:\\python22\\lib\\lib-tk', 'c:\\python22']
 >>> import pyGlobus.io
 >>




More information about the ag-dev mailing list