Aufbau und Verknüpfung einer gemeinsamen Bibliothek

Ich versuche, eine gemeinsam genutzte Bibliothek auf einer Windows-Cygwin-Plattform mit G ++ zu erstellen und sie später mit einer anderen CPP-Datei zu verknüpfen: Ich verwende die folgenden Befehle:

// generate object file

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

// to generate library from the object file

g++ -shared -Wl,-soname,libbeat.so.1 -o libbeat.so.1.0.1 beat11.o -lc

// to link it with another cpp file; -I option to refer to the library header file

g++ -L. -lbeat -I . -o checkbeat checkbeat.cpp

Beim Verknüpfen tritt der folgende Fehler auf:

/usr/lib/gcc/i686-pc-cygwin/4.5.3/../../../../i686-pc-cygwin/bin/ld: 
     cannot find -llibbeat.so.1.0.1

collect2: ld returned 1 exit status

Die Bibliothek wird ganz gut erstellt, aber ich kann nur libbeat.so.1.0.1 finden, nicht libbeat.so oder libbeat.so.1 (oder sollen sie nicht da sein?)

Eine der anderen Fragen schlägt vor, einen Symlink zu libbeat.so.1.0.1 zu erstellen, aber auch das hat nicht funktioniert

Antworten auf die Frage(1)

Ihre Antwort auf die Frage