Demo Discussion
Forum Config Examples Contributions Vulnerabilities
  Discussion forum about ELOG  Not logged in ELOG logo
icon5.gif   Compilation failure on Mac OSX 10.9, posted by A.G. Schubert on Tue Nov 5 23:21:52 2013 
    icon2.gif   Re: Compilation failure on Mac OSX 10.9, posted by Stefan Ritt on Wed Nov 6 09:04:32 2013 
       icon2.gif   Re: Compilation failure on Mac OSX 10.9, posted by A.G. Schubert on Thu Nov 7 02:18:17 2013 
          icon2.gif   Re: Compilation failure on Mac OSX 10.9, posted by Stefan Ritt on Thu Nov 7 08:08:12 2013 
             icon2.gif   Re: Compilation failure on Mac OSX 10.9, posted by Ed McNichol on Tue Jan 14 05:19:47 2014 
                icon2.gif   Re: Compilation failure on Mac OSX 10.9, posted by Stefan Ritt on Tue Jan 14 08:15:19 2014 
Message ID: 67651     Entry time: Tue Jan 14 08:15:19 2014     In reply to: 67650
Icon: Reply  Author: Stefan Ritt  Author Email: stefan.ritt@psi.ch 
Category: Bug report  OS: Mac OSX  ELOG Version: 2.9.2-2494 
Subject: Re: Compilation failure on Mac OSX 10.9 

Ed McNichol wrote:

Stefan Ritt wrote:

A.G. Schubert wrote:

Stefan Ritt wrote:

A.G. Schubert wrote:

When compiling elog on OSX 10.9 (Mavericks), I get the error below.

Elog will compile without error if I add -D_FORTIFY_SOURCE=0 to CFLAGS in Makefile, but I'm not sure whether this is a good idea.

All over sudden gcc comes with its own version of "strlcpy", which I had defined "manually" since many years inside ELOG. Using -DFORTIFY_SOURCE=0 will not harm, so you can use it. The "real" solution is to take our ELOG's strlcpy/strlcat, which I did on the current SVN version.

Best regards,
Stefan 

Ok, I tried updating my SVN working copy, but I didn't get any updates past elog rev. 2494, mxml rev. 74.  I undid my changes to Makefile, tried to compile, but got the same errors.  

I then pulled down elog and mxml with git, and these are working for me with no errors.  Thanks!

SVN is obsolete and will NOT be maintained any more, since we completely switched to GIT. Actually I will disable the service soon. 

 I too am having issues installing on Mac OS X 10.9.1. I changed CFLAGS in makefile to;

CFLAGS += -O3 -funroll-loops -fomit-frame-pointer -W -Wall -D_FORTIFY_SOURCE=0

I get many lines of errors like this when I run make;

/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.9.sdk/usr/include/openssl/ssl.h:1491:6: note: 'SSL_accept' declared here

int     SSL_accept(SSL *ssl) DEPRECATED_IN_MAC_OS_X_VERSION_10_7_AND_LATER;

        ^

src/elogd.c:28809:19: warning: 'SSL_set_fd' is deprecated: first deprecated in OS X 10.7 [-Wdeprecated-declarations]

                  SSL_set_fd(ka_ssl_con[i_min], ka_sock[i_min]);

 

                  ^

 

If you would use the Makefile from the GIT repository there would be no errors under OS X 10.9.1:

/elog$ make                                                                                                                                                                 
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -w -c -o crypt.o src/crypt.c                                         
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -o elog src/elog.c crypt.o -lssl                                     
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -w -c -o regex.o src/regex.c                                         
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -w -c -o auth.o src/auth.c                                           
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -c -o mxml.o ../mxml/mxml.c                                          
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -c -o strlcpy.o ../mxml/strlcpy.c                                    
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -o elogd src/elogd.c crypt.o auth.o regex.o mxml.o strlcpy.o -lssl   
cc -O3 -funroll-loops -fomit-frame-pointer -W -Wall -Wno-deprecated-declarations -I../mxml  -DHAVE_SSL -o elconv src/elconv.c -lssl                                         
/elog$                                                                                                                                                                      

Actually what you need is -Wno-deprecated-declarations to suppress the warnings. The open SSL functions will at some point be removed from OSX, they have their own implementation of SSL. So then we either have to ship openSSL together with elog or use Apple's implementatoin. But for now we are still fine.

/Stefan

 

 

ELOG V3.1.5-fe60aaf