Operating System - HP-UX
1833768 Members
2040 Online
110063 Solutions
New Discussion

Getting AIDE to work on HP-UX

 
SOLVED
Go to solution
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

Okay, been trying different things, and had to take a
SANS UNIX test last week, so back at it.

FYI, I am using 11.11 on a J6750 (RISC chip).

I put the # stdint.h in the program.

There were a lot of new errors with .h files. I was able
to make a link to a directory and eliminate many of the
new cstdint problems.

Reading some install files that I now better understand, I
am using the command:

env CPPFLAGS=-I/usr/local/include LDFLAGS=-s ./configure

to compile. Seems to be what you were trying to say in the
early responses.

I am still getting the error:

/usr/ccs/bin/ld: Unsatisfied symbols:
vsyslog (first referenced in /var/tmp//ccwj8qZo.o) (code)
collect2: ld returned 1 exit status

I thought we took care of this when I put in gettext. I
removed it and replaced it with a version downloaded from the
U.K. porting center. Still no luck.

I am also getting an error looking for ac_nonexistent.h, I'm thinking
it might be related to the error above.

Continued thanks.
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>ld: Unsatisfied symbols: vsyslog
>I thought we took care of this when I put in gettext.

Do you know what it does or where it should be defined? Is it in gettext?
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

No, I havn't any idea of what it does. There are no depots of vsyslog. A forum search on the term vsyslog is empty.

A more complete listing of config.log file has:

configure:3749: checking whether to enable maintainer-specific portions of Makefiles
configure:3758: result: no
configure:3927: checking for library containing syslog
configure:3968: gcc -o conftest -g -O2 -static -I/usr/local/include -static -s conftest.c >&5
configure:3974: $? = 0
configure:4002: result: none required
configure:4018: checking for vsyslog
configure:4074: gcc -o conftest -g -O2 -static -I/usr/local/include -static -s conftest.c >&5
/usr/ccs/bin/ld: Unsatisfied symbols:
vsyslog (first referenced in /var/tmp//ccwj8qZo.o) (code)
collect2: ld returned 1 exit status


Seems to be looking for conftest.c, but I read that is a temp file in configure.
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>ld: Unsatisfied symbols: vsyslog
>Seems to be looking for conftest.c

This is a test that says vsyslog doesn't exist. You should ignore the error messages from this step and only look at your application errors.
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

I'm not sure which are application errors and which are other errors. Attached is the log file.
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>I'm not sure which are application errors and which are other errors.

This is just the configure output. At the end it says: configure: exit 0

So everything is fine.
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

Okay, so I run the gmake and get a boat full of errors. Is this where the application errors are, or is there something else?

gmake all-recursive
gmake[1]: Entering directory `/download/aide-0.13.1'
Making all in src
gmake[2]: Entering directory `/download/aide-0.13.1/src'
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT conf_yacc.o -MD -MP -MF ".deps/conf_yacc.Tpo" \
-c -o conf_yacc.o `test -f 'conf_yacc.c' || echo './'`conf_yacc.c; \
then mv -f ".deps/conf_yacc.Tpo" ".deps/conf_yacc.Po"; \
else rm -f ".deps/conf_yacc.Tpo"; exit 1; \
fi
In file included from /usr/local/include/bits/c++config.h:41,
from /usr/local/include/tr1/cstdint:37,
from ../include/stdint.h:37,
from /usr/local/include/mutils/mincludes.h:102,
from /usr/local/include/mhash.h:6,
from ../include/db_config.h:86,
from ../include/report.h:26,
from ../include/aide.h:24,
from ../src/conf_yacc.y:21:
/usr/local/include/bits/os_defines.h:64: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'std'
In file included from /usr/local/include/tr1/cstdint:37,
from ../include/stdint.h:37,
from /usr/local/include/mutils/mincludes.h:102,
from /usr/local/include/mhash.h:6,
from ../include/db_config.h:86,
from ../include/report.h:26,
from ../include/aide.h:24,
from ../src/conf_yacc.y:21:
/usr/local/include/bits/c++config.h:149: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'std'
In file included from ../include/stdint.h:37,
from /usr/local/include/mutils/mincludes.h:102,
from /usr/local/include/mhash.h:6,
from ../include/db_config.h:86,
from ../include/report.h:26,
from ../include/aide.h:24,
from ../src/conf_yacc.y:21:
/usr/local/include/tr1/cstdint:47: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'std'
gmake[2]: *** [conf_yacc.o] Error 1
gmake[2]: Leaving directory `/download/aide-0.13.1/src'
gmake[1]: *** [all-recursive] Error 1
gmake[1]: Leaving directory `/download/aide-0.13.1'
gmake: *** [all] Error 2
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>Is this where the application errors are

Yes, these are the real errors:
/usr/local/include/bits/os_defines.h:64: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'std'
/usr/local/include/bits/c++config.h:149: error: expected '=', ',', ';', 'asm' or
/usr/local/include/tr1/cstdint:47: error: expected '=', ',', ';', 'asm' or

They look the same. What's on those lines? Include a block around the first.
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

Block around the first? You mean []? Here is the same first part retaining formatting. Or if it is something else, let me know.


# gmake
gmake all-recursive
gmake[1]: Entering directory `/download/aide-0.13.1'
Making all in src
gmake[2]: Entering directory `/download/aide-0.13.1/src'
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT conf_yacc.o -MD -MP -MF ".deps/conf_yacc.Tpo" \
-c -o conf_yacc.o `test -f 'conf_yacc.c' || echo './'`conf_yacc.c; \
then mv -f ".deps/conf_yacc.Tpo" ".deps/conf_yacc.Po"; \
else rm -f ".deps/conf_yacc.Tpo"; exit 1; \
fi
In file included from /usr/local/include/bits/c++config.h:41,
from /usr/local/include/tr1/cstdint:37,
from ../include/stdint.h:37,
from /usr/local/include/mutils/mincludes.h:102,
from /usr/local/include/mhash.h:6,
from ../include/db_config.h:86,
from ../include/report.h:26,
from ../include/aide.h:24,
from ../src/conf_yacc.y:21:
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>Block around the first? You mean []?

Sorry, the source lines around the first error.
Using vi or pr to number the file, paste the lines around line 64 in this file:
/usr/local/include/bits/os_defines.h

You might as well provide the other two locations too.
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

Thank you again.

Okay, from os_defines.h:

/* HP-UX, for reasons unknown choose to use a different name for
the string to [unsigned] long long conversion routines.

Furthermore, instead of having the prototypes in stdlib.h like
everyone else, they put them into a non-standard header
. Ugh.

defines a variety of things, some of which we
probably do not want. So we don't want to include it here.

Luckily we can just declare strtoll and strtoull with the
__asm extension which effectively renames calls at the
source level without namespace pollution.

Also note that the compiler defines _INCLUDE_LONGLONG for C++
unconditionally, which makes intmax_t and uintmax_t long long
types.

We also force _GLIBCXX_USE_LONG_LONG here so that we don't have
to bastardize configure to deal with this sillyness. */
namespace std
{
#ifndef __LP64__
__extension__ extern "C" long long strtoll (const char *, char **, int)
__asm ("__strtoll");
__extension__ extern "C" unsigned long long strtoull (const char *, char **, int)
__asm ("__strtoull");
#else
__extension__ extern "C" long long strtoll (const char *, char **, int)
__asm ("strtol");
__extension__ extern "C" unsigned long long strtoull (const char *, char **, int)
__asm ("strtoul");
#endif
}
............................................

from c++config.h:

/* Define if compatibility should be provided for -mlong-double-64. */
#undef _GLIBCXX_LONG_DOUBLE_COMPAT

// XXX GLIBCXX_ABI Deprecated
// Namespace associations for long double 128 mode.
_GLIBCXX_BEGIN_NAMESPACE(std)
#if defined _GLIBCXX_LONG_DOUBLE_COMPAT && defined __LONG_DOUBLE_128__
# define _GLIBCXX_LDBL_NAMESPACE __gnu_cxx_ldbl128::
# define _GLIBCXX_BEGIN_LDBL_NAMESPACE namespace __gnu_cxx_ldbl128 {
# define _GLIBCXX_END_LDBL_NAMESPACE }
namespace __gnu_cxx_ldbl128 { }
using namespace __gnu_cxx_ldbl128 __attribute__((__strong__));
#else

............................................

from cstdint.h:

#define __STDC_LIMIT_MACROS
#define __STDC_CONSTANT_MACROS
#include

// namespace std::tr1
namespace std
{
_GLIBCXX_BEGIN_NAMESPACE(tr1)

#if defined(__hpux) && !defined(__ia64)
/* Annoyingly, HP-UX 11.11's /usr/include/stdint.h uses
#defines rather than typedefs, which wrecks the
using statements in this namespace. So - -
we have to undef the mess from and
then typedef everything like it should have been */

#undef int8_t
#if 0
typedef signed char int8_t;
#endif
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>from os_defines.h:

(I wanted these fragments numbered so I don't have to count.)

>namespace std

You are doing a C compile and you have C++ headers.

Throw this away and follow my suggestion above:
start with an empty
make sure it has:
#include
#include
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

I created an empty stdint.h in /usr/local/include.

I place the two include header statements in the stdint.h file i just created.

Running the configure, I noticed the config.h was created, not remaining unchanged as in previous configures.

gmake is the same, i have included the files with problems but don't know if it will take more than one at a time
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>I created an empty stdint.h in /usr/local/include.

Did you put those two #include in it? Did you remove all previous stdint.h attempts?

>i have included the files with problems but don't know if it will take more than one at a time

It only included one file, most likely os_defines.h. Again this is a C++ header.
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

There was one unremoved stdint.h in the */aide/include directory. I removed it so only the new one that has the two header files, and the orginal one that existed. The orginal one does not have a path to it.

I ran configure and gmake again, the gmake output was:

# gmake
gmake all-recursive
gmake[1]: Entering directory `/download/aide-0.13.1'
Making all in src
gmake[2]: Entering directory `/download/aide-0.13.1/src'
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT do_md.o -MD -MP -MF ".deps/do_md.Tpo" \
-c -o do_md.o `test -f 'do_md.c' || echo './'`do_md.c; \
then mv -f ".deps/do_md.Tpo" ".deps/do_md.Po"; \
else rm -f ".deps/do_md.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT base64.o -MD -MP -MF ".deps/base64.Tpo" \
-c -o base64.o `test -f 'base64.c' || echo './'`base64.c; \
then mv -f ".deps/base64.Tpo" ".deps/base64.Po"; \
else rm -f ".deps/base64.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT symboltable.o -MD -MP -MF ".deps/symboltable.Tpo" \
-c -o symboltable.o `test -f 'symboltable.c' || echo './'`symboltable.c; \
then mv -f ".deps/symboltable.Tpo" ".deps/symboltable.Po"; \
else rm -f ".deps/symboltable.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT compare_db.o -MD -MP -MF ".deps/compare_db.Tpo" \
-c -o compare_db.o `test -f 'compare_db.c' || echo './'`compare_db.c; \
then mv -f ".deps/compare_db.Tpo" ".deps/compare_db.Po"; \
else rm -f ".deps/compare_db.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT be.o -MD -MP -MF ".deps/be.Tpo" \
-c -o be.o `test -f 'be.c' || echo './'`be.c; \
then mv -f ".deps/be.Tpo" ".deps/be.Po"; \
else rm -f ".deps/be.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT util.o -MD -MP -MF ".deps/util.Tpo" \
-c -o util.o `test -f 'util.c' || echo './'`util.c; \
then mv -f ".deps/util.Tpo" ".deps/util.Po"; \
else rm -f ".deps/util.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT snprintf.o -MD -MP -MF ".deps/snprintf.Tpo" \
-c -o snprintf.o `test -f 'snprintf.c' || echo './'`snprintf.c; \
then mv -f ".deps/snprintf.Tpo" ".deps/snprintf.Po"; \
else rm -f ".deps/snprintf.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT fopen.o -MD -MP -MF ".deps/fopen.Tpo" \
-c -o fopen.o `test -f 'fopen.c' || echo './'`fopen.c; \
then mv -f ".deps/fopen.Tpo" ".deps/fopen.Po"; \
else rm -f ".deps/fopen.Tpo"; exit 1; \
fi
if gcc -DHAVE_CONFIG_H -I. -I. -I.. -I../include -I/usr/local/include -static -g -O2 -static -g -O2 -static -MT aide.o -MD -MP -MF ".deps/aide.Tpo" \
-c -o aide.o `test -f 'aide.c' || echo './'`aide.c; \
then mv -f ".deps/aide.Tpo" ".deps/aide.Po"; \
else rm -f ".deps/aide.Tpo"; exit 1; \
fi
gcc -g -O2 -static -g -O2 -static -s -static -s -o aide conf_yacc.o conf_lex2.o getopt.o getopt1.o gnu_regex.o error.o md.o db.o commandconf.o db_file.o db_disk.o db_lex2.o db_sql.o gen_list.o list.o do_md.o base64.o symboltable.o compare_db.o be.o util.o snprintf.o fopen.o aide.o -lm -lmhash -lz
gmake[2]: Leaving directory `/download/aide-0.13.1/src'
Making all in doc
gmake[2]: Entering directory `/download/aide-0.13.1/doc'
gmake[2]: Nothing to be done for `all'.
gmake[2]: Leaving directory `/download/aide-0.13.1/doc'
gmake[2]: Entering directory `/download/aide-0.13.1'
gmake[2]: Leaving directory `/download/aide-0.13.1'
gmake[1]: Leaving directory `/download/aide-0.13.1'

This looks like it is working!! Is this correct?

make install gives:

# make install
No suffix list.
Making install in src
gcc -g -O2 -static -g -O2 -static -s -static -s -o aide conf_yacc.o conf_lex2.o getopt.o getopt1.o gnu_regex.o error.o md.o db.o commandconf.o db_file.o db_disk.o db_lex2.o db_sql.o gen_list.o list.o do_md.o base64.o symboltable.o compare_db.o be.o util.o snprintf.o fopen.o aide.o -lm -lmhash -lz
/bin/sh ../mkinstalldirs /usr/local/bin
/opt/imake/bin/install -c aide /usr/local/bin/aide
Making install in doc
No suffix list.
cd .. && /bin/sh ./config.status doc/aide.1
config.status: creating doc/aide.1
cd .. && /bin/sh ./config.status doc/aide.conf.5
config.status: creating doc/aide.conf.5
No suffix list.
/bin/sh ../mkinstalldirs /usr/local/share/man/man1
/opt/imake/bin/install -c -m 644 ./aide.1 /usr/local/share/man/man1/aide.1
/bin/sh ../mkinstalldirs /usr/local/share/man/man5
mkdir /usr/local/share/man/man5
/opt/imake/bin/install -c -m 644 ./aide.conf.5 /usr/local/share/man/man5/aide.conf.5
No suffix list.
No suffix list.


Is this good? is the no suffix important?
Dennis Handly
Acclaimed Contributor
Solution

Re: Getting AIDE to work on HP-UX

>This looks like it is working!! Is this correct?

It sure looks like it. No compile or link error.

>Is this good? is the no suffix important?

It seems like it. The warning may just be pedantic.
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

You have been very helpful. Thank you so much! I have increased my knowledge 10 fold trying to get this to work. I hope I will not be so lame in the future. Thanks again!
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>I have increased my knowledge 10 fold trying to get this to work.

It would have been much easier if the configure step detected a missing and provided a plan B if not present.

Is there anyway to provide feedback to the AIDE developers?
Fred K. Abell Jr._1
Regular Advisor

Re: Getting AIDE to work on HP-UX

The original website for AIDE is:
http://www.cs.tut.fi/~rammer/aide.html

but now sourceforge has the responsibility for development.

They can be reached at aide-devel!lists#sourceforge#net
(edited to confuse spambots). I can contact them, but they may
start a conversation beyond my limited abilities. Witch one of us
you like to contact them?
Dennis Handly
Acclaimed Contributor

Re: Getting AIDE to work on HP-UX

>I can contact them, but they may start a conversation beyond my limited abilities. Which one of us you like to contact them?

Better start with you, point to this thread and if they have more questions you can have them contact me.