[R-pkg-devel] How to handle CRAN warning regarding stdout/stderr coming from code in upstream C library
SN248
@n248 @end|ng |rom corne||@edu
Sun Jun 1 14:23:23 CEST 2025
Thank you Dirk for your detailed explanation. I will have to think if I
want to make the changes to get CRAN acceptance, but good to know that
those are the rules.
Best
Satya
On Sat, May 31, 2025 at 7:15 PM SN248 <sn248 using cornell.edu> wrote:
> Dear R package developers
>
> I am getting the following errors in my package (sundialr -
> https://github.com/sn248/sundialr) which is a wrapper around SUNDIALS C
> library. The warnings are as follows:
>
> ❯ checking compiled code ...
>> WARNING File ‘sundialr/libs/sundialr.so’:
>> Found ‘abort’, possibly from ‘abort’ (C) Object:
>> ‘../inst/lib/libsundials_core.a’
>> Found ‘puts’, possibly from ‘printf’ (C), ‘puts’ (C) Object:
>> ‘../inst/lib/libsundials_core.a’
>> Found ‘stderr’, possibly from ‘stderr’ (C) Object:
>> ‘../inst/lib/libsundials_core.a’
>> Found ‘stdout’, possibly from ‘stdout’ (C) Objects:
>> ‘../inst/lib/libsundials_core.a’, ‘../inst/lib/libsundials_cvodes.a’,
>> ‘../inst/lib/libsundials_idas.a’, ‘../inst/lib/libsundials_nvecserial.a’
>> Compiled code should not call entry points which might terminate R nor
>> write to stdout/stderr instead of to the console, nor use Fortran I/O nor
>> system RNGs nor [v]sprintf. See ‘Writing portable packages’ in the ‘Writing
>> R Extensions’ manual.
>
>
> See them at -
> https://cran-archive.r-project.org/web/checks/2025/2025-05-12_check_results_sundialr.html
>
> As far as I understand these warnings are coming from the following files:
>
> 1. 'abort' coming from -
> https://github.com/sn248/sundialr/blob/ace6865ac0bc995190bc4c354a8823ea8d3bd358/src/sundials/sundials/sundials_errors.c#L87
>
> 2. I cannot find the file/line where 'puts' is coming from
>
> 3. stderr/stdout -- too many instances in SUNDIALS C code to list here,
> e.g.,
> https://github.com/sn248/sundialr/blob/ace6865ac0bc995190bc4c354a8823ea8d3bd358/src/sundials/arkode/arkode.c#L1285
>
> In principle, I don't want to change anything in the upstream C library
> code while including it in my package. Is this any other way to resolve
> these warnings as the package has been archived because of these warnings
> now.
>
> Thanks
> Satya
>
[[alternative HTML version deleted]]
More information about the R-package-devel
mailing list