Winelib-Build: undefined versioned symbol name

Martin Troester TroyMcClure at web.de
Wed Oct 22 18:48:58 CDT 2003


Hi,

I am currently trying to move my application porting environment from
Debian unstable to Red Hat 9. I thought this would not be a problem, but
I get unexpected linking errors (see below).

I copied the sources (that compile and link fine on the Debian system)
to the RedHat 9 environment, which provides gcc 3.2.2 and libc-2.3.2.
Furthermore, I installed the latest rpms of 20031016 that are hosted on
the sourceforge.net site.

Compiling the sources still works, but linking fails. Here's my example
for finally linking all object files together:

gcc -shared -Wl,-Bsymbolic,z,defs -L/usr/lib -L/usr/lib/wine/wine -lm
-lc -lwine -lstdc++ -lgcc_s <all object files> -o lib<mydll>.dll.so

On RedHat, however, this fails with the following linker error:

/usr/bin/ld: lib<mydll>.dll.so: undefined versioned symbol name
fprintf@@GLIBC_2.0
/usr/bin/ld: failed to set dynamic section sizes: Bad value
collect2: ld returned 1 exit status

What I found googling through the net is that these conflicts may be
caused due to other libraries that may have been linked with earlier
versions (like in this case the striking GLIBC_2.0, which I cannot make
any sense of). However, since I only link with Winelib libraries of the
latest release, this does not make too much sense to me. Furthermore, I
found the advice to interchange the include-sequence of the libraries,
but this does not change anything. Furthermore I made sure that I do not
carry any old object files with me from previous builds, although I
never build against any GLIBC2.0 libaries...

Any help would be appreciated, thanks very much!

Cheers, 
Martin


-- 




More information about the wine-devel mailing list