Archived
1
0

Removed need of LD_LIBRARY_PATH

This commit is contained in:
Emil 2023-09-24 16:54:34 +00:00
parent 12f03e20c4
commit 9c181c1e3e
No known key found for this signature in database
GPG Key ID: 5432DB986FDBCF8A
5 changed files with 13 additions and 17 deletions

View File

@ -4,17 +4,15 @@ PREFIX := .
CP := cp -f CP := cp -f
export CFLAGS := -std=c89 -Wall -Wextra -Wpedantic -Wshadow -Wundef export CFLAGS := -std=c89 -Werror -Wall -Wextra -Wpedantic -Wshadow -Wundef
export CPPFLAGS := -D_FORTIFY_SOURCE=2 export CPPFLAGS := -D_FORTIFY_SOURCE=2
all: plug/libplug.so src/plugin all: plug src
plug/libplug.so: plug:
make -C plug make -C $@
$(CP) $@ $(PREFIX)
src/plugin: src:
make -C src make -C $@
$(CP) $@ $(PREFIX)
.PHONY: all plug/libplug.so src/plugin .PHONY: all plug src

6
README
View File

@ -1,8 +1,4 @@
Run make and LD_LIBRARY_PATH='.' ./plugin for the example. Run make and ./plugin for the example.
the LD_LIBRARY_PATH part could be removed by either adding
something into your .bashrc. With some internal messing with
get/setenv it's probably possible.
There's a good reason for the fragmentation and recursion of the There's a good reason for the fragmentation and recursion of the
Makefiles, as how the files are compiled vary at compile-time Makefiles, as how the files are compiled vary at compile-time

View File

@ -1,4 +1,4 @@
CFLAGS += -shared -fPIC CFLAGS += -shared -fPIC
libplug.so: plug.o ../libplug.so: plug.o
${LINK.c} $+ -o $@ ${LINK.c} $+ -o $@

View File

@ -1,5 +1,5 @@
CPPFLAGS += -I../plug -L../plug CPPFLAGS += -I../plug -L../plug
LDLIBS += -ldl LDLIBS += -ldl
plugin: main.o ../plugin: main.o
${LINK.c} $+ -o $@ ${LDLIBS} ${LINK.c} $+ -o $@ ${LDLIBS}

View File

@ -1,4 +1,6 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h> #include <unistd.h>
#include <dlfcn.h> #include <dlfcn.h>
@ -8,7 +10,7 @@ int
main (void) main (void)
{ {
int x = 0; int x = 0;
char * libplug_fn = "libplug.so"; char * libplug_fn = "./libplug.so";
void * libplug = NULL; void * libplug = NULL;
while (1) while (1)
{ {