Compiling 4.5 from source results in 4.0


#1

Hi,
I tried to compile the watson release from github which should be 4.5.1, but after I finish everything when I install it reports I am using Couchbase 4.0.
It could be that it’s either an error in reporting the version or it’s mixing some configuration, as I see some setting that should be only present in 4.5 like “Memory optimized global secondary indexes”.

Is it not possible to build 4.5?
Also how can I force to rerun the initial installer? The only way is to delete everything?


#2

@00christian00,
seems like you forgot to set “PRODUCT_VERSION=4.5.X-XXXX” option.
if in doubt about versions of member-projects, compare used manifest to “repo info” result.
And BTW, 4.5.X interface differs from 4.0/4.1.X :slight_smile: It’s impossible to mistake.


#3

Thanks egrep!
It’s not mentioned anywhere on github. Where do I set it?
It’s a setting of repo or make?


#4

“make”. Just take a look @ makefiles, don’t be lazy :wink:
You don’t even need to be a “guru of cmake” to understand what is there.
More stubbornness, little more intelligence, less laziness, and voila!
:wink:


#5

Thanks! I was able to make it show the correct product version, but still I find it strange I have to specify it myself when it is in the xml file and especially since it wasn’t reporting an empty string but 4.0 before. Either there is something wrong with the build system or I am doing something wrong.

I cannot see any difference in the interface. Since version 3.0 all the difference I see is some more settings and the new query interface. The rest is identical.

By the way, I can’t seem to set the install path, it always end to the default path ./install.
Here is what I do:
make clean
make PREFIX="/opt/couchbase" CMAKE_PREFIX_PATH="/opt/couchbase" PRODUCT_VERSION=4.5.1b


#6

@00christian00,

There is a learning curve. Google, “man” & “info” are your best teachers.
Little less laziness, please :wink: Not so many efforts are needed to “once understand how to build and then forget about it”.

I cannot see any difference in the interface. Since version 3.0 all the difference I see is some more settings and the new query interface.

That’s it.

P.S. By the way, if you will decide to make 4.1.X, then use system-wide Go 1.4.2, otherwise, you’ll get a broken functionality (i spent a lot of time to make src-based 4.1.X work with GSI). 4.5.X uses multi-go-build-system (1.4 + 1.5 + 1.6 on per-subproject basis), so there is no such problem.