Google Groups no longer supports new Usenet posts or subscriptions. Historical content remains viewable.
Dismiss

g++ fails with error

12 views
Skip to first unread message

bhara...@gmail.com

unread,
Aug 12, 2013, 6:55:27 AM8/12/13
to
Hello,

I have a c++ shared object that I am compiling using the following command.

g++ -g -Wall -c -o cpplib.o cpplib.cpp

And I am creating the shared object using the following command.

g++ -shared -o libcpplib.so cpplib.o

(I am aware that I can do this one single command, these are two separate invocations because I had the project setup on eclipse and that's how eclipse cdt does it.).

My host runs a RedHat 6.x x86_64 OS.

The compilation fails with the following error.

[root@dev-80 cpplib]# g++ -g -Wall -fPIC -c -o cpplib.o cpplib.cpp
[root@dev-80 cpplib]# g++ -shared -fPIC -o libcpplib.so cpplib.o
/usr/bin/ld: /usr/lib/gcc/x86_64-redhat-linux/4.4.7/libstdc++.a(ios_init.o): relocation R_X86_64_32 against `pthread_cancel' can not be used when making a shared object; recompile with -fPIC
/usr/lib/gcc/x86_64-redhat-linux/4.4.7/libstdc++.a: could not read symbols: Bad value
collect2: ld returned 1 exit status
[root@dev-80 cpplib]#

I am certain that I haven't used the 'pthread_cancel' function in my code.

Can anyone help me with this?

Regards,
Bharath

Maurizio Loreti

unread,
Aug 12, 2013, 10:37:11 AM8/12/13
to
g++ 4.4 and its shared library are quite old. Try to upgrade to
4.8.1...

--
(@_ | Maurizio Loreti
//\ |
V_/_ | EMail/ROT13: Znhevmv...@tznvy.pbz

Gerhard Fiedler

unread,
Aug 14, 2013, 3:24:48 PM8/14/13
to help-gp...@gnu.org
Did you try what the error message says? That is,

g++ -g -Wall -fPIC -c -o cpplib.o cpplib.cpp

Gerhard


bhara...@gmail.com

unread,
Mar 3, 2014, 4:23:34 AM3/3/14
to
Well, I have tried that. Moreover, My first step (which is the compilation) already has the -fPIC option included.
0 new messages