Re: Building Bedrockdb in cygwin
- Date: Wed, 15 May 2019 00:17:02 +0200
- From: Csaba Ráduly <rcsaba@xxxxxxxxx>
- Subject: Re: Building Bedrockdb in cygwin
On 14/05/2019 19:11, Jose Isaias Cabrera wrote:
However, having jumped that huddle, I encountered a new one, which is probably easier to deal with. The make command does a lot of work, but once it's going to start compiling, I get,
[good stuff clipped]
make: Leaving directory '/home/e608313/Bedrock/mbedtls/programs'
make: Leaving directory '/home/e608313/Bedrock/mbedtls'
g++-6 -g -std=c++14 -fpic -O2 -Wall -Werror -Wformat-security -DGIT_REVISION=ce62c88 -I/home/e608313/Bedrock -I/home/e608313/Bedrock/mbedtls/include -MMD -MF libstuff/libstuff.d -MT libstuff/libstuff.h.gch -c libstuff/libstuff.h
make: g++-6: Command not found
make: *** No rule to make target 'libstuff/libstuff.d', needed by '.build/libstuff/libstuff.d'. Stop.
So, it appears that I need something called g++-6. I have both gcc and g++
$ ls /usr/bin/g++*
So, the question is, what is g++-6, and how to I get it? I tried to find it with cygwin's setup, but it's not on the distro. I tried to duckduckgo it, but I didn't get anything useful. Thoughts? Thanks
g++-6 is version 6 of the C++ compiler in the GNU Compiler Collection.
Cygwin's gcc and g++ is version 7.4.0:
$ g++.exe -dumpversion
Bedrockdb's makefile begins with:
# Set the compiler, if it's not set by the environment.
GXX = g++-6
CC = gcc-6
so the C++ compiler (GXX) is set to g++-6 unless GXX is set explicitly.
You need to run make like this:
CC=gcc GXX=g++ make <whatever arguments you gave to make, if any>
This will force make to use g++ instead of g++-6
Hope this helps,
You can get very substantial performance improvements
by not doing the right thing. - Scott Meyers, An Effective C++11/14 Sampler
So if you're looking for a completely portable, 100% standards-conformat way
to get the wrong information: this is what you want. - Scott Meyers (C++TDaWYK)
Problem reports: http://cygwin.com/problems.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple