Description of problem: nunit fails to build with the following error message: /usr/lib/mono/4.5/Microsoft.Common.targets: error : Tool exited with code: 1. Output: Error: Exception has been thrown by the target of an invocation. Inner exception: A null reference or invalid value was found [GDI+ status: InvalidParameter] Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "TestTree.resx,obj/Debug/NUnit.UiKit.TestTree.resources" Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "TextOutputSettingsPage.resx,obj/Debug/NUnit.UiKit.TextOutputSettingsPage.resources" Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "TipWindow.resx,obj/Debug/CP.Windows.Forms.TipWindow.resources" Tool /usr/lib/mono/4.5/resgen.exe execution started with arguments: /useSourcePath /compile "TreeBasedSettingsDialog.resx,obj/Debug/NUnit.UiKit.TreeBasedSettingsDialog.resources" /usr/lib/mono/4.5/Microsoft.Common.targets: error : Tool exited with code: 1. Output: Error: Exception has been thrown by the target of an invocation. Inner exception: A null reference or invalid value was found [GDI+ status: InvalidParameter] Task "GenerateResource" execution -- FAILED Done building target "GenerateResources" in project "/builddir/build/BUILD/nunitv2-2.6.4/src/GuiComponents/UiKit/nunit.uikit.dll.csproj".-- FAILED Done building project "/builddir/build/BUILD/nunitv2-2.6.4/src/GuiComponents/UiKit/nunit.uikit.dll.csproj".-- FAILED Task "MSBuild" execution -- FAILED Done building target "ResolveProjectReferences" in project "/builddir/build/BUILD/nunitv2-2.6.4/src/GuiRunner/nunit-gui/nunit-gui.csproj".-- FAILED Done building project "/builddir/build/BUILD/nunitv2-2.6.4/src/GuiRunner/nunit-gui/nunit-gui.csproj".-- FAILED Build FAILED. Errors: /builddir/build/BUILD/nunitv2-2.6.4/src/GuiRunner/nunit-gui/nunit-gui.csproj (default targets) -> /usr/lib/mono/4.5/Microsoft.Common.targets (ResolveProjectReferences target) -> /builddir/build/BUILD/nunitv2-2.6.4/src/GuiComponents/UiKit/nunit.uikit.dll.csproj (default targets) -> /usr/lib/mono/4.5/Microsoft.Common.targets (GenerateResources target) -> /usr/lib/mono/4.5/Microsoft.Common.targets: error : Tool exited with code: 1. Output: Error: Exception has been thrown by the target of an invocation. Inner exception: A null reference or invalid value was found [GDI+ status: InvalidParameter] /usr/lib/mono/4.5/Microsoft.Common.targets: error : Tool exited with code: 1. Output: Error: Exception has been thrown by the target of an invocation. Inner exception: A null reference or invalid value was found [GDI+ status: InvalidParameter] 0 Warning(s) 2 Error(s) Time Elapsed 00:00:07.7548090 RPM build errors: error: Bad exit status from /var/tmp/rpm-tmp.qjZa6L (%build) Version-Release number of selected component (if applicable): 2.6.4-9 How reproducible: ppc-koji build nonunit on ppc64le
Note that nunit blocks nant. nant blocks log4net. And log4net blocks smuxi [1]. [1] https://bugzilla.redhat.com/show_bug.cgi?id=1185763
I think these are the commands to reproduce it outside of the whole build: cd /builddir/build/BUILD/nunitv2-2.6.4/src/GuiComponents/UiKit mkdir -p obj/Debug mono /usr/lib/mono/4.5/resgen.exe /useSourcePath /compile "TestSuiteTreeView.resx,obj/Debug/NUnit.UiKit.TestSuiteTreeView.resources" note that other resx files with format Microsoft ResX Schema Version 1.3 seem to work fine, eg https://github.com/nunit/nunitv2/blob/master/src/GuiComponents/UiKit/ConfigurationEditor.resx This resx only has an icon. But this is the failing resx file: https://github.com/nunit/nunitv2/blob/master/src/GuiComponents/UiKit/TestSuiteTreeView.resx Microsoft ResX Schema Version 2.0 and it has an ImageStream So libgdiplus has problems with that. I modified the spec file to see what output this generates: strace mono --verbose /usr/lib/mono/4.5/resgen.exe /useSourcePath /compile "TestSuiteTreeView.resx,obj/Debug/NUnit.UiKit.TestSuiteTreeView.resources" You can see it here in a scratch build: http://ppc.koji.fedoraproject.org/kojifiles/work/tasks/4746/2714746/build.log look for "Error: Exception has been thrown" stat("/usr/share/fonts/zvbi/caption.pcf.gz", {st_mode=S_IFREG|0644, st_size=3046, ...}) = 0 stat("/usr/share/fonts/zvbi/captioni.pcf.gz", {st_mode=S_IFREG|0644, st_size=3381, ...}) = 0 stat("/usr/share/fonts/zvbi/fonts.alias", {st_mode=S_IFREG|0644, st_size=71, ...}) = 0 stat("/usr/share/fonts/zvbi/fonts.dir", {st_mode=S_IFREG|0644, st_size=624, ...}) = 0 stat("/usr/share/fonts/zvbi/teletext1.pcf.gz", {st_mode=S_IFREG|0644, st_size=18631, ...}) = 0 stat("/usr/share/fonts/zvbi/teletext1i.pcf.gz", {st_mode=S_IFREG|0644, st_size=18759, ...}) = 0 stat("/usr/share/fonts/zvbi/teletext2.pcf.gz", {st_mode=S_IFREG|0644, st_size=21342, ...}) = 0 stat("/usr/share/fonts/zvbi/teletext2i.pcf.gz", {st_mode=S_IFREG|0644, st_size=21677, ...}) = 0 stat("/usr/share/fonts/zvbi/teletext4.pcf.gz", {st_mode=S_IFREG|0644, st_size=22774, ...}) = 0 stat("/usr/share/fonts/zvbi/teletext4i.pcf.gz", {st_mode=S_IFREG|0644, st_size=22576, ...}) = 0 close(7) = 0 close(6) = 0 mmap(NULL, 65536, PROT_READ|PROT_WRITE|PROT_EXEC, MAP_PRIVATE|MAP_ANONYMOUS, -1, 0) = 0x3fff92ba0000 fcntl(1, F_GETFL) = 0x1 (flags O_WRONLY) ioctl(1, TCGETS, 0x3fffdc9403a0) = -1 ENOTTY (Inappropriate ioctl for device) fcntl(2, F_GETFL) = 0x1 (flags O_WRONLY) fcntl(0, F_GETFL) = 0x10000 (flags O_RDONLY|0x10000) write(1, "Error: Exception has been thrown"..., 65) = 65 write(1, "Inner exception: A null referenc"..., 93) = 93 close(3) = 0 hope this gives a starting point for someone else... at the moment I don't know where to look next
fixed in http://ppc.koji.fedoraproject.org/koji/taskinfo?taskID=3515495