--- ./opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c~ 2023-09-25 20:20:09.000000000 +0000 +++ ./opal/mca/pmix/pmix3x/pmix/src/hwloc/hwloc.c 2024-07-29 16:12:38.161908410 +0000 @@ -48,7 +48,7 @@ #if HWLOC_API_VERSION >= 0x20000 static size_t shmemsize = 0; -static size_t shmemaddr; +static uintptr_t shmemaddr; static char *shmemfile = NULL; static int shmemfd = -1; @@ -58,10 +58,10 @@ pmix_hwloc_vm_map_kind_t *kindp); static int use_hole(unsigned long holebegin, unsigned long holesize, - unsigned long *addrp, + uintptr_t *addrp, unsigned long size); static int find_hole(pmix_hwloc_vm_hole_kind_t hkind, - size_t *addrp, + uintptr_t *addrp, size_t size); static int enough_space(const char *filename, size_t space_req, @@ -584,7 +584,7 @@ static int use_hole(unsigned long holebegin, unsigned long holesize, - unsigned long *addrp, + uintptr_t *addrp, unsigned long size) { unsigned long aligned; @@ -615,7 +615,7 @@ } static int find_hole(pmix_hwloc_vm_hole_kind_t hkind, - size_t *addrp, size_t size) + uintptr_t *addrp, size_t size) { unsigned long biggestbegin = 0; unsigned long biggestsize = 0; --- ./orte/mca/rtc/hwloc/rtc_hwloc.c~ 2023-09-25 20:20:09.000000000 +0000 +++ ./orte/mca/rtc/hwloc/rtc_hwloc.c 2024-07-26 16:29:16.763923042 +0000 @@ -67,7 +67,7 @@ #if HWLOC_API_VERSION >= 0x20000 static size_t shmemsize = 0; -static size_t shmemaddr; +static uintptr_t shmemaddr; static char *shmemfile = NULL; static int shmemfd = -1; @@ -77,10 +77,10 @@ orte_rtc_hwloc_vm_map_kind_t *kindp); static int use_hole(unsigned long holebegin, unsigned long holesize, - unsigned long *addrp, + uintptr_t *addrp, unsigned long size); static int find_hole(orte_rtc_hwloc_vm_hole_kind_t hkind, - size_t *addrp, + uintptr_t *addrp, size_t size); static int enough_space(const char *filename, size_t space_req, @@ -524,7 +524,7 @@ static int use_hole(unsigned long holebegin, unsigned long holesize, - unsigned long *addrp, + uintptr_t *addrp, unsigned long size) { unsigned long aligned; @@ -576,7 +576,7 @@ } static int find_hole(orte_rtc_hwloc_vm_hole_kind_t hkind, - size_t *addrp, size_t size) + uintptr_t *addrp, size_t size) { unsigned long biggestbegin = 0; unsigned long biggestsize = 0; --- ./ompi/mca/io/romio321/romio/adio/include/adio.h~ 2023-09-25 20:20:09.000000000 +0000 +++ ./ompi/mca/io/romio321/romio/adio/include/adio.h 2024-07-29 15:40:10.597565427 +0000 @@ -97,6 +97,9 @@ #ifdef MPI_OFFSET_IS_INT typedef int ADIO_Offset; # define ADIO_OFFSET MPI_INT +#elif __SIZEOF_SIZE_T__ == 4 + typedef long ADIO_Offset; +# define ADIO_OFFSET MPI_LONG #elif defined(HAVE_LONG_LONG_64) typedef long long ADIO_Offset; # ifdef HAVE_MPI_LONG_LONG_INT