2011-03-23 18 views
1

Tkを自分のコードに静的にリンクしたいと思います。私は依存関係のために困っている。私は私のMakefileに行われた変更は、次のとおりです。私は、コンパイルに次のエラーを取得するMakefile - libc依存関係を修正するには?

TK_LIBS_64 = \ 
    -L/usr/X11R6/lib64 \ 
    -lX11 \ 
    -lXss \ 
    -lXext \ 
    -L/usr/X11R6/lib64 \ 
    -lXft \ 
    -lX11 \ 
    -lfontconfig \ 
    -lfreetype \ 
    -lxmlparse \ 
    -lexpat \ 
    -L/usr/X11R6/lib64 \ 
    -lXrender \ 
    -lpthread \ 
    -ldl \ 
    -lpthread \ 
    -lieee \ 
    -lm 

LIBS64 = \ 
    -L$(TCL_ROOT)/lib/ -ltk8.5 \ 
    $(TK_LIBS_64) 

/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x7f): In function `__pthread_initialize_minimal': 
: undefined reference to `__libc_setup_tls' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x86): In function `__pthread_initialize_minimal': 
: undefined reference to `_dl_cpuclock_offset' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0xc0): In function `__pthread_initialize_minimal': 
: undefined reference to `_errno' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0xcb): In function `__pthread_initialize_minimal': 
: undefined reference to `_h_errno' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x289): In function `pthread_initialize': 
: undefined reference to `_res' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x3cc): In function `pthread_initialize': 
: undefined reference to `_dl_init_static_tls' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x947): In function `__pthread_reset_main_thread': 
: undefined reference to `_errno' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x955): In function `__pthread_reset_main_thread': 
: undefined reference to `_h_errno' 
/usr/lib/../lib64/libpthread.a(pthread.o)(.text+0x963): In function `__pthread_reset_main_thread': 
: undefined reference to `_res' 
/usr/lib/../lib64/libpthread.a(ptw-write.o)(.text+0x1a): In function `write': 
: undefined reference to `__syscall_error' 
/usr/lib/../lib64/libpthread.a(ptw-write.o)(.text+0x72): In function `write': 
: undefined reference to `__syscall_error' 
/usr/lib/../lib64/libpthread.a(ptw-read.o)(.text+0x1a): In function `read': 
: undefined reference to `__syscall_error' 
/usr/lib/../lib64/libpthread.a(ptw-read.o)(.text+0x72): In function `read': 
: undefined reference to `__syscall_error' 
/usr/lib/../lib64/libpthread.a(ptw-close.o)(.text+0x1a): In function `close': 
: undefined reference to `__syscall_error' 
/usr/lib/../lib64/libpthread.a(ptw-close.o)(.text+0x5e): more undefined references to `__syscall_error' follow 
/usr/lib/../lib64/libdl.a(dlopen.o)(.text+0x5): In function `dlopen': 
: undefined reference to `__dlopen' 
/usr/lib/../lib64/libdl.a(dlsym.o)(.text+0x5): In function `dlsym': 
: undefined reference to `__dlsym' 
/usr/lib/../lib64/libdl.a(dlerror.o)(.text+0x1): In function `dlerror': 
: undefined reference to `__dlerror' 
collect2: ld returned 1 exit status 
*** Error code 1 
dmake: Fatal error: Command failed for target 

未定義の参照されているかのlibc.aやlibc_p.aと依存関係に追加することで助けにならない。定義されていない参照はシステムコールなので、私はここで何か基本的なものを見逃していると思います。私は誰かが間違いを指摘できれば義務づけられます。

答えて

2

-lpthreadの代わりに-pthreadを使用します。

関連する問題