freebsd에서 __stack_chk_guard에 관한 문의입니다
컴파일 스크립트는 다음과 같습니다.
근데 아무리 봐도 __stack_chk_guard와 __stack_chk_fail이 어떤 에러인지 잘 모르겠습니다.
gcc -o okname okname.o stdsoap2.o dom.o soapC.o soapClient.o okname_IPIN_DEC.o okname_IPIN_KEY.o okname_IPIN_RN.o okname_RN.o oknametypes.o datetime.o logf.o ipcheck.o profile.o okname_RN_core.o jstrtok.o okname_IPIN_ENC.o IconvString.o okname_AUTH_POPUP.o -g -static -D_DEBUG -DFREEBSD -I. -I/home/kcb/iconv-2.0_3/include -L../lib/freebsd -lcytrop_lib -L/home/kcb/iconv-2.0_3/lib -lbiconv -lc -lcompat
/home/kcb/iconv-2.0_3/lib/libbiconv.a(aliases.o)(.text+0x1e1): In function `iconv_get_aliases':
: undefined reference to `__stack_chk_guard'
/home/kcb/iconv-2.0_3/lib/libbiconv.a(aliases.o)(.text+0x206): In function `iconv_get_aliases':
: undefined reference to `__stack_chk_guard'
/home/kcb/iconv-2.0_3/lib/libbiconv.a(aliases.o)(.text+0x421): In function `iconv_get_aliases':
: undefined reference to `__stack_chk_fail'
/home/kcb/iconv-2.0_3/lib/libbiconv.a(ccs.o)(.text+0x2a1): In function `iconv_ccs_init':
: undefined reference to `__stack_chk_guard'
/home/kcb/iconv-2.0_3/lib/libbiconv.a(ccs.o)(.text+0x305): In function `iconv_ccs_init':
: undefined reference to `__stack_chk_guard'
/home/kcb/iconv-2.0_3/lib/libbiconv.a(ccs.o)(.text+0x44c): In function `iconv_ccs_init':
: undefined reference to `__stack_chk_fail'
[자답] 그냥 libiconv를 --enable-static으로 직접컴파일
그냥 libiconv를 --enable-static으로 직접컴파일 하였습니다.
아까는 biconv라고 freebsd 전용 컴파일 된 라이브러리를 사용했거든요.
./configure --prefix=/home/kcb/libiconv --enable-static=yes
make
make install
----
내 블로그: http://yegam400.tistory.com
----
내 블로그: http://yegam400.tistory.com
-fstack-protector
제가 BSD 쪽은 잘 모르지만..;;
해당 오류 메시지는 libssp에 관련된 것 같습니다.
gcc가 4.1 버전 이상이라면 실행 시 -fstack-protector 옵션을 주면 도움이 될지도.. ;;
그 옵션을 써봣었는데..
biconv가 더 높은 버전의 gcc로 컴파일 되어 있어서 무용지물이었습니다.
고객의 서버라서 설치할수도 없고 위의 방법으로 해결했어요^^
감사합니다.
----
내 블로그: http://yegam400.tistory.com
----
내 블로그: http://yegam400.tistory.com
댓글 달기