Community
Participate
Working Groups
Build Identifier: Eclipse IDE for C/C++ Developers, Version: Helios Service Release 1, Build id: 20100917-0705, with PTP 4.0.3 I have created a new Fortran static library project then imported a Fortran code that contains about 250 files. I have determined that during the Make process, not the actual compile step, I get an error of "Too many open files". I have determined the number of opened files by "while true; do lsof | grep java | wc -l; done". From more experienced personnel who use Eclipse, this error does not occur with a C/C++ project of even larger size. Error Window ------------ Problems occurred building the selected resources. Errors running builder 'CDT Builder' on project 'X'. Could not write file: /home/.../workspace/X/Debug/makefile. /home/.../workspace/X/Debug/makefile (Too many open files) Terminal Window --------------- !ENTRY org.eclipse.core.filesystem 4 271 2011-01-19 08:34:10.867 !MESSAGE Could not read file: /home/.../workspace/X/Debug/src/subdir.mk. !STACK 0 java.io.FileNotFoundException: /home/.../workspace/X/Debug/src/subdir.mk (Too many open files) at java.io.FileInputStream.open(Native Method) at java.io.FileInputStream.<init>(Unknown Source) at org.eclipse.core.internal.filesystem.local.LocalFile.openInputStream(LocalFile.java:362) at org.eclipse.core.filesystem.provider.FileStore.copyFile(FileStore.java:217) at org.eclipse.core.filesystem.provider.FileStore.copy(FileStore.java:140) at org.eclipse.core.internal.filesystem.local.LocalFile.copy(LocalFile.java:111) at org.eclipse.core.internal.localstore.BlobStore.addBlob(BlobStore.java:57) at org.eclipse.core.internal.localstore.HistoryStore2.addState(HistoryStore2.java:92) at org.eclipse.core.internal.localstore.FileSystemResourceManager.write(FileSystemResourceManager.java:996) at org.eclipse.core.internal.resources.File.internalSetContents(File.java:325) at org.eclipse.core.internal.resources.File.setContents(File.java:364) at org.eclipse.core.internal.resources.File.setContents(File.java:468) at org.eclipse.cdt.internal.core.model.Util.save(Util.java:154) at org.eclipse.cdt.managedbuilder.makegen.gnu.GnuMakefileGenerator.populateFragmentMakefile(GnuMakefileGenerator.java:980) at org.eclipse.cdt.managedbuilder.makegen.gnu.GnuMakefileGenerator.regenerateMakefiles(GnuMakefileGenerator.java:894) at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performMakefileGeneration(CommonBuilder.java:1455) at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.performPrebuildGeneration(CommonBuilder.java:1322) at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:787) at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:552) at org.eclipse.cdt.managedbuilder.internal.core.CommonBuilder.build(CommonBuilder.java:498) at org.eclipse.core.internal.events.BuildManager$2.run(BuildManager.java:629) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:172) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:203) at org.eclipse.core.internal.events.BuildManager$1.run(BuildManager.java:255) at org.eclipse.core.runtime.SafeRunner.run(SafeRunner.java:42) at org.eclipse.core.internal.events.BuildManager.basicBuild(BuildManager.java:258) at org.eclipse.core.internal.events.BuildManager.basicBuildLoop(BuildManager.java:311) at org.eclipse.core.internal.events.BuildManager.build(BuildManager.java:343) at org.eclipse.core.internal.events.AutoBuildJob.doBuild(AutoBuildJob.java:144) at org.eclipse.core.internal.events.AutoBuildJob.run(AutoBuildJob.java:242) at org.eclipse.core.internal.jobs.Worker.run(Worker.java:54) Reproducible: Always Steps to Reproduce: 1. Select -> Project -> Build Project 2. 3.
Thanks for the bug report. It looks like the managed make dependency calculator was failing to close files after reading them. The fix will be in Photran 7.0/Indigo (to be released in June); unfortunately, I'm too late to get it into Helios SR2. ===== Fix in org.eclipse.photran.managedbuilder.core.makegen.DefaultFortranDependencyCalculator rev 1.7