Ich versuche, Opendkim auf Amazon Linux ec2 Instanz zu installieren. Beim Kompilieren von der Quelle bekomme ich: configure: error: no strlcpy/strlcat gefunden , also habe ich libbsd von der Quelle installiert. Sobald das installiert ist, kann ich auf die man-Seite von strlcat und strlcpy gehen, aber ich kann nicht auf diese Funktionen zugreifen. Ich habe überprüft, dass die gemeinsam genutzten Bibliotheken installiert sind. Der Ausgang des libbsd Installation angegeben einer der vier Optionen zu verwenden:Verknüpfung zu Linux Shared Libraries
If you ever happen to want to link against installed libraries in a given directory, LIBDIR, you must either use libtool, and specify the full pathname of the library, or use the `-LLIBDIR' flag during linking and do at least one of the following:
- add LIBDIR to the `LD_LIBRARY_PATH' environment variable
during execution
- add LIBDIR to the `LD_RUN_PATH' environment variable
during linking
- use the `-Wl,-rpath -Wl,LIBDIR' linker flag
- have your system administrator add LIBDIR to `/etc/ld.so.conf'
ich
lief mein /etc/ld.so.confexport LD_RUN_PATH=/usr/local/lib
export LD_LIBRARY_PATH=/usr/local/lib/
Zusätzlich enthält
include ld.so.conf.d/*.conf
und Meine /etc/ld.so.conf.d/libbsd.conf enthält
/usr/local/lib/libbsd
Überprüfung Schließlich meine libbsd Bibliothek nm -D /usr/local/lib/libbsd.so enthält:
000000000000de30 T strlcat
000000000000ded0 T strlcpy
Also meine Fragen wie ich entweder aussetzen strlcat und strlcpy auf der Kommandozeile? Oder wie mache ich die Option "-Wl, -rpath -WL, LIBDIR 'linker flag" oder generell, was mache ich falsch beim Verknüpfen mit gemeinsam genutzten Bibliotheken? Jede Hilfe wird geschätzt. Vielen Dank!