9 Replies Latest reply: Mar 5, 2012 9:42 AM by carol.sandstrom RSS

    Error while make of TCL libraries

    907700
      Hi

      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.

      Thanks
        • 1. Re: Error while make of TCL libraries
          carol.sandstrom
          Hi,

          The Berkeley DB 5.2 release requires Tcl version 8.5. Please try again with an 8.5 release of Tcl and let us know if you continue to have the same problem.

          Regards,
          Carol
          • 2. Re: Error while make of TCL libraries
            907700
            Hi Carol,

            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.

            Thanks
            Sandeep
            • 3. Re: Error while make of TCL libraries
              carol.sandstrom
              Hi Sandeep,

              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?

              Regards,
              Carol
              • 4. Re: Error while make of TCL libraries
                907700
                Hi Carol,

                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.

                Thanks
                Sandeep
                • 5. Re: Error while make of TCL libraries
                  carol.sandstrom
                  Hi Sandeep,

                  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.

                  Regards,
                  Carol
                  • 6. Re: Error while make of TCL libraries
                    907700
                    Hi Carol,

                    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
                    Sandeep
                    • 7. Re: Error while make of TCL libraries
                      carol.sandstrom
                      Hi Sandeep,

                      That's very good news; I'm glad to hear it. Do let us know if you end up with changes that you think should be contributed back to the Berkeley DB code line.

                      Regards,
                      Carol
                      • 8. Re: Error while make of TCL libraries
                        907700
                        Hi Carol,

                        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?

                        Thanks
                        Sandeep.
                        • 9. Re: Error while make of TCL libraries
                          carol.sandstrom
                          Hi Sandeep,

                          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!

                          - Carol