Running on x64 machine

Use this forum for questions regarding installation, upgrading and configuration of OpenEMM

Moderator: moderator

sunspots
Posts: 2
Joined: Tue Sep 26, 2006 10:18 pm

Running on x64 machine

Post by sunspots »

Hi,
I am considering on installing OpenEMM on a 64 bit Intel machine. Is this possible?

On Sourceforge it mentions it is written in Python, Java & C. So, I'm not sure about the C component. That is most likely the stumbling block.

BTW, I'm considering installing under Ubuntu. The server currently runs Windows Server OS but am considering on partioning for Ubuntu.

Thanks
ud
Posts: 154
Joined: Thu Aug 17, 2006 9:56 am
Location: Munich, Germany
Contact:

Post by ud »

I've no experience with 64 bit linux, but I cannot see a big problem. Either there is a 32 bit compabitility mode which allows running 32 bit binaries or you can install the binary package, compile the C parts from the source package and just install them over the 32 bit binaries.

Compiling should not be a problem as long as you have installed the required libraries. Most of them should be part of your distribution (libxml2, libmilter), some may need to be compiled by yourself (libslang, libsa).

libslang can be found here: ftp://space.mit.edu/pub/davis/slang/v1. ... 4.9.tar.gz

libsa can be found here: ftp://ftp.ossp.org/pkg/lib/sa/sa-1.2.6.tar.gz

-- ud
sunspots
Posts: 2
Joined: Tue Sep 26, 2006 10:18 pm

Post by sunspots »

UD, Thanks for the input.
eshine
Posts: 6
Joined: Fri Jan 23, 2009 10:58 am

compiling smctrl and xmlback on 64bit?

Post by eshine »

Hello

more than 2 years later and I also got hit by this error. Is there any downoad for 64bit linux machines available? Can someone please give me some advice in how to compile 'smctrl' and 'xmlback' to be able to run openemm on a x86_64 linux server? Simply running "make all" doesn't work ;-)

Code: Select all

#make all
gcc -I../lib    -c -o smctrl.o smctrl.c
gcc -L../lib  smctrl.o -o smctrl -lagn
/usr/lib/gcc/x86_64-pc-linux-gnu/4.1.2/../../../../x86_64-pc-linux-gnu/bin/ld: cannot find -lagn
collect2: ld returned 1 exit status
make: *** [smctrl] Error 1
ud
Posts: 154
Joined: Thu Aug 17, 2006 9:56 am
Location: Munich, Germany
Contact:

Post by ud »

Simply change to ../lib, run make there, go back to ../tools and try make again here. Then the previous compilied libagn.a in ../lib should be found.

-- ud
eshine
Posts: 6
Joined: Fri Jan 23, 2009 10:58 am

Post by eshine »

YEAH, YEAH, YEAH!
Thanks. That was easy - and embarrassing that I couldn't find it out by myself ;-).
eshine
Posts: 6
Joined: Fri Jan 23, 2009 10:58 am

Post by eshine »

Sorry, please give me some advice where I can find docs about compiling openemm. smctrl was fine after receiving your tipps but every other step ends up with errors...

Code: Select all

server1 c # cd lib/
server1 lib # make all
gcc -I.   -c -o atob.o atob.c
gcc -I.   -c -o buffer.o buffer.c
gcc -I.   -c -o csig.o csig.c
gcc -I.   -c -o hash.o hash.c
gcc -I.   -c -o lock.o lock.c
gcc -I.   -c -o log.o log.c
gcc -I.   -c -o map.o map.c
gcc -I.   -c -o net.o net.c
gcc -I.   -c -o node.o node.c
gcc -I.   -c -o set.o set.c
gcc -I.   -c -o skip.o skip.c
gcc -I.   -c -o str.o str.c
gcc -I.   -c -o tzdiff.o tzdiff.c
gcc -I.   -c -o var.o var.c
ar rc libagn.a atob.o buffer.o csig.o hash.o lock.o log.o map.o net.o node.o set.o skip.o str.o tzdiff.o var.o
server1 lib # cd ..
server1 c # cd tools/
server1 tools # make all
gcc -I../lib    -c -o smctrl.o smctrl.c
gcc -L../lib  smctrl.o -o smctrl -lagn
gcc -I../lib    -c -o updater.o updater.c
gcc -L../lib  updater.o -o updater -lagn
server1 tools # cd ..
server1 c # cd xmlback/
server1 xmlback # make all
( echo "# ifndef	__VERSION_H" ;			\
	  echo "# define	__VERSION_H		1" ;	\
	  echo "# define	XML_VERSION		\"`grep 'ATTLIST version current' | cut -d\\\" -f2 -s`\"" ; \
	  echo "# endif		/* __VERSION_H */" ;    \
	) < blockmail.dtd > version.h
make[1]: Entering directory `/home/data/tmp/openemm/OpenEMM-5.5.1/src/c/lib'
make[1]: Nothing to be done for `all'.
make[1]: Leaving directory `/home/data/tmp/openemm/OpenEMM-5.5.1/src/c/lib'
make -C grammer all
make[1]: Entering directory `/home/data/tmp/openemm/OpenEMM-5.5.1/src/c/xmlback/grammer'
gcc lemon.c -o lemon
./lemon -c -s parse.y
Parser statistics: 35 terminals, 5 nonterminals, 41 rules
                   113 states, 0 parser table entries, 0 conflicts
gcc -I.. -I../../lib -I/usr/include/libxml2   -c -o transform.o transform.c
gcc -I.. -I../../lib -I/usr/include/libxml2   -c -o parse.o parse.c
rm -f libgrammer.a
ar rc libgrammer.a transform.o parse.o
ranlib libgrammer.a
make[1]: Leaving directory `/home/data/tmp/openemm/OpenEMM-5.5.1/src/c/xmlback/grammer'
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o append.o append.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o block.o block.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o blockmail.o blockmail.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o blockspec.o blockspec.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o codec.o codec.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o convert.o convert.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o count.o count.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o counter.o counter.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o create.o create.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o data.o data.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o dcache.o dcache.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o dyn.o dyn.c
gcc -I. -I../lib -I/usr/include/libxml2 -I/usr/include/slang   -c -o eval.o eval.c
eval.c: In function 'check_error':
eval.c:185: error: 'SLang_Error' undeclared (first use in this function)
eval.c:185: error: (Each undeclared identifier is reported only once
eval.c:185: error: for each function it appears in.)
eval.c: In function 'type_retreive':
eval.c:231: error: 'SLang_Error' undeclared (first use in this function)
eval.c:248: error: too many arguments to function 'SLang_pop_double'
eval.c: In function 'SLdate_setup':
eval.c:477: warning: passing argument 2 of 'SLclass_set_string_function' from incompatible pointer type
eval.c:478: warning: passing argument 2 of 'SLclass_set_destroy_function' from incompatible pointer type
eval.c:479: warning: passing argument 2 of 'SLclass_set_push_function' from incompatible pointer type
eval.c:482: warning: passing argument 3 of 'SLclass_add_binary_op' from incompatible pointer type
eval.c:482: warning: passing argument 4 of 'SLclass_add_binary_op' from incompatible pointer type
eval.c:483: warning: passing argument 3 of 'SLclass_add_binary_op' from incompatible pointer type
eval.c:483: warning: passing argument 4 of 'SLclass_add_binary_op' from incompatible pointer type
eval.c: In function 'SLin':
eval.c:803: error: 'SLang_Error' undeclared (first use in this function)
eval.c:842: error: too many arguments to function 'SLang_pop_double'
eval.c: In function 'SLbetween':
eval.c:902: error: 'SLang_Error' undeclared (first use in this function)
eval.c: In function 'SLdecode':
eval.c:946: error: 'SLang_Error' undeclared (first use in this function)
make: *** [eval.o] Error 1
server1 xmlback # 

Even bav shows errors when trying to compile...

Code: Select all

server1 bav # make all
gcc -I../lib -I/usr/local/include -pthread   -c -o bav.o bav.c
bav.c:28:30: error: libmilter/mfapi.h: No such file or directory
bav.c:201: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'handle_connect'
bav.c:226: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'handle_from'
bav.c:239: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'handle_to'
bav.c:280: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'handle_header'
bav.c:298: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'handle_eom'
bav.c:315: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'handle_close'
bav.c:321: error: variable 'bav' has initializer but incomplete type
bav.c:322: warning: excess elements in struct initializer
bav.c:322: warning: (near initialization for 'bav')
bav.c:323: error: 'SMFI_VERSION' undeclared here (not in a function)
bav.c:323: warning: excess elements in struct initializer
bav.c:323: warning: (near initialization for 'bav')
bav.c:324: error: 'SMFIF_ADDHDRS' undeclared here (not in a function)
bav.c:324: error: 'SMFIF_CHGHDRS' undeclared here (not in a function)
bav.c:324: warning: excess elements in struct initializer
bav.c:324: warning: (near initialization for 'bav')
bav.c:325: error: 'handle_connect' undeclared here (not in a function)
bav.c:325: warning: excess elements in struct initializer
bav.c:325: warning: (near initialization for 'bav')
bav.c:326: warning: excess elements in struct initializer
bav.c:326: warning: (near initialization for 'bav')
bav.c:327: error: 'handle_from' undeclared here (not in a function)
bav.c:327: warning: excess elements in struct initializer
bav.c:327: warning: (near initialization for 'bav')
bav.c:328: error: 'handle_to' undeclared here (not in a function)
bav.c:328: warning: excess elements in struct initializer
bav.c:328: warning: (near initialization for 'bav')
bav.c:329: error: 'handle_header' undeclared here (not in a function)
bav.c:329: warning: excess elements in struct initializer
bav.c:329: warning: (near initialization for 'bav')
bav.c:330: warning: excess elements in struct initializer
bav.c:330: warning: (near initialization for 'bav')
bav.c:331: warning: excess elements in struct initializer
bav.c:331: warning: (near initialization for 'bav')
bav.c:332: error: 'handle_eom' undeclared here (not in a function)
bav.c:332: warning: excess elements in struct initializer
bav.c:332: warning: (near initialization for 'bav')
bav.c:333: warning: excess elements in struct initializer
bav.c:333: warning: (near initialization for 'bav')
bav.c:334: error: 'handle_close' undeclared here (not in a function)
bav.c:336: warning: excess elements in struct initializer
bav.c:336: warning: (near initialization for 'bav')
bav.c: In function 'main':
bav.c:416: error: 'bav' has an incomplete type
bav.c:416: error: 'MI_FAILURE' undeclared (first use in this function)
bav.c:416: error: (Each undeclared identifier is reported only once
bav.c:416: error: for each function it appears in.)
make: *** [bav.o] Error 1

Post Reply