git-crypt
git-crypt copied to clipboard
(cygwin?) gcc 7.3.0 mkstemp compile error (and solution)
on cygwin (will test on linux) there is a compile error complaining
util-unix.cpp:79:13: error: 'mkstemp' was not declared in this scope
according to this https://stackoverflow.com/questions/21689124/mkstemp-and-fdopen-in-cygwin-1-7-28 this is due to --std=c++11 defining U__STRICT_ANSI__ a solution is to relax the std=c++11, another would be to drop the dependency on mkstemp and use http://en.cppreference.com/w/cpp/io/c/tmpnam or best http://en.cppreference.com/w/cpp/io/c/tmpfile
diff --git a/Makefile b/Makefile index 68eb9db..3a2be61 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,7 @@
CXXFLAGS ?= -Wall -pedantic -Wno-long-long -O2 -CXXFLAGS += -std=c++11 +CXXFLAGS += -std=c++11 -U__STRICT_ANSI__ PREFIX ?= /usr/local BINDIR ?= $(PREFIX)/bin MANDIR ?= $(PREFIX)/share/man
I confirm this issue (and solution) on cygwin.
Overriding default CFlags works:
CXXFLAGS=" -Wall -pedantic -Wno-long-long -O2 -U__STRICT_ANSI__" make
See #145 and https://github.com/AGWA/git-crypt/blob/0dec70739b3f4e6d22007c102f581448c4e9d2f1/Makefile#L19