g++ 4 이상일 때에는 -fvisibility=hidden -fvisibility-inlines-hidden을 on하게 되어있는데, 이 옵션들을 on하면, vtable 에서 함수들을 찾을 수 없다는 에러 메시지가 나오고, link도 당연히 안 된다.
(이 옵션이 on이면 뭐가 좋긴한 것 같은데.. 잘은 모르겠음)
아래처럼 두 개의 옵션을 지우고, 모든 라이브러리를 재컴파일하면 문제 해결.
~/ACE/ACE_wrappers/include/makeinclude]vi platform_g++_common.GNU
1
2
3
4
5
6
7
8
9
10
11
12
13
|
# Take advantage of G++ (>= 4.x) visibility attributes to generate
# improved shared library binaries.
ifeq ($(GXX_4_OR_BETTER), 1)
ifneq ($(no_hidden_visibility),1)
# CCFLAGS += -fvisibility=hidden -fvisibility-inlines-hidden
CCFLAGS +=
ifeq ($(gcc_template_instantiation_visibility),1)
CCFLAGS += -DACE_GCC_HAS_TEMPLATE_INSTANTIATION_VISIBILITY_ATTRS=1
endif # gcc_template_instantiation_visibility
else
CPPFLAGS += -DACE_HAS_CUSTOM_EXPORT_MACROS=0
endif # no_hidden_visibility
endif # GXX_4_OR_BETTER == 1
|
cs |
'인터넷/모바일 > 머신러닝' 카테고리의 다른 글
nvidia docker 재설치 (0) | 2023.05.10 |
---|---|
괜찮은 python용 progressive bar (1) | 2020.02.05 |
anaconda 환경에서 ImportError: No module named pandas 해결법. (0) | 2019.08.07 |
conda create 할 때에 https (SSL) 관련 에러가 나는 경우의 해결 방법 #2 (0) | 2019.08.06 |
python에서 소스 코드 이름과 라인 번호 출력하기 (0) | 2019.02.13 |