git-crypt icon indicating copy to clipboard operation
git-crypt copied to clipboard

(cygwin?) gcc 7.3.0 mkstemp compile error (and solution)

Open jlmxyz opened this issue 6 years ago • 2 comments

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

jlmxyz avatar Jun 20 '18 09:06 jlmxyz

I confirm this issue (and solution) on cygwin.

Overriding default CFlags works:

CXXFLAGS=" -Wall -pedantic -Wno-long-long -O2 -U__STRICT_ANSI__" make

plup avatar Aug 22 '18 09:08 plup

See #145 and https://github.com/AGWA/git-crypt/blob/0dec70739b3f4e6d22007c102f581448c4e9d2f1/Makefile#L19

rasa avatar Nov 25 '18 23:11 rasa