Skip to content

solaris install error with 1.13.0 #4638

Closed

Description

@mattdowle

Displayed by CRAN checks today for Solaris
https://www.r-project.org/nosvn/R.check/r-patched-solaris-x86/data.table-00check.html

* installing to library ‘/home/ripley/R/Lib32’
* installing *source* package ‘data.table’ ...
** package ‘data.table’ successfully unpacked and MD5 sums checked
** using staged installation
zlib 1.2.8 is available ok
OpenMP supported
** libs
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c assign.c -o assign.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c between.c -o between.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c bmerge.c -o bmerge.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c chmatch.c -o chmatch.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c cj.c -o cj.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c coalesce.c -o coalesce.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c dogroups.c -o dogroups.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fastmean.c -o fastmean.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fcast.c -o fcast.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fifelse.c -o fifelse.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fmelt.c -o fmelt.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c forder.c -o forder.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c frank.c -o frank.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fread.c -o fread.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c freadR.c -o freadR.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c froll.c -o froll.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c frollR.c -o frollR.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c frolladaptive.c -o frolladaptive.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fsort.c -o fsort.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fwrite.c -o fwrite.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c fwriteR.c -o fwriteR.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c gsumm.c -o gsumm.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c ijoin.c -o ijoin.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c init.c -o init.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c inrange.c -o inrange.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c nafill.c -o nafill.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c nqrecreateindices.c -o nqrecreateindices.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c openmp-utils.c -o openmp-utils.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c quickselect.c -o quickselect.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c rbindlist.c -o rbindlist.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c reorder.c -o reorder.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c shift.c -o shift.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c snprintf.c -o snprintf.o
/home/ripley/developerstudio12.6/bin/cc -xc99 -I"/home/ripley/R/cc/include" -DNDEBUG   -I/usr/local/include -xopenmp -KPIC  -O -xlibmieee -xlibmil -xtarget=native -xcache=generic -nofstore  -c subset.c -o subset.o
"subset.c", line 54: left operand must be modifiable lvalue: op "="
"subset.c", line 54: left operand must be modifiable lvalue: op "="
"subset.c", line 60: left operand must be modifiable lvalue: op "="
"subset.c", line 60: left operand must be modifiable lvalue: op "="
"subset.c", line 64: left operand must be modifiable lvalue: op "="
"subset.c", line 64: left operand must be modifiable lvalue: op "="
"subset.c", line 93: left operand must be modifiable lvalue: op "="
"subset.c", line 93: left operand must be modifiable lvalue: op "="
"subset.c", line 98: left operand must be modifiable lvalue: op "="
"subset.c", line 98: left operand must be modifiable lvalue: op "="
cc: acomp failed for subset.c
*** Error code 2
make: Fatal error: Command failed for target `subset.o'
Current working directory /tmp/Rtmp6saqS3/R.INSTALL6f62e776617/data.table/src
ERROR: compilation failed for package ‘data.table’
* removing ‘/home/ripley/R/Lib32/data.table’

real       50.1
user       50.2
sys         5.3

Activity

  1. added this to the 1.13.1 milestone on Jul 24, 2020
  2. MichaelChirico commented on Jul 26, 2020

    @MichaelChirico
    Member
  3. tlapak commented on Jul 26, 2020

    @tlapak
    Contributor

    Discussion in #3285 (comment) seems to suggest that _Pragma doesn't like the argument to threads() be declared as const.

  4. MichaelChirico commented on Jul 27, 2020

    @MichaelChirico
    Member

    Awesome @tlapak, that looks good to me, do you want to file a PR?

    Is there any compile flag we could set to get this to trigger in our tests?

  5. mattdowle commented on Jul 27, 2020

    @mattdowle
    MemberAuthor

    @MichaelChirico I'm sure your intention was making sure we don't duplicate effort and two people do the PR at the same time, or step on @tlapak's toes in case they wanted to make the PR. I've just an eye that we want people to feel comfortable in making suggestions without fearing they might then be volunteered to make the PR too, which is the other way your comment might come across. Tricky.

    Is there any compile flag we could set to get this to trigger in our tests?

    I'm not aware of one. It may be something rchk could detect but that's way beyond me. Something more for CRAN_Release greps, or better, your QC linter PR which we could accelerate. The linter is R level currently and not C level yet?

  6. tlapak commented on Jul 27, 2020

    @tlapak
    Contributor

    @mattdowle don't worry, I took @MichaelChirico's comment as a friendly invitation. I'll say if I don't have the time. That said, I'm happy to do it though it'll probably be a few days.

    Best as I can tell this is just the Oracle compiler being too uptight with its type checks while not emitting a helpful error message. So I don't see a way to get other compilers to do the same. It's already in the release greps for the #Pragma form. So adding this and forgoing the use of a variable seems to be the way for now.

  7. MichaelChirico commented on Jul 27, 2020

    @MichaelChirico
    Member

    In this case, I know Vaclav has filed some high-quality PRs in the past, so I felt more comfortable treading less lightly.

  8. MichaelChirico commented on Jul 27, 2020

    @MichaelChirico
    Member

    for the linter, C level is a lot tougher, unless you're aware of an AST builder for C that we could leverage. barring that it's tough to improve on regex

  9. MichaelChirico commented on Jul 28, 2020

    @MichaelChirico
    Member

    Tried looking up the Oracle docs here. Not an expert, but I'm more sold that nth shouldn't be const because the value dynamically adjusts based on what's available (?); not sure if that behavior is Solaris-specific.

    I do see this variable SUNW_MP_WARN mentioned but it seems Solaris-specific, i.e., it won't do anything in our CI builds (?).

    Unfortunately all the examples of num_threads in their documentation use a literal value (not a variable) so it's hard to tell what's the expected behavior.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions