View Issue Details

IDProjectCategoryView StatusLast Update
0000541Other Unix PortBugpublic2020-08-24 03:11
Reporterkomh Assigned Topsmedley  
PriorityimmediateSeverityblockReproducibilityalways
Status closedResolutionwon't fix 
Summary0000541: python v2.6.5 fails when building SeaMonkey from comm-release
DescriptionHi/2.

I'm trying to compile SeaMonkey, but when compiling mozalloc.dll, python failed to remove a file.

The following is the part of the build log.

-----
make.exe -C memory/mozalloc libs
make.exe[5]: Entering directory `F:/lang/work/mozilla/comm-release/obj-i386-pc-os2-emx/mozilla/memory/mozalloc'
rm -f mozalloc.dll
f:/lang/python26/python.exe F:/lang/work/mozilla/comm-release/mozilla/config/pythonpath.py -I../../config F:/lang/work/mozilla/comm-release/mozilla/config/expandlibs_exec.py --uselist -- g++ -fno-rtti -pedantic -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -Wno-long-long -fno-exceptions -fno-strict-aliasing -Zomf -pipe -DNDEBUG -DTRIMMED -g -fno-inline -O2 -fomit-frame-pointer -Zdll -Zhigh-mem -o mozalloc.dll mozalloc.o mozalloc_abort.o mozalloc_oom.o -Zmap -Zhigh-mem -s -Zlinker /EXEPACK:2 -Zlinker /PACKCODE -Zlinker /PACKDATA -Zhigh-mem F:/lang/work/mozilla/comm-release/obj-i386-pc-os2-emx/mozilla/dist/lib/mozglue.lib mozalloc.def
Traceback (most recent call last):
  File "F:/lang/work/mozilla/comm-release/mozilla/config/pythonpath.py", line 52, in <module>
    main(sys.argv[1:])
  File "F:/lang/work/mozilla/comm-release/mozilla/config/pythonpath.py", line 44, in main
    execfile(script, frozenglobals)
  File "F:/lang/work/mozilla/comm-release/mozilla/config/expandlibs_exec.py", line 180, in <module>
    main()
  File "F:/lang/work/mozilla/comm-release/mozilla/config/expandlibs_exec.py", line 168, in main
    args.makelist()
  File "F:/lang/work/mozilla/comm-release/mozilla/config/expandlibs_exec.py", line 122, in makelist
    os.remove(tmp)
OSError: [Errno 13] Permission denied: 'F:/lang/work/mozilla/comm-release/obj-i386-pc-os2-emx/mozilla/memory/mozalloc/tmpxhcfle.list'
make.exe[5]: *** [mozalloc.dll] Error 1
make.exe[5]: Leaving directory `F:/lang/work/mozilla/comm-release/obj-i386-pc-os2-emx/mozilla/memory/mozalloc'
-----
TagsNo tags attached.

Activities

psmedley

2012-06-01 02:26

administrator   ~0002287

is Python 2.6.x a must or can 2.7.x be used?

I don't have a strong desire to resurrect a 2.6.x build

I'll wager the file is still open so can't be removed

komh

2012-06-07 10:47

reporter   ~0002290

2.7.x can be used.

But it does not have hg.

So I should use 2.6.5.

And, IIRC, 2.7.x had a problem when I tried to upgrade from 2.6.5.

Due to this, I decided to use 2.6.5 still.

If hg is provided for 2.7.x, I willing to use 2.7.x to test this problem.

psmedley

2012-06-08 09:54

administrator   ~0002291

Try http://smedley.id.au/hg-1.6.3-os2-20120108.zip for hg compatible with python 2.7

komh

2012-06-09 09:20

reporter   ~0002301

Thanks,

but the same problem still exists.

komh

2012-06-10 14:20

reporter   ~0002306

I've found the cause.

The logic is the following.

-----
fd, tmp = tempfile.mkstemp(...)
os.remove(tmp)
-----

mkstemp() return a file handle opened by os.open().
So, calling os.remove(tmp) without closing it causes an error.
Inserting os.close(fd) between those lines, solved the problem.

I know, this is a cross-platform code. So I'm not sure this is a OS-specific behavior or a implementation-specific behavior.

psmedley

2012-06-11 00:35

administrator   ~0002309

The above code in from mozilla?

psmedley

2012-06-11 00:42

administrator   ~0002310

I don't see anything obvious in the python code for this.

Lib\tempfile.py has some code for cygwin and os2 that assumes temp files can't be removed without being closed....

komh

2012-06-11 13:00

reporter   ~0002314

Yes, it's from mozilla.

And thanks for your confirmation.

Issue History

Date Modified Username Field Change
2012-05-31 06:57 komh New Issue
2012-06-01 02:26 psmedley Note Added: 0002287
2012-06-07 10:47 komh Note Added: 0002290
2012-06-08 09:54 psmedley Note Added: 0002291
2012-06-09 09:20 komh Note Added: 0002301
2012-06-10 14:20 komh Note Added: 0002306
2012-06-11 00:35 psmedley Note Added: 0002309
2012-06-11 00:42 psmedley Note Added: 0002310
2012-06-11 13:00 komh Note Added: 0002314
2013-10-11 11:06 psmedley Status new => resolved
2013-10-11 11:06 psmedley Resolution open => won't fix
2013-10-11 11:06 psmedley Assigned To => psmedley
2020-08-24 03:11 psmedley Status resolved => closed