POCO链接错误,OS X 10.11.2上的体系结构x86_64的未定义符号

时间:2016-01-02 04:32:26

标签: c++ linker g++ clang poco-libraries

我使用Homebrew安装了POCO 有人建议使用stdlibc ++,但是当我这样做时,除了POCO链接错误之外,我还会得到一堆std链接错误。
我也尝试使用Homebrew的gcc中的g ++而不是Apple的g ++,但这也给出了同样的错误。

Makefile

<div ID="X">Test</div>
<script>
var x=document.getElementById("X");
x.style.width='200px';
x.style.height='200px';
x.style.border='2px solid #FF0';
x.style.border='2px outset #000';
alert(x.style.borderStyle);
</script>

错误

CXX=g++
RM=rm -f
CXXFLAGS=-std=c++11 -Wall -O3 -I/usr/local/opt/openssl/include -I/usr/local/Cellar/poco/1.6.1/include
LDFLAGS=-L/usr/local/opt/openssl/lib -L/usr/local/Cellar/poco/1.6.1/lib
LDLIBS=-lPocoNet -lPocoFoundation

SRCS=eml.cc
OBJS=$(subst .cc,.o,$(SRCS))

all: eml

eml: $(OBJS)
    $(CXX) $(CXXFLAGS) $(LDFLAGS) -o eml $(OBJS) $(LDLIBS)

%.o: %.c
    $(CXX) $(CXXFLAGS) -c $< -o $@

clean:
    $(RM) eml $(OBJS)

1 个答案:

答案 0 :(得分:0)

您没有链接所有必需的库。所有未解决的问题 符号在libPocoNetSSL中定义。要安装此库,您必须构建 POCO库的完整版,而不是基本版本。

如果您查阅任何POCO API的文档,它将告诉您需要链接的库, 例如Poco::Net::SSLManager::initializeClient