Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[CI] Don't compile the Python interfaces on some platforms #248

Merged
merged 1 commit into from
Feb 7, 2024

Conversation

amontoison
Copy link
Member

No description provided.

@amontoison amontoison force-pushed the upstream/amontoison-patch-1 branch from 248ee1d to 591cafa Compare February 7, 2024 04:47
@amontoison
Copy link
Member Author

@nimgould

Old Intel compilers on Windows:

FAILED: bllst_c_single.exe.p/src_blls_C_bllst.c.obj 
"icl" "-Ibllst_c_single.exe.p" "-I." "-I.." "-Iinclude" "-I..\include" "-I..\src\dum\include" "-Isrc\ampl" "-I..\src\ampl" "/MDd" "/nologo" "/showIncludes" "/utf-8" "/Qstd:c99" "/Zi" "/traceback" "/Od" "/Zi" "/Qdiag-disable=10441" "-DGALAHAD_SINGLE" "-DSPRAL_SINGLE" "-DGALAHAD_BLAS" "-DGALAHAD_LAPACK" "-DDUMMY_SMUMPS" "-DDUMMY_MKL_PARDISO" "-DDUMMY_PARDISO" "-DDUMMY_PASTIXF" "-DDUMMY_SPMF" "-DDUMMY_WSMP" "-DDUMMY_MPI" "-DDUMMY_HSL" "/Fdbllst_c_single.exe.p\src_blls_C_bllst.c.pdb" /Fobllst_c_single.exe.p/src_blls_C_bllst.c.obj "/c" ../src/blls/C/bllst.c
../src/blls/C/bllst.c(235): error: expected an expression
      on = max( o, n );
           ^

compilation aborted for ../src/blls/C/bllst.c (code 2)
[1959/2764] Compiling C object bllst_c_double.exe.p/src_blls_C_bllst.c.obj
FAILED: bllst_c_double.exe.p/src_blls_C_bllst.c.obj 
"icl" "-Ibllst_c_double.exe.p" "-I." "-I.." "-Iinclude" "-I..\include" "-I..\src\dum\include" "-Isrc\ampl" "-I..\src\ampl" "/MDd" "/nologo" "/showIncludes" "/utf-8" "/Qstd:c99" "/Zi" "/traceback" "/Od" "/Zi" "/Qdiag-disable=10441" "-DGALAHAD_DOUBLE" "-DSPRAL_DOUBLE" "-DGALAHAD_BLAS" "-DGALAHAD_LAPACK" "-DDUMMY_DMUMPS" "-DDUMMY_MKL_PARDISO" "-DDUMMY_PARDISO" "-DDUMMY_PASTIXF" "-DDUMMY_SPMF" "-DDUMMY_WSMP" "-DDUMMY_MPI" "-DDUMMY_HSL" "/Fdbllst_c_double.exe.p\src_blls_C_bllst.c.pdb" /Fobllst_c_double.exe.p/src_blls_C_bllst.c.obj "/c" ../src/blls/C/bllst.c
../src/blls/C/bllst.c(235): error: expected an expression
      on = max( o, n );
           ^

compilation aborted for ../src/blls/C/bllst.c (code 2)
[1960/2764] Linking target bgotf_c_single.exe
[1961/2764] Linking target bgotf_c_double.exe
[1962/2764] Compiling C object bllstf_c_single.exe.p/src_blls_C_bllstf.c.obj
FAILED: bllstf_c_single.exe.p/src_blls_C_bllstf.c.obj 
"icl" "-Ibllstf_c_single.exe.p" "-I." "-I.." "-Iinclude" "-I..\include" "-I..\src\dum\include" "-Isrc\ampl" "-I..\src\ampl" "/MDd" "/nologo" "/showIncludes" "/utf-8" "/Qstd:c99" "/Zi" "/traceback" "/Od" "/Zi" "/Qdiag-disable=10441" "-DGALAHAD_SINGLE" "-DSPRAL_SINGLE" "-DGALAHAD_BLAS" "-DGALAHAD_LAPACK" "-DDUMMY_SMUMPS" "-DDUMMY_MKL_PARDISO" "-DDUMMY_PARDISO" "-DDUMMY_PASTIXF" "-DDUMMY_SPMF" "-DDUMMY_WSMP" "-DDUMMY_MPI" "-DDUMMY_HSL" "/Fdbllstf_c_single.exe.p\src_blls_C_bllstf.c.pdb" /Fobllstf_c_single.exe.p/src_blls_C_bllstf.c.obj "/c" ../src/blls/C/bllstf.c
../src/blls/C/bllstf.c(234): error: expected an expression
      on = max( o, n );
           ^

compilation aborted for ../src/blls/C/bllstf.c (code 2)
[1963/2764] Compiling C object bllstf_c_double.exe.p/src_blls_C_bllstf.c.obj
FAILED: bllstf_c_double.exe.p/src_blls_C_bllstf.c.obj 
"icl" "-Ibllstf_c_double.exe.p" "-I." "-I.." "-Iinclude" "-I..\include" "-I..\src\dum\include" "-Isrc\ampl" "-I..\src\ampl" "/MDd" "/nologo" "/showIncludes" "/utf-8" "/Qstd:c99" "/Zi" "/traceback" "/Od" "/Zi" "/Qdiag-disable=10441" "-DGALAHAD_DOUBLE" "-DSPRAL_DOUBLE" "-DGALAHAD_BLAS" "-DGALAHAD_LAPACK" "-DDUMMY_DMUMPS" "-DDUMMY_MKL_PARDISO" "-DDUMMY_PARDISO" "-DDUMMY_PASTIXF" "-DDUMMY_SPMF" "-DDUMMY_WSMP" "-DDUMMY_MPI" "-DDUMMY_HSL" "/Fdbllstf_c_double.exe.p\src_blls_C_bllstf.c.pdb" /Fobllstf_c_double.exe.p/src_blls_C_bllstf.c.obj "/c" ../src/blls/C/bllstf.c
../src/blls/C/bllstf.c(234): error: expected an expression
      on = max( o, n );
           ^

compilation aborted for ../src/blls/C/bllstf.c (code 2)

New Intel compilers on Windows:

FAILED: bgos2.exe bgos2.pdb 
"xilink.exe"  /MACHINE:x64 /OUT:bgos2.exe bgos2.exe.p/src_bgo_bgos2.f90.obj "/nologo" "/DEBUG" "/PDB:bgos2.pdb" "libgalahad_double.a" "/SUBSYSTEM:CONSOLE"
src_bgo_bgos2.f90.obj : error LNK2001: unresolved external symbol HESSPROD

bgos2.exe : fatal error LNK1120: 1 unresolved externals

@amontoison amontoison merged commit 728b208 into master Feb 7, 2024
9 of 12 checks passed
@amontoison amontoison deleted the upstream/amontoison-patch-1 branch February 7, 2024 05:11
@amontoison amontoison changed the title CI] Don't compile the Python interfaces on some platforms [CI] Don't compile the Python interfaces on some platforms Feb 7, 2024
@nimgould
Copy link
Contributor

nimgould commented Feb 7, 2024

The max function is defined in the preprocessor instructions. Again, is there a missingf -fpp?

The bgos2 issue is a bug, the external statement is not needed (and a copy error from bgos.f90)

@amontoison
Copy link
Member Author

amontoison commented Feb 7, 2024

Nick, I checked online and the max() function is not a standard function in the C language, but it might be defined in certain libraries or specific headers.
icl seems to be a picky compiler.

The error we're encountering is likely due to a syntax issue or improper usage of the max() function in our C code.
The max() function is not a standard function in the C language, but it might be defined in certain libraries or specific headers.

To correct this error, we can either write a simple max() function ourself or use one of the built-in functions such as fmax() or imax(), depending on the data type we're working with (float, integer, etc.).

fmax() for float values:

on = fmax(o, n);

or using imax() for integer values:

on = imax(o, n);

Make sure to include the appropriate headers, such as <math.h> to use fmax() or <stdint.h> to use imax(), if necessary.

@amontoison
Copy link
Member Author

The bgos2 issue is a bug, the external statement is not needed (and a copy error from bgos.f90)

We have the same error with nlss3:
https://github.com/ralna/GALAHAD/actions/runs/7817456570/job/21325383647#step:12:13551
We can fix one error everytime that we run CI.

@nimgould
Copy link
Contributor

nimgould commented Feb 8, 2024

Yes, max is not part of C, but that is precisely why we defined it in the code. I am not sure why
the compiler grumbled. But I see you have chosen to replace by a self-defined imax instead. OK
if that helps

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants