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

solaris install error with 1.13.0 #4638

Closed
mattdowle opened this issue Jul 24, 2020 · 8 comments · Fixed by #4663
Closed

solaris install error with 1.13.0 #4638

mattdowle opened this issue Jul 24, 2020 · 8 comments · Fixed by #4663
Milestone

Comments

@mattdowle
Copy link
Member

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
@mattdowle mattdowle added this to the 1.13.1 milestone Jul 24, 2020
@MichaelChirico
Copy link
Member

MichaelChirico commented Jul 26, 2020 via email

@tlapak
Copy link
Contributor

tlapak commented Jul 26, 2020

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

@MichaelChirico
Copy link
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?

@mattdowle
Copy link
Member Author

mattdowle commented Jul 27, 2020

@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?

@tlapak
Copy link
Contributor

tlapak commented Jul 27, 2020

@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.

@MichaelChirico
Copy link
Member

MichaelChirico commented Jul 27, 2020

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

@MichaelChirico
Copy link
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

@MichaelChirico
Copy link
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
Labels
None yet
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants