Skip to content

Build fails (undefined reference to `htokens') #13

@groe

Description

@groe

I am currently running pfix-srsd and it does the SRS forward translations perfectly. However, similar to #9, bounces are rejected ("unknown user"). The problem seems to be that smtpd_recipient_restrictions is not aware of the SRS bounce address and therefore rejects it.

If I understand that correctly, using postlicyd.conf-srs would fix this, but I can't build it unfortunately...

~/pfixtools/postlicyd# make
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".filter.dep .filter.o" -MF .filter.dep -g -c -o .filter.o filter.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".config.dep .config.o" -MF .config.dep -g -c -o .config.o config.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".query.dep .query.o" -MF .query.dep -g -c -o .query.o query.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".resources.dep .resources.o" -MF .resources.dep -g -c -o .resources.o resources.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".db.dep .db.o" -MF .db.dep -g -c -o .db.o db.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".dns.dep .dns.o" -MF .dns.dep -g -c -o .dns.o dns.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".spf-proto.dep .spf-proto.o" -MF .spf-proto.dep -g -c -o .spf-proto.o spf-proto.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".iplist.dep .iplist.o" -MF .iplist.dep -g -c -o .iplist.o iplist.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".greylist.dep .greylist.o" -MF .greylist.dep -g -c -o .greylist.o greylist.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".strlist.dep .strlist.o" -MF .strlist.dep -g -c -o .strlist.o strlist.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".match.dep .match.o" -MF .match.dep -g -c -o .match.o match.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".counter.dep .counter.o" -MF .counter.dep -g -c -o .counter.o counter.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".spf.dep .spf.o" -MF .spf.dep -g -c -o .spf.o spf.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".hang.dep .hang.o" -MF .hang.dep -g -c -o .hang.o hang.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".rate.dep .rate.o" -MF .rate.dep -g -c -o .rate.o rate.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".srs.dep .srs.o" -MF .srs.dep -g -c -o .srs.o srs.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".policy_tokens.dep .policy_tokens.o" -MF .policy_tokens.dep -g -c -o .policy_tokens.o policy_tokens.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".filter_tokens.dep .filter_tokens.o" -MF .filter_tokens.dep -g -c -o .filter_tokens.o filter_tokens.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".hook_tokens.dep .hook_tokens.o" -MF .hook_tokens.dep -g -c -o .hook_tokens.o hook_tokens.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".param_tokens.dep .param_tokens.o" -MF .param_tokens.dep -g -c -o .param_tokens.o param_tokens.c
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".spf_tokens.dep .spf_tokens.o" -MF .spf_tokens.dep -g -c -o .spf_tokens.o spf_tokens.c
rm -f libpostlicyd.a
ar rcs libpostlicyd.a .filter.o .config.o .query.o .resources.o .db.o .dns.o .spf-proto.o .iplist.o .greylist.o .strlist.o .match.o .counter.o .spf.o .hang.o .rate.o .srs.o .policy_tokens.o .filter_tokens.o .hook_tokens.o .param_tokens.o .spf_tokens.o
cc -pipe -O2 -funsigned-char -fstrict-aliasing -Wstrict-aliasing=2 -Wall -Wextra -Werror -Wchar-subscripts -Wundef -Wshadow -Wwrite-strings -Wsign-compare -Wunused -Wno-unused-parameter -Wuninitialized -Winit-self -Wpointer-arith -Wredundant-decls -Wformat-nonliteral -Wno-format-zero-length -Wno-format-y2k -Wmissing-format-attribute -Wsequence-point -Wparentheses -Wmissing-declarations  --std=gnu99 -I../ -I../common -MMD -MT ".main-postlicyd.dep .main-postlicyd.o" -MF .main-postlicyd.dep -g -c -o .main-postlicyd.o main-postlicyd.c
cc -Wl,-warn-common  -o postlicyd .main-postlicyd.o libpostlicyd.a ../common/lib.a -ltokyocabinet   -lev -lpcre -lunbound -lsrs2
.main-postlicyd.o: In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
.main-postlicyd.o: In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `htokens'
.main-postlicyd.o: In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
.main-postlicyd.o: In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `htokens'
libpostlicyd.a(.config.o): In function `config_parse':
/root/pfixtools/postlicyd/config.c:318: undefined reference to `param_tokenize'
libpostlicyd.a(.config.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.config.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
libpostlicyd.a(.query.o): In function `query_parse':
/root/pfixtools/postlicyd/query.c:90: undefined reference to `policy_tokenize'
/root/pfixtools/postlicyd/query.c:91: undefined reference to `policy_tokenize'
libpostlicyd.a(.query.o): In function `query_field_for_name':
/root/pfixtools/postlicyd/query.c:331: undefined reference to `policy_tokenize'
libpostlicyd.a(.query.o): In function `query_format_field_content':
/root/pfixtools/postlicyd/query.c:343: undefined reference to `policy_tokenize'
libpostlicyd.a(.spf.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.spf.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
libpostlicyd.a(.spf.o):/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: more undefined references to `atokens' follow
libpostlicyd.a(.spf-proto.o): In function `spf_next':
/root/pfixtools/postlicyd/spf-proto.c:718: undefined reference to `spftokens'
/root/pfixtools/postlicyd/spf-proto.c:718: undefined reference to `spftokens'
libpostlicyd.a(.spf-proto.o): In function `spf_parse':
/root/pfixtools/postlicyd/spf-proto.c:1440: undefined reference to `spf_rule_tokenize'
libpostlicyd.a(.filter.o): In function `filter_register':
/root/pfixtools/postlicyd/filter.c:141: undefined reference to `filter_tokenize'
libpostlicyd.a(.filter.o): In function `filter_hook_register':
/root/pfixtools/postlicyd/filter.c:157: undefined reference to `hook_tokenize'
libpostlicyd.a(.filter.o): In function `filter_module_init':
/root/pfixtools/postlicyd/filter.c:121: undefined reference to `ftokens'
libpostlicyd.a(.filter.o): In function `filter_param_register':
/root/pfixtools/postlicyd/filter.c:183: undefined reference to `param_tokenize'
libpostlicyd.a(.filter.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
libpostlicyd.a(.filter.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `htokens'
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `htokens'
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `htokens'
libpostlicyd.a(.filter.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
libpostlicyd.a(.filter.o):/usr/include/x86_64-linux-gnu/bits/syslog.h:32: more undefined references to `htokens' follow
libpostlicyd.a(.filter.o): In function `filter_set_type':
/root/pfixtools/postlicyd/filter.c:347: undefined reference to `filter_tokenize'
libpostlicyd.a(.filter.o): In function `filter_add_param':
/root/pfixtools/postlicyd/filter.c:359: undefined reference to `param_tokenize'
libpostlicyd.a(.filter.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.filter.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
libpostlicyd.a(.filter.o): In function `filter_add_hook':
/root/pfixtools/postlicyd/filter.c:390: undefined reference to `hook_tokenize'
libpostlicyd.a(.filter.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
libpostlicyd.a(.filter.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `htokens'
libpostlicyd.a(.filter.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `htokens'
libpostlicyd.a(.filter.o):/usr/include/x86_64-linux-gnu/bits/syslog.h:32: more undefined references to `htokens' follow
libpostlicyd.a(.filter.o): In function `filter_module_init':
/root/pfixtools/postlicyd/filter.c:121: undefined reference to `ftokens'
libpostlicyd.a(.match.o): In function `match_filter_constructor':
/root/pfixtools/postlicyd/match.c:180: undefined reference to `policy_tokenize'
libpostlicyd.a(.match.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.match.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
libpostlicyd.a(.iplist.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.iplist.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
libpostlicyd.a(.iplist.o):/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: more undefined references to `atokens' follow
libpostlicyd.a(.strlist.o): In function `strlist_filter_constructor':
/root/pfixtools/postlicyd/strlist.c:603: undefined reference to `policy_tokenize'
libpostlicyd.a(.strlist.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.strlist.o): In function `fprintf':
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/stdio2.h:98: undefined reference to `atokens'
libpostlicyd.a(.counter.o): In function `syslog':
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
/usr/include/x86_64-linux-gnu/bits/syslog.h:32: undefined reference to `atokens'
libpostlicyd.a(.counter.o):/usr/include/x86_64-linux-gnu/bits/syslog.h:32: more undefined references to `atokens' follow
collect2: ld returned 1 exit status
make: *** [postlicyd] Error 1

I am running Ubuntu 12.04, the latest pfixtools 0.9, gcc 4.6.3, ld 2.22, libsrs2-1.0.18, libunbound-dev 1.4.16-1, libpcre3-8.12-4, libev4-4.11-1, libtokyocainet-1.4.37-6.1build1.

Any ideas?

I would appreciate any help!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions