[FLASH-BUGS] bug_executing_setup

Christopher Daley cdaley at flash.uchicago.edu
Mon Feb 6 10:40:29 CST 2012


Apologies.  It seems my attachment got removed.  I show the patch
inline and also at
http://flash.uchicago.edu/~cdaley/FLASH3.3_patches/fix_symbolic_link_bug/fix_broken_link_to_makefile.diff

Chris

Index: bin/libUtils.py
===================================================================
--- bin/libUtils.py	(revision 15809)
+++ bin/libUtils.py	(revision 15810)
@@ -216,7 +216,13 @@
       os.chdir(libDir)
       # Link/Copy current Makefile.h so library is built using
       # the same compiler and options as the FLASH code
-     if os.path.isfile("Makefile.h"): os.remove("Makefile.h")
+     if os.path.isfile("Makefile.h") or os.path.islink("Makefile.h"):
+        #We call islink in case we have a broken symlink to a site 
Makefile.h.
+        #A broken symlink can happen when a user copies a FLASH 
installation
+        #to another machine where they have a different unix username. 
  It can
+        #also happen when a user removes the original object directory.
+        os.remove("Makefile.h")
+
       if GVars.portable:
          shutil.copy2(makefilename,"Makefile.h")
       else:


On 02/06/2012 10:34 AM, Christopher Daley wrote:
> Hi Kai,
>
> I think this is a problem which we fixed recently.
>
> 1). you can try upgrading to FLASH4-beta release (which incorporates a
> fix for this problem - I think it is the same problem).
> 2). or continue using FLASH3.3 and apply the attached patch.
> 3). or continue using FLASH3.3 and manually delete the Makefile.h from
> the lib directory.
>
> Option (1) would be my preference.
>
>
> r15810 | cdaley | 2012-01-21 16:16:20 -0600 (Sat, 21 Jan 2012) | 18 lines
> Changed paths:
> M /trunk/bin/libUtils.py
>
> Fix a library bug which happens when the library directory contains a
> broken symbolic link to a Makefile.h. This error has been reported by
> several users on the FLASH mailing list over the past few years - we
> could not reproduce the error until now and so never fixed the bug.
>
> The checked in code removes the broken symbolic link allowing the
> subsequent os.symlink call to succeed. The original error was:
>
> A setup internal error has occured, if possible please email the following
> debugging info to flash-bugs at flash.uchicago.edu
> Arguments: ['/home/cdaley/flash/trunk/trunk/bin/setup.py', 'Cellular',
> '-auto']
> Python Version: 2.6.6
> Platform Details: linux2
> Traceback (most recent call last):
> File "/home/cdaley/flash/trunk/trunk/bin/setup.py", line 262, in <module>
> raise e
> OSError: [Errno 17] File exists
>
> Chris
>
>
> On 02/06/2012 10:02 AM, Kai Marquardt wrote:
>> Dear Sir or Madam,
>>
>> executing setup I got the following error message:
>>
>> A setup internal error has occured, if possible please email the
>> following
>> debugging info to flash-bugs at flash.uchicago.edu
>> Arguments: ['/scratch/local/Flash/FLASH3.3/bin/setup.py', '-auto',
>> '-2d', 'Cellular']
>> Python Version: 2.6.6
>> Platform Details: linux2
>> Traceback (most recent call last):
>> File "/scratch/local/Flash/FLASH3.3/bin/setup.py", line 238, in
>> <module>
>> main()
>> File "/scratch/local/Flash/FLASH3.3/bin/setup.py", line 173, in main
>> generateMakefile(configInfo, machDir)
>> File "/scratch/local/Flash/FLASH3.3/bin/genFiles.py", line 471, in
>> generateMakefile
>> configInfo['libConfigInfo'])
>> File "/scratch/local/Flash/FLASH3.3/bin/genFiles.py", line 579, in
>> setRedirectFlags
>> args=args, makefilename=makefilename)
>> File "/scratch/local/Flash/FLASH3.3/bin/libUtils.py", line 140, in
>> getLibFlags
>> self.makeBinary(libDir,base,makefilename)
>> File "/scratch/local/Flash/FLASH3.3/bin/libUtils.py", line 223, in
>> makeBinary
>> os.symlink(makefilename,"Makefile.h")
>> OSError: [Errno 17] File exists
>>
>>
>> Can you help me to solve the Problem?
>>
>> Yours sincerely,
>> Kai Marquardt
>>
>



More information about the flash-bugs mailing list