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
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
all: plug/libplug.so src/plugin
all: plug src
plug/libplug.so:
make -C plug
$(CP) $@ $(PREFIX)
plug:
make -C $@
src/plugin:
make -C src
$(CP) $@ $(PREFIX)
src:
make -C $@
.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.
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.
Run make and ./plugin for the example.
There's a good reason for the fragmentation and recursion of the
Makefiles, as how the files are compiled vary at compile-time

View File

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

View File

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

View File

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