Le 20/04/2013 01:11, Brice Goglin a écrit :
> Le 20/04/2013 00:56, Jiri Hladky a écrit :
>> topology-gl.c: In function 'hwloc_gl_query_devices':
>> topology-gl.c:91:41: error: 'NV_CTRL_PCI_DOMAIN' undeclared (first use
>> in this function)
>> topology-gl.c:91:41: note: each undeclared identifier is reported only
>> once for each function it appears in
>> make[2]: *** [topology-gl.lo] Error 1
>> make[2]: Leaving directory `/tmp/hwloc-1.7/src'
>> make[1]: *** [all-recursive] Error 1
>> make[1]: Leaving directory `/tmp/hwloc-1.7/src'
>> make: *** [all-recursive] Error 1
>>
>> Indeed, there is no NV_CTRL_PCI_DOMAIN MACRO defined in NVCtrl header
>> files:
> Old CUDA versions didn't have a similar domain macro either, maybe
> NVIDIA did the same mistake with old nvml.
I meant nvctrl, not nvml.
Indeed, it was added in release 190.18.5
This patch should help.
Brice
Index: src/topology-gl.c
===================================================================
--- src/topology-gl.c (révision 5551)
+++ src/topology-gl.c (copie de travail)
@@ -85,12 +85,16 @@
gpu_number = ptr_binary_data[1];
free(ptr_binary_data);
+#ifdef NV_CTRL_PCI_DOMAIN
/* Gets the ID's of the GPU defined by gpu_number
* For further details, see the <NVCtrl/NVCtrlLib.h> */
err = XNVCTRLQueryTargetAttribute(display, NV_CTRL_TARGET_TYPE_GPU,
gpu_number, 0,
NV_CTRL_PCI_DOMAIN,
&nv_ctrl_pci_domain);
if (!err)
continue;
+#else
+ nv_ctrl_pci_domain = 0;
+#endif
err = XNVCTRLQueryTargetAttribute(display, NV_CTRL_TARGET_TYPE_GPU,
gpu_number, 0,
NV_CTRL_PCI_BUS, &nv_ctrl_pci_bus);