[R-pkg-devel] Weird MAKEFLAGS bug

Dirk Eddelbuettel edd at debian.org
Tue Jan 10 12:39:32 CET 2017


On 10 January 2017 at 11:55, Costas Tsirogiannis wrote:
| Greetings and thanks for previously offered solutions,
| 
| I am developing a package that makes use of C++ code, and I want to compile
| this code for testing reasons with the "R CMD SHLIB" command. Using Ubuntu
| and gcc 5.4, and because for certain reasons I have to use the c++0x
| standard, I try the following command:
| 
| > MAKEFLAGS='CXXFLAGS=-std=c++0x -lpthread -O2' R CMD SHLIB MyMainCode.cpp
| 
| For some weird reason, flag -O2 is not recognized properly and I get the
| following error message:
| 
| > make: *** unknown output-sync type '2'.  Stop.
| 
| If I try -O3, I get "unknown output-sync type '3' ", and so on. Everything
| works fine if I drop this optimization flag. Could you suggest a workaround
| for that?

Sounds weird. Wonder if something else could go on here.

But in general, using ~/.R/Makevars is better.  Try that.

edd at max:~$ grep FLAGS ~/.R/Makevars | grep -v "^#"
CFLAGS +=              -O3 -Wall -pipe -pedantic -std=gnu99 
CXXFLAGS +=           -O3 -Wall -pipe -Wno-unused -pedantic 
FFLAGS += -O3 -g0 -Wall -pipe
FCFLAGS += -O3 -g0 -Wall -pipe
CXX1XFLAGS=-O3 -Wall -pipe -Wno-unused -pedantic 
FLAGS=-Wall -O3
DYLIB_LDFLAGS = -Wl,-S -shared -fopenmp# $(CFLAGS) $(CPICFLAGS)
SHLIB_CXXLDFLAGS = -Wl,-S -shared
SHLIB_CXX1XLDFLAGS = -Wl,-S -shared
SHLIB_FCLDFLAGS = -Wl,-S -shared
SHLIB_LDFLAGS = -Wl,-S -shared# $(CFLAGS) $(CPICFLAGS)
edd at max:~$ 

Dirk

-- 
http://dirk.eddelbuettel.com | @eddelbuettel | edd at debian.org



More information about the R-package-devel mailing list