On Wednesday, February 18, 2015 at 1:31:07 PM UTC-5, Rajiv Poplai wrote:
>
> I created libcrypto.a of CCryptopp 5.6.1 on Mac OS 10.9 using GNUmakefile.
> Subsequently when I link it in my project in XCode 5.1.1, I get the 
> following linker error.
>
> CryptoPP:RandomPool::GenerateIntoBufferedTransformation symbol not found.
>
> Can anybody help me with this issue.
>
Xcode uses LLVM's libc++ by default. By default, Crpyto++'s GNUmakefile 
omits CXXFLAGS += -std=libc++, so it uses GNU's libstdc++. The following is 
from around line 90:

ifeq ($(UNAME),Darwin)
  AR = libtool
  ARFLAGS = -static -o
  CXX = c++
  IS_GCC2 = $(shell $(CXX) -v 2>&1 | $(EGREP) -c gcc-932)
  ifeq ($(IS_GCC2),1)
    CXXFLAGS += -fno-coalesce-templates -fno-coalesce-static-vtables
    LDLIBS += -lstdc++
    LDFLAGS += -flat_namespace -undefined suppress -m
  endif
endif

So you will either need to:

  (1) Change Xcode to use GNU's libstdc++
  (2) Rebuild Crypto++ to use LLVM's libc++

To perform (1), change the setting in the Target's build settings.

To perform (2), open the GNUmakefile and add CXXFLAGS += -std=libc++ after 
one of he Darwin tests (search for Darwin). And get rid of the line:

    LDLIBS += -lstdc++

Jeff

-- 
-- 
You received this message because you are subscribed to the "Crypto++ Users" 
Google Group.
To unsubscribe, send an email to cryptopp-users-unsubscr...@googlegroups.com.
More information about Crypto++ and this group is available at 
http://www.cryptopp.com.
--- 
You received this message because you are subscribed to the Google Groups 
"Crypto++ Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cryptopp-users+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to