Jan 'RedBully' Seiffert schrieb:
> Pierre Bernhardt wrote:
>> Hallo,
>>
> [snip - ctapi wrapper]
> [snip]
>> ./usr
>> ./usr/lib
>> ./usr/lib/pkgconfig
>> ./usr/lib/pkgconfig/libpcsclite.pc
>> ./usr/lib/libpcsclite.so.1
>> ./usr/lib/libpcsclite.so
>> ./usr/lib/libpcsclite.a
>> ./usr/lib/libpcsclite.so.1.0.0
>> ./usr/lib/libpcsclite.la
> 
> Ich weiss jetzt nicht wie Debain das under x86-64 organisiert, aber sollten
> diese Libs nicht unter lib32 liegen oder sowas? Sind in /usr/lib die 64bit 
> libs
> oder 32bit libs? Oder ist das ein Symlink auf lib32 bzw. lib64?
Da das System eine AMD64 ist sind die libs unter /usr/lib auch erst mal 64bit.
Das sagt mir jedenfalls ein file /usr/lib/*

> 
> [snip]
>>
> [snip]
>> Und hier gehts dann nicht weiter:
>> pie...@amd64x2:~/Downloads/pcsc-ctapi-wrapper-0.3$ gcc -m32 -O2 -Wall -I 
>> usr/include/PCSC/ -I . -shared -o libpcsc-ctapi-wrapper.so.0.3 
>> -Wl,-soname="libpcsc-ctapi-wrapper.so" pcsc-ctapi-wrapper.o -lpcsclite -L 
>> usr/lib/
>> /usr/bin/ld: skipping incompatible 
>> /usr/lib/gcc/x86_64-linux-gnu/4.3.2/libgcc.a when searching for -lgcc
>> /usr/bin/ld: skipping incompatible 
>> /usr/lib/gcc/x86_64-linux-gnu/4.3.2/libgcc.a when searching for -lgcc
>> /usr/bin/ld: cannot find -lgcc
>> collect2: ld returned 1 exit status
>>
> 
> Er findet die 32-bit version von libgcc ueberhaupt nicht (muss die extra
> installiert werden? compatlibs32 packet oder sowas?), nur die "normal"64Bit 
> Version.
> Entweder musst du noch weitere 32Bit Pfade zum Linker durch reichen (wobei ich
> gehofft hatte, das -m32 dafuer sorgt). Oder noch irgendwas insten. Aber 
> komisch
> ist das schon, verwirren in irgendwelche 64-Bit libs?
Kein Ahnung. Ich musste auf jeden fall schon beim compilieren mit dem ersten 
Befehl
die passenden 32bit Libraries installiert haben:


AMD64x2:/usr/lib# dpkg -l |grep 32
ii  ia32-libs                            20090808                      ia32 
shared libraries for use on amd64 and ia64 systems
ii  lib32asound2                         1.0.21a-1                     shared 
library for ALSA applications (32 bit)
ii  lib32gcc1                            1:4.4.1-4                     GCC 
support library (32 bit Version)
ii  lib32ncurses5                        5.7+20090803-2                shared 
libraries for terminal handling (32-bit)
ii  lib32stdc++6                         4.4.1-4                       The GNU 
Standard C++ Library v3 (32 bit Version)
ii  lib32z1                              1:1.2.3.3.dfsg-15             
compression library - 32 bit runtime
ii  libc6-dev-i386                       2.9-27                        GNU C 
Library: 32-bit development libraries for AMD64
ii  libc6-i386                           2.9-27                        GNU C 
Library: 32-bit shared libraries for AMD64


> Nimmt er denn die 32-bit Version von libpcslite?
Die gibt es auf dem System nicht. Ich habe das Paket dann aber erst mal
vom Spiegel als i386 runtergeladen und mit dpkg -x ausgepackt. Dann habe
ich die Lib nach /usr/lib32 kopiert und ldconfig ausgeführt.

> Du kannst mit -v und sowas dir die Zeilen anzeigen lassen, mit denen der 
> Linker
> aufgerufen wird, mit -Wl,-v vieleicht auch den Linker etwas gespraechiger 
> machen
> (siehe Handbuecher).

Ich habe dann aber mein atom-netboot, äh ...book, genommen, alle Pakete da 
installiert
die ich benötige. Dann konnte ich dort die beiden Befehle ausführen. Dann habe
ich die erstellte libpcsc-ctapi-wrapper.so.0.3 nach /usr/lib32 auf meinem AMD64
kopiert und nochmal den ldconfig ausgeführt.

Siehe da, ich konnte dann tatsächlich gestern ein mal unter wine tatsächlich
auch den Kartenleser per ctapi32.dll.so mit meinem Homebanking-Programm 
zugreifen
(ALFBanco3).
Danach gings dann nicht mehr und ich bin dann ins Bett gegangen. Jetzt muss ich 
erst
mal suchen, warum. Aber der einmal positive Test hat mir tatsächlich Hoffnung
gegeben, dass ich dann doch noch das Teil zum laufen bekomme.

> Schau mal, ob du einen Ordner a la /usr/lib/i686-linux-gnu irgendwo hast, 
> welche
> libgcc.so auf deinem Rechner so sind. Gibt es irgendein fertiges 32-bit 
> Programm
> im Packetbaum (Acrobat Reader oder sowas, wobei, was die wieder fuer dirty
> tricks machen...)? Schau mal mit ldd gegen was das gelinkt ist.
Ja, wine ist definitiv 32 bit gestrickt:

AMD64x2:/usr/lib32# file /usr/lib32/wine/wine.bin
/usr/lib32/wine/wine.bin: ELF 32-bit LSB executable, Intel 80386, version 1 
(SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.18, not 
stripped

Also noch nicht völlig gelöst, aber nun macht es wieder Spass zu suchen.

MfG...
Pierre


Attachment: signature.asc
Description: OpenPGP digital signature

--
Linux mailing list [email protected]
subscribe/unsubscribe: http://lug-owl.de/mailman/listinfo/linux
Hinweise zur Nutzung: http://www.lug-owl.de/Mailingliste/hints.epo

Antwort per Email an