cannot compile on Ubuntu 13.10

Issue #271 closed
Robert Chavers created an issue

I just upgraded my piler setup v1.23 on Ubuntu 13.04 to Ubuntu 13.10. However, I cannot compile either v1.23 or v1.24 on Ubuntu 13.10. The errors are as follows when running "make":

make[1]: Entering directory `/zfs1/piler/home/downloads/piler-0.1.24/src'
gcc -O2 -Wall -g  -I. -I..  -I/usr/include/mysql -DBIG_JOINS=1  -fno-strict-aliasing   -g -DNDEBUG -D_GNU_SOURCE -DHAVE_TRE -DNEED_MYSQL -o pilerconf pilerconf.c -lpiler -lz -lm -ldl -lcrypto -lssl -ltre -lzip -lwrap -lnsl   -L/usr/lib/x86_64-linux-gnu -lmysqlclient_r -lpthread -lz -lm -ldl -L.  -L/usr/include/openssl -L/usr/include
./libpiler.so: undefined reference to `SSL_get_error'
./libpiler.so: undefined reference to `CRYPTO_free'
./libpiler.so: undefined reference to `SSL_get_wfd'
./libpiler.so: undefined reference to `SSL_write'
./libpiler.so: undefined reference to `SSL_free'
./libpiler.so: undefined reference to `SSL_set_fd'
./libpiler.so: undefined reference to `X509_NAME_oneline'
./libpiler.so: undefined reference to `X509_get_subject_name'
./libpiler.so: undefined reference to `X509_get_issuer_name'
./libpiler.so: undefined reference to `SHA256_Init'
./libpiler.so: undefined reference to `SSL_library_init'
./libpiler.so: undefined reference to `EVP_CIPHER_CTX_init'
./libpiler.so: undefined reference to `SSL_read'
./libpiler.so: undefined reference to `ERR_error_string_n'
./libpiler.so: undefined reference to `SSL_new'
./libpiler.so: undefined reference to `SSL_shutdown'
./libpiler.so: undefined reference to `EVP_EncryptUpdate'
./libpiler.so: undefined reference to `ERR_free_strings'
./libpiler.so: undefined reference to `SSLv3_client_method'
./libpiler.so: undefined reference to `SSL_accept'
./libpiler.so: undefined reference to `SSL_CTX_new'
./libpiler.so: undefined reference to `SSL_get_peer_certificate'
./libpiler.so: undefined reference to `EVP_DecryptInit_ex'
./libpiler.so: undefined reference to `EVP_EncryptFinal_ex'
./libpiler.so: undefined reference to `EVP_EncryptInit_ex'
./libpiler.so: undefined reference to `SHA256_Final'
./libpiler.so: undefined reference to `EVP_DecryptFinal'
./libpiler.so: undefined reference to `X509_free'
./libpiler.so: undefined reference to `SSL_connect'
./libpiler.so: undefined reference to `SSL_CTX_free'
./libpiler.so: undefined reference to `SSL_load_error_strings'
./libpiler.so: undefined reference to `SHA256_Update'
./libpiler.so: undefined reference to `ERR_get_error'
./libpiler.so: undefined reference to `EVP_bf_cbc'
./libpiler.so: undefined reference to `EVP_DecryptUpdate'
./libpiler.so: undefined reference to `SSL_get_rfd'
./libpiler.so: undefined reference to `EVP_CIPHER_CTX_cleanup'
collect2: error: ld returned 1 exit status
make[1]: *** [pilerconf] Error 1
make[1]: Leaving directory `/zfs1/piler/home/downloads/piler-0.1.24/src'
make: *** [all-recursive] Error 1

Comments (5)

  1. Robert Chavers reporter

    I changed the src/Makefile to this:

    libpiler.a: $(OBJS) $(SQL_OBJS)
            ar cr libpiler.a $(OBJS) $(SQL_OBJS)
            ranlib libpiler.a
            $(CC) -shared -o libpiler.so.$(LIBPILER_VERSION) $(OBJS) $(SQL_OBJS) $(LIBS)
            ln -sf libpiler.so.$(LIBPILER_VERSION) libpiler.so
            ln -sf libpiler.so.$(LIBPILER_VERSION) libpiler.so.$(PILER_VERSION)
    

    NOTE: I added $(LIBS) at the end of the $(CC) line.

    It seems to compile. I'll test and get back to you on the results.

  2. Robert Chavers reporter

    Well, after "fixing" the libpiler.so issue, piler would segfault when staring. I decided to bite the bullet and upgrade to the master branch. I still had to "fix" libpiler.a by adding $(LIBS), but at least piler does not segfault when opening.

    You can probably close this issue, but the only way to compile on ubuntu 13.10 is to add $(LIBS) as explained above.

  3. Log in to comment