Project

General

Profile

Actions

Task #2375

closed

Jenkins fails build during OpenSSL linking

Added by Vince Lehman over 9 years ago. Updated over 9 years ago.

Status:
Closed
Priority:
Urgent
Assignee:
-
Target version:
-
Start date:
01/13/2015
Due date:
% Done:

100%

Estimated time:

Description

On OSX 10.9

[67/71] Linking build/unit-tests-nsync
Undefined symbols for architecture x86_64:
  "_EVP_DigestFinal_ex", referenced from:
  Sync::Digest::finalize() in sync-digest.cc.2.o
  "_EVP_DigestInit_ex", referenced from:
      Sync::Digest::reset() in sync-digest.cc.2.o
  "_EVP_DigestUpdate", referenced from:
      Sync::Digest::update(unsigned char const*, unsigned long) in sync-digest.cc.2.o
  "_EVP_MD_CTX_create", referenced from:
      Sync::Digest::Digest() in sync-digest.cc.2.o
  "_EVP_MD_CTX_destroy", referenced from:
      Sync::Digest::~Digest() in sync-digest.cc.2.o
  "_EVP_sha256", referenced from:
      Sync::Digest::reset() in sync-digest.cc.2.o
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Waf: Leaving directory `/Users/jenkins/workspace/NLSR/label/OSX-10.9-64bit/build'
Build failed

On Ubuntu 12.04

[67/71] Linking build/bin/nlsr
nsync/sync-digest.cc.2.o: In function `Digest':
/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build/../nsync/sync-digest.cc:102: undefined reference to `EVP_MD_CTX_create'
nsync/sync-digest.cc.2.o: In function `~Digest':
/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build/../nsync/sync-digest.cc:109: undefined reference to `EVP_MD_CTX_destroy'
nsync/sync-digest.cc.2.o: In function `Sync::Digest::reset()':
/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build/../nsync/sync-digest.cc:134: undefined reference to `EVP_sha256'
/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build/../nsync/sync-digest.cc:134: undefined reference to `EVP_DigestInit_ex'
nsync/sync-digest.cc.2.o: In function `Sync::Digest::finalize()':
/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build/../nsync/sync-digest.cc:151: undefined reference to `EVP_DigestFinal_ex'
nsync/sync-digest.cc.2.o: In function `Sync::Digest::update(unsigned char const*, unsigned long)':
/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build/../nsync/sync-digest.cc:200: undefined reference to `EVP_DigestUpdate'
collect2: ld returned 1 exit status

Waf: Leaving directory `/home/jenkins/workspace/NLSR/label/Ubuntu-12.04-64bit/build'
Build failed

Related issues 1 (0 open1 closed)

Related to NLSR - Task #2400: Determine the necessary changes to use current Chronosync as dependencyClosedAshlesh Gawande01/20/2015

Actions
Actions #1

Updated by Alex Afanasyev over 9 years ago

This is because ndn-cxx dropped openssl dependency, as it is not used internally.

My personal recommendation: drop all usages of openssl inside NLSR (it is in chronosync part).

Quick fix: add conf.check_openssl() in configure section of wscript. I would also recommend replace .waf-tools/openssl.py from ndn-cxx (the one was removed recently).

Actions #2

Updated by Vince Lehman over 9 years ago

  • Status changed from New to Code review
  • % Done changed from 0 to 90

Ok, I've posted a patch using the quick fix.

I think the eventual goal will be to just use Chronosync as a dependency instead of maintaining our own version.

Actions #3

Updated by Vince Lehman over 9 years ago

  • Status changed from Code review to Closed
  • % Done changed from 90 to 100
Actions #4

Updated by Ashlesh Gawande over 7 years ago

  • Related to Task #2400: Determine the necessary changes to use current Chronosync as dependency added
Actions

Also available in: Atom PDF