I am using BerkeleyDB version 5.2.36 and I have configured using the flags enable-cxx enable-debug enable-sql enable-test enable-tcl with-tcl=/opt/Tcl8.4/lib.
I am getting the following error in make command. libtool: link: ranlib .libs/libdb_tcl-5.2.a libtool: link: ( cd ".libs" && rm -f "libdb_tcl-5.2.la" && ln -s "../libdb_tcl-5.2.la" "libdb_tcl-5.2.la" ) rm -f libdb_tcl.a ln -s .libs/libdb_tcl-5.2.a libdb_tcl.a Make: Must be a separator on rules line 34. Stop. *** Error exit code 1 Stop.
I have not made any changes to the Makefile after configure.
Any help will be of great help.
I will try the same with Tcl 8.5, but while configuring BDB I got a message telling Berkeley DB requires Tcl version 8.4 or greater.
Also the error seems to be coming from the Makefile and not due to any version mismatch.
I see what you mean. Searching the internet for the phrase "must be a separator on rules line" I see this kind of error usually arises from a space in the Makefile where a tab is expected -- have you by any chance edited your Makefile? Also the particular version of make you are using may be pickier than others. What compiler are you using, and on what platform?
I have not modified any part of the Makefile. I am using cc compiler on HP UX 11.31 system.
After doing some digging on the Makefile I see that "make sql-test" command is the one causing the problem.
The Makefile present in build_unix/sql folder throws the error no matter what I try to make.
I am trying the build the Berkeley DB test suite so we can test the behaviour of Berkeley DB in the HPUX systems. I believe the build_unix/sql/Makefile has some inconsistency.
Unfortunately I do not have any HP-UX machines to test the build on. I can ask around our group to see if anybody has any ideas about what we might be looking for.
In the meantime, is the SQL API critical to your needs? If not, you may be able to make progress by omitting the "--enable-sql" option from your config string.
Thanks for all the help. I have narrowed down the problem to build_unix/sql/Makefile file having some extra spaces while using "+=" operator. The Makefile parser was not allowing the spaces between the variable and the operators.
The make was successful once I removed the spaces.
Thanks & Regards
I see that "+=" operator is not supported by HP-UX make command. The Makefile under the build_unix/sql directory uses "+=" to append various values to variables. I am currently removing "+=" operators and manually added all the options to the Makefile.
Is it possible to provide us with a Makefile which is compatable with HP UX make?
You ask if it would be possible to provide a Makefile compatible with HP-UX.
The proper way for us to do this would be to alter the configure file so that when it detects that the OS is HP-UX, it generates the appropriate build_unix/sql/Makefile without the "+=" operator -- I assume that's what you're asking for. Without a host to test this on, I'm very hesitant to try. I'm sorry to say no!