linux下链接出现undefined reference to错误

下边第一条评论是编译时的输出内容,小弟是在是找不到问题出现在那里了,求大神指点下

3个回答

undefined reference to 的意思是对声明进行未定义的引用,如果你引用了其它库,你检查一下是否安装了那个库,检查一下路径配置之类的

u010128242
折翅的飞蛾 感谢你回答哦`
接近 2 年之前 回复

**1>------ 已启动全部重新生成: 项目: ServDemo, 配置: Release x64 ------
1> Cleaning remote project directory
1> Validating architecture
1> Validating sources
1> Copying sources remotely to '128.6.1.197'
1> Starting remote build
1> Compiling sources:
1> CService.cpp
1> Service.cpp
1> Linking objects
1> GNU ld version 2.20.51.0.2-5.44.el6 20100205
1> Supported emulations:
1> elf_x86_64
1> elf_i386
1> i386linux
1> elf_l1om
1> using internal linker script:
1> ==================================================
1> /* Script for --shared -z combreloc -z now -z relro: shared library, combine & sort relocs /
1> OUTPUT_FORMAT("elf64-x86-64", "elf64-x86-64",
1> "elf64-x86-64")
1> OUTPUT_ARCH(i386:x86-64)
1> ENTRY(_start)
1> SEARCH_DIR("/usr/x86_64-redhat-linux/lib64"); SEARCH_DIR("/usr/local/lib64"); SEARCH_DIR("/lib64"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/x86_64-redhat-linux/lib"); SEARCH_DIR("/usr/lib64"); SEARCH_DIR("/usr/local/lib"); SEARCH_DIR("/lib"); SEARCH_DIR("/usr/lib");
1> SECTIONS
1> {
1> /
Read-only sections, merged into text segment: /
1> . = SEGMENT_START("text-segment", 0) + SIZEOF_HEADERS;
1> .note.gnu.build-id : { *(.note.gnu.build-id) }
1> .hash : { *(.hash) }
1> .gnu.hash : { *(.gnu.hash) }
1> .dynsym : { *(.dynsym) }
1> .dynstr : { *(.dynstr) }
1> .gnu.version : { *(.gnu.version) }
1> .gnu.version_d : { *(.gnu.version_d) }
1> .gnu.version_r : { *(.gnu.version_r) }
1> .rela.dyn :
1> {
1> *(.rela.init)
1> *(.rela.text .rela.text.
.rela.gnu.linkonce.t.*)
1> (.rela.fini)
1> *(.rela.rodata .rela.rodata.
.rela.gnu.linkonce.r.*)
1> (.rela.data .rela.data. .rela.gnu.linkonce.d.*)
1> (.rela.tdata .rela.tdata. .rela.gnu.linkonce.td.*)
1> (.rela.tbss .rela.tbss. .rela.gnu.linkonce.tb.*)
1> (.rela.ctors)
1> *(.rela.dtors)
1> *(.rela.got)
1> *(.rela.sharable_data .rela.sharable_data.
.rela.gnu.linkonce.shrd.*)
1> (.rela.sharable_bss .rela.sharable_bss. .rela.gnu.linkonce.shrb.*)
1> (.rela.bss .rela.bss. .rela.gnu.linkonce.b.*)
1> (.rela.ldata .rela.ldata. .rela.gnu.linkonce.l.*)
1> (.rela.lbss .rela.lbss. .rela.gnu.linkonce.lb.*)
1> (.rela.lrodata .rela.lrodata. .rela.gnu.linkonce.lr.*)
1> (.rela.ifunc)
1> }
1> .rela.plt :
1> {
1> *(.rela.plt)
1> *(.rela.iplt)
1> }
1> .init :
1> {
1> KEEP (
(.init))
1> } =0x90909090
1> .plt : { (.plt) *(.iplt) }
1> .text :
1> {
1> *(.text.unlikely .text.
_unlikely)
1> (.text .stub .text. .gnu.linkonce.t.*)
1> /* .gnu.warning sections are handled specially by elf32.em. /
1> *(.gnu.warning)
1> } =0x90909090
1> .fini :
1> {
1> KEEP (
(.fini))
1> } =0x90909090
1> PROVIDE (__etext = .);
1> PROVIDE (_etext = .);
1> PROVIDE (etext = .);
1> .rodata : { (.rodata .rodata. .gnu.linkonce.r.*) }
1> .rodata1 : { (.rodata1) }
1> .eh_frame_hdr : { *(.eh_frame_hdr) }
1> .eh_frame : ONLY_IF_RO { KEEP (
(.eh_frame)) }
1> .gcc_except_table : ONLY_IF_RO { (.gcc_except_table .gcc_except_table.) }
1> /* Adjust the address for the data segment. We want to adjust up to
1> the same address within the page on the next page up. /
1> . = ALIGN (CONSTANT (MAXPAGESIZE)) - ((CONSTANT (MAXPAGESIZE) - .) & (CONSTANT (MAXPAGESIZE) - 1)); . = DATA_SEGMENT_ALIGN (CONSTANT (MAXPAGESIZE), CONSTANT (COMMONPAGESIZE));
1> /
Exception handling /
1> .eh_frame : ONLY_IF_RW { KEEP (
(.eh_frame)) }
1> .gcc_except_table : ONLY_IF_RW { (.gcc_except_table .gcc_except_table.) }
1> /* Thread Local Storage sections /
1> .tdata : { *(.tdata .tdata.
.gnu.linkonce.td.*) }
1> .tbss : { (.tbss .tbss. .gnu.linkonce.tb.*) (.tcommon) }
1> .preinit_array :
1> {
1> KEEP (
(.preinit_array))
1> }
1> .init_array :
1> {
1> KEEP (*(SORT(.init_array.*)))
1> KEEP (*(.init_array))
1> }
1> .fini_array :
1> {
1> KEEP (*(.fini_array))
1> KEEP (*(SORT(.fini_array.*)))
1> }
1> .ctors :
1> {
1> /* gcc uses crtbegin.o to find the start of
1> the constructors, so we make sure it is
1> first. Because this is a wildcard, it
1> doesn't matter if the user does not
1> actually link against crtbegin.o; the
1> linker won't look for a file to match a
1> wildcard. The wildcard also means that it
1> doesn't matter which directory crtbegin.o
1> is in. /
1> KEEP (*crtbegin.o(.ctors))
1> KEEP (*crtbegin?.o(.ctors))
1> /
We don't want to include the .ctor section from
1> the crtend.o file until after the sorted ctors.
1> The .ctor section from the crtend file contains the
1> end of ctors marker and it must be last /
1> KEEP (
(EXCLUDE_FILE (*crtend.o crtend?.o ) .ctors))
1> KEEP (
(SORT(.ctors.*)))
1> KEEP (*(.ctors))
1> }
1> .dtors :
1> {
1> KEEP (*crtbegin.o(.dtors))
1> KEEP (*crtbegin?.o(.dtors))
1> KEEP (*(EXCLUDE_FILE (*crtend.o crtend?.o ) .dtors))
1> KEEP (
(SORT(.dtors.*)))
1> KEEP (*(.dtors))
1> }
1> .jcr : { KEEP (*(.jcr)) }
1> .data.rel.ro : { (.data.rel.ro.local .gnu.linkonce.d.rel.ro.local.*) (.data.rel.ro .gnu.linkonce.d.rel.ro.*) }
1> .dynamic : { (.dynamic) }
1> .got : { *(.got.plt) *(.igot.plt) *(.got) *(.igot) }
1> . = DATA_SEGMENT_RELRO_END (0, .);
1> .data :
1> {
1> *(.data .data.
.gnu.linkonce.d.*)
1> SORT(CONSTRUCTORS)
1> }
1> .data1 : { (.data1) }
1> /
Sharable data sections. /
1> .sharable_data : ALIGN(CONSTANT (MAXPAGESIZE))
1> {
1> PROVIDE_HIDDEN (__sharable_data_start = .);
1> *(.sharable_data .sharable_data.
.gnu.linkonce.shrd.*)
1> /* Align here to ensure that the sharable data section ends at the
1> page boundary. /
1> . = ALIGN(. != 0 ? CONSTANT (MAXPAGESIZE) : 1);
1> PROVIDE_HIDDEN (__sharable_data_end = .);
1> }
1> _edata = .; PROVIDE (edata = .);
1> __bss_start = .;
1> .bss :
1> {
1> *(.dynbss)
1> *(.bss .bss.
.gnu.linkonce.b.*)
1> (COMMON)
1> /
Align here to ensure that the .bss section occupies space up to
1> end. Align after .bss to ensure correct alignment even if the
1> .bss section disappears because there are no input sections.
1> FIXME: Why do we need it? When there is no .bss section, we don't
1> pad the .data section. /
1> . = ALIGN(. != 0 ? 64 / 8 : 1);
1> }
1> .lbss :
1> {
1> *(.dynlbss)
1> *(.lbss .lbss.
.gnu.linkonce.lb.*)
1> (LARGE_COMMON)
1> }
1> /
Sharable bss sections */
1> .sharable_bss : ALIGN(CONSTANT (MAXPAGESIZE))
1> {
1> PROVIDE_HIDDEN (
_sharable_bss_start = .);
1> (.dynsharablebss)
1> *(.sharable_bss .sharable_bss.
.gnu.linkonce.shrb.*)
1> (SHARABLE_COMMON)
1> /
Align here to ensure that the sharable bss section ends at the
1> page boundary. /
1> . = ALIGN(. != 0 ? CONSTANT (MAXPAGESIZE) : 1);
1> PROVIDE_HIDDEN (__sharable_bss_end = .);
1> }
1> . = ALIGN(64 / 8);
1> .lrodata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) :
1> {
1> *(.lrodata .lrodata.
.gnu.linkonce.lr.*)
1> }
1> .ldata ALIGN(CONSTANT (MAXPAGESIZE)) + (. & (CONSTANT (MAXPAGESIZE) - 1)) :
1> {
1> (.ldata .ldata. .gnu.linkonce.l.*)
1> . = ALIGN(. != 0 ? 64 / 8 : 1);
1> }
1> . = ALIGN(64 / 8);
1> end = .; PROVIDE (end = .);
1> . = DATA_SEGMENT_END (.);
1> /* Stabs debugging sections. /
1> .stab 0 : { *(.stab) }
1> .stabstr 0 : { *(.stabstr) }
1> .stab.excl 0 : { *(.stab.excl) }
1> .stab.exclstr 0 : { *(.stab.exclstr) }
1> .stab.index 0 : { *(.stab.index) }
1> .stab.indexstr 0 : { *(.stab.indexstr) }
1> .comment 0 : { *(.comment) }
1> /
DWARF debug sections.
1> Symbols in the DWARF debugging sections are relative to the beginning
1> of the section so we begin them at 0. /
1> /
DWARF 1 /
1> .debug 0 : { *(.debug) }
1> .line 0 : { *(.line) }
1> /
GNU DWARF 1 extensions /
1> .debug_srcinfo 0 : { *(.debug_srcinfo) }
1> .debug_sfnames 0 : { *(.debug_sfnames) }
1> /
DWARF 1.1 and DWARF 2 /
1> .debug_aranges 0 : { *(.debug_aranges) }
1> .debug_pubnames 0 : { *(.debug_pubnames) }
1> /
DWARF 2 /
1> .debug_info 0 : { *(.debug_info .gnu.linkonce.wi.
) }
1> .debug_abbrev 0 : { (.debug_abbrev) }
1> .debug_line 0 : { *(.debug_line) }
1> .debug_frame 0 : { *(.debug_frame) }
1> .debug_str 0 : { *(.debug_str) }
1> .debug_loc 0 : { *(.debug_loc) }
1> .debug_macinfo 0 : { *(.debug_macinfo) }
1> /
SGI/MIPS DWARF 2 extensions /
1> .debug_weaknames 0 : { *(.debug_weaknames) }
1> .debug_funcnames 0 : { *(.debug_funcnames) }
1> .debug_typenames 0 : { *(.debug_typenames) }
1> .debug_varnames 0 : { *(.debug_varnames) }
1> /
DWARF 3 /
1> .debug_pubtypes 0 : { *(.debug_pubtypes) }
1> .debug_ranges 0 : { *(.debug_ranges) }
1> .gnu.attributes 0 : { KEEP (
(.gnu.attributes)) }
1> /DISCARD/ : { *(.note.GNU-stack) *(.gnu_debuglink) *(.gnu.lto
*) }
1> }
1>
1>
1> ==================================================
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crti.o succeeded
1> /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crti.o
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtbeginS.o succeeded
1> /usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtbeginS.o
1> attempt to open /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o succeeded
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o
1> attempt to open /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/Service.o succeeded
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/Service.o
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libz.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libz.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libz.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libz.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libz.so succeeded
1> -lz (/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libz.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libTCClient.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libTCClient.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libTCClient.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libTCClient.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libTCClient.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libTCClient.a failed
1> attempt to open /lib/../lib64/libTCClient.so failed
1> attempt to open /lib/../lib64/libTCClient.a failed
1> attempt to open /usr/lib/../lib64/libTCClient.so failed
1> attempt to open /usr/lib/../lib64/libTCClient.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../libTCClient.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../libTCClient.a failed
1> attempt to open /data/enoit-server/ObjServ/include/TCClient/linux64/libTCClient.so succeeded
1> -lTCClient (/data/enoit-server/ObjServ/include/TCClient/linux64/libTCClient.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libCommonDll.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libCommonDll.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libCommonDll.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libCommonDll.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libCommonDll.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libCommonDll.a failed
1> attempt to open /lib/../lib64/libCommonDll.so failed
1> attempt to open /lib/../lib64/libCommonDll.a failed
1> attempt to open /usr/lib/../lib64/libCommonDll.so failed
1> attempt to open /usr/lib/../lib64/libCommonDll.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../libCommonDll.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../libCommonDll.a failed
1> attempt to open /data/enoit-server/ObjServ/include/TCClient/linux64/libCommonDll.so succeeded
1> -lCommonDll (/data/enoit-server/ObjServ/include/TCClient/linux64/libCommonDll.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libACE.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libACE.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libACE.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libACE.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libACE.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libACE.a failed
1> attempt to open /lib/../lib64/libACE.so failed
1> attempt to open /lib/../lib64/libACE.a failed
1> attempt to open /usr/lib/../lib64/libACE.so failed
1> attempt to open /usr/lib/../lib64/libACE.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../libACE.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../libACE.a failed
1> attempt to open /data/enoit-server/ObjServ/include/TCClient/linux64/libACE.so succeeded
1> -lACE (/data/enoit-server/ObjServ/include/TCClient/linux64/libACE.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libstdc++.so succeeded
1> -lstdc++ (/usr/lib/gcc/x86_64-redhat-linux/4.4.7/libstdc++.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libm.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libm.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libm.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libm.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libm.so succeeded
1> -lm (/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libm.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so succeeded
1> -lgcc_s (/usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libc.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libc.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libc.so failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libc.a failed
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libc.so succeeded
1> opened script file /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libc.so
1> opened script file /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/libc.so
1> attempt to open /lib64/libc.so.6 succeeded
1> /lib64/libc.so.6
1> attempt to open /usr/lib64/libc_nonshared.a succeeded
1> attempt to open /lib64/ld-linux-x86-64.so.2 succeeded
1> /lib64/ld-linux-x86-64.so.2
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so succeeded
1> -lgcc_s (/usr/lib/gcc/x86_64-redhat-linux/4.4.7/libgcc_s.so)
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtendS.o succeeded
1> /usr/lib/gcc/x86_64-redhat-linux/4.4.7/crtendS.o
1> attempt to open /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crtn.o succeeded
1> /usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crtn.o/data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x20): undefined reference to ACE_Handler::handle_read_stream(ACE_Asynch_Read_Stream::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x28): undefined reference to
ACE_Handler::handle_write_dgram(ACE_Asynch_Write_Dgram::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x30): undefined reference to ACE_Handler::handle_read_dgram(ACE_Asynch_Read_Dgram::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x38): undefined reference to
ACE_Handler::handle_write_stream(ACE_Asynch_Write_Stream::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x40): undefined reference to ACE_Handler::handle_read_file(ACE_Asynch_Read_File::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x48): undefined reference to
ACE_Handler::handle_write_file(ACE_Asynch_Write_File::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x50): undefined reference to ACE_Handler::handle_accept(ACE_Asynch_Accept::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x58): undefined reference to
ACE_Handler::handle_connect(ACE_Asynch_Connect::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x60): undefined reference to ACE_Handler::handle_transmit_file(ACE_Asynch_Transmit_File::Result const&)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x98): undefined reference to
ACE_Service_Handler::act(void const*)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x130): undefined reference to non-virtual thunk to TC_Client::OnTimer()'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x148): undefined reference to
non-virtual thunk to TC_Client::service(ENO_Event_Completer*, void*)'
1> /data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x150): undefined reference to non-virtual thunk to TC_Client::transition(ENO_Event_Result const&, void*, void*)'
1> collect2: ld 返回 1
1>
1>
1>/usr/lib/gcc/x86_64-redhat-linux/4.4.7/../../../../lib64/crtn.o/data/enoit-server/ObjServ/ServDemo/obj/x64/Release/CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x20): undefined reference to
ACE_Handler::handle_read_stream(ACE_Asynch_Read_Stream : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x28): undefined reference to ACE_Handler::handle_write_dgram(ACE_Asynch_Write_Dgram : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x30): undefined reference to
ACE_Handler::handle_read_dgram(ACE_Asynch_Read_Dgram : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x38): undefined reference to ACE_Handler::handle_write_stream(ACE_Asynch_Write_Stream : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x40): undefined reference to
ACE_Handler::handle_read_file(ACE_Asynch_Read_File : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x48): undefined reference to ACE_Handler::handle_write_file(ACE_Asynch_Write_File : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x50): undefined reference to
ACE_Handler::handle_accept(ACE_Asynch_Accept : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x58): undefined reference to ACE_Handler::handle_connect(ACE_Asynch_Connect : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x60): undefined reference to
ACE_Handler::handle_transmit_file(ACE_Asynch_Transmit_File : error : Result const&)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x98): undefined reference to ACE_Service_Handler : error : act(void const*)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x130): undefined reference to
non-virtual thunk to TC_Client : error : OnTimer()'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x148): undefined reference to non-virtual thunk to TC_Client : error : service(ENO_Event_Completer*, void*)'
1>D:\Visual Studio 2015\Project1\ServDemo\obj\x64\Release\CService.o:(.data.rel.ro._ZTV8CService[vtable for CService]+0x150): undefined reference to
non-virtual thunk to TC_Client : error : transition(ENO_Event_Result const&, void*, void*)'
========== 全部重新生成: 成功 0 个,失败 1 个,跳过 0 个 ==========
**

问题以解决,是引入的头文件和库文件版本不对,具体的内部问题出在哪还没有找到,换了头文件编译连接没有问题了。

Csdn user default icon
上传中...
上传图片
插入图片
抄袭、复制答案,以达到刷声望分或其他目的的行为,在CSDN问答是严格禁止的,一经发现立刻封号。是时候展现真正的技术了!