[petsc-users] Install PETSc with option `--with-shared-libraries=1` failed on MacOS

Pierre Jolivet pierre at joliv.et
Sun Mar 17 07:58:58 CDT 2024



> On 17 Mar 2024, at 1:04 PM, Zongze Yang <yangzongze at gmail.com> wrote:
> 
> Thank you for providing the instructions. I try the first option.
> 
> Now, the error of the configuration is related to OpenBLAS.
> Add `--CFLAGS=-Wno-int-conversion` to configure command resolve this. Should this be reported to OpenBLAS? Or need to fix the configure in petsc?

I see our linux-opt-arm runner is using the additional flag '--download-openblas-make-options=TARGET=GENERIC', could you maybe try to add that as well?
I don’t think there is much to fix on our end, OpenBLAS has been very broken lately on arm (current version is 0.3.26 but we can’t update because there is a huge performance regression which makes the pipeline timeout).

Thanks,
Pierre

> 
> The configure.log is attached. The errors are show below:
>     ```
>     src/lapack_wrappers.c:570:81: error: incompatible integer to pointer conversion passing 'blasint' (aka 'int') to parameter of type 'const blasint *' (aka 'const int *'); take the address with & [-Wint-conversion]
>         RELAPACK_sgemmt(uplo, transA, transB, n, k, alpha, A, ldA, B, ldB, beta, C, info);
>                                                                                     ^~~~
>                                                                                     &
>     src/../inc/relapack.h:74:216: note: passing argument to parameter here
>     void RELAPACK_sgemmt(const char *, const char *, const char *, const blasint *, const blasint *, const float *, const float *, const blasint *, const float *, const blasint *, const float *, float *, const blasint *);
>                                                                                                                                                                                                                            ^
>     src/lapack_wrappers.c:583:81: error: incompatible integer to pointer conversion passing 'blasint' (aka 'int') to parameter of type 'const blasint *' (aka 'const int *'); take the address with & [-Wint-conversion]
>         RELAPACK_dgemmt(uplo, transA, transB, n, k, alpha, A, ldA, B, ldB, beta, C, info);
>                                                                                     ^~~~
>                                                                                     &
>     src/../inc/relapack.h:75:221: note: passing argument to parameter here
>     void RELAPACK_dgemmt(const char *, const char *, const char *, const blasint *, const blasint *, const double *, const double *, const blasint *, const double *, const blasint *, const double *, double *, const blasint *);
>                                                                                                                                                                                                                                 ^
>     src/lapack_wrappers.c:596:81: error: incompatible integer to pointer conversion passing 'blasint' (aka 'int') to parameter of type 'const blasint *' (aka 'const int *'); take the address with & [-Wint-conversion]
>         RELAPACK_cgemmt(uplo, transA, transB, n, k, alpha, A, ldA, B, ldB, beta, C, info);
>                                                                                     ^~~~
>                                                                                     &
>     src/../inc/relapack.h:76:216: note: passing argument to parameter here
>     void RELAPACK_cgemmt(const char *, const char *, const char *, const blasint *, const blasint *, const float *, const float *, const blasint *, const float *, const blasint *, const float *, float *, const blasint *);
>                                                                                                                                                                                                                            ^
>     src/lapack_wrappers.c:609:81: error: incompatible integer to pointer conversion passing 'blasint' (aka 'int') to parameter of type 'const blasint *' (aka 'const int *'); take the address with & [-Wint-conversion]
>         RELAPACK_zgemmt(uplo, transA, transB, n, k, alpha, A, ldA, B, ldB, beta, C, info);
>                                                                                     ^~~~
>                                                                                     &
>     src/../inc/relapack.h:77:221: note: passing argument to parameter here
>     void RELAPACK_zgemmt(const char *, const char *, const char *, const blasint *, const blasint *, const double *, const double *, const blasint *, const double *, const blasint *, const double *, double *, const blasint *);
>                                                                                                                                                                                                                                 ^
>     4 errors generated.
>     ```
> 
> Best wishes,
> Zongze
> 
> <configure.log.tar.gz>
> 
>> On 17 Mar 2024, at 18:48, Pierre Jolivet <pierre at joliv.et> wrote:
>> 
>> You need this MR https://urldefense.us/v3/__https://gitlab.com/petsc/petsc/-/merge_requests/7365__;!!G_uCfscf7eWS!ZvwjMAU-lcsnHOD1DYr8ZDVvdFJXa8hvGZBO4pBGgAQUue7mdUWP4lTTAroHEIUV3yEADf1DJ7z-etn64PkQMw$ 
>> main has been broken for macOS since https://urldefense.us/v3/__https://gitlab.com/petsc/petsc/-/merge_requests/7341__;!!G_uCfscf7eWS!ZvwjMAU-lcsnHOD1DYr8ZDVvdFJXa8hvGZBO4pBGgAQUue7mdUWP4lTTAroHEIUV3yEADf1DJ7z-etlzwFFxow$ , so the alternative is to revert to the commit prior.
>> It should work either way.
>> 
>> Thanks,
>> Pierre
>> 
>>> On 17 Mar 2024, at 11:31 AM, Zongze Yang <yangzongze at gmail.com <mailto:yangzongze at gmail.com>> wrote:
>>> 
>>> 
>>> This Message Is From an External Sender
>>> This message came from outside your organization.
>>> Hi, PETSc Team,
>>> 
>>> I am trying to install petsc with the following configuration
>>> ```
>>> ./configure \
>>>     --download-bison \
>>>     --download-mpich \
>>>     --download-mpich-configure-arguments=--disable-opencl \
>>>     --download-hwloc \
>>>     --download-hwloc-configure-arguments=--disable-opencl \
>>>     --download-openblas \
>>>     --download-openblas-make-options="'USE_THREAD=0 USE_LOCKING=1 USE_OPENMP=0'" \
>>>     --with-shared-libraries=1 \
>>>     --with-fortran-bindings=0 \
>>>     --with-zlib \
>>>     LDFLAGS=-Wl,-ld_classic
>>> ```
>>> 
>>> The log shows that
>>> ```
>>>    Exhausted all shared linker guesses. Could not determine how to create a shared library!
>>> ```
>>> 
>>> I recently updated the system and Xcode, as well as homebrew.
>>> 
>>> The configure.log is attached.
>>> 
>>> Thanks for your attention to this matter.
>>> 
>>> Best wishes,
>>> Zongze
>>> <configure.log.tar.gz>
> 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.mcs.anl.gov/pipermail/petsc-users/attachments/20240317/c83b3321/attachment-0001.html>


More information about the petsc-users mailing list