Skip to content

Instantly share code, notes, and snippets.

@ardrabczyk
Last active February 9, 2023 07:28
Show Gist options
  • Save ardrabczyk/6aeb8545c9b754d6b15be390af4bdff0 to your computer and use it in GitHub Desktop.
Save ardrabczyk/6aeb8545c9b754d6b15be390af4bdff0 to your computer and use it in GitHub Desktop.

Revisions

  1. ardrabczyk revised this gist Apr 10, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion Makefile
    Original file line number Diff line number Diff line change
    @@ -3,7 +3,7 @@ all:
    cc -shared -fPIC lib_two.c lib_two.h -o libtwo.so -L. -lone -Wl,-rpath=libs
    mkdir -p libs
    mv libone.so libs
    cc main.c -o main -L. -lc -ltwo -Wl,-rpath=.
    cc main.c -o main -L. -ltwo -Wl,-rpath=.

    clean:
    rm -f libone.so libone.a libtwo.so main
  2. ardrabczyk revised this gist Apr 10, 2020. 1 changed file with 1 addition and 1 deletion.
    2 changes: 1 addition & 1 deletion lib_two.h
    Original file line number Diff line number Diff line change
    @@ -1 +1 @@
    void bar(void);
    void bar(void);
  3. ardrabczyk created this gist Apr 10, 2020.
    9 changes: 9 additions & 0 deletions Makefile
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,9 @@
    all:
    cc -shared -fPIC lib_one.c lib_one.h -o libone.so
    cc -shared -fPIC lib_two.c lib_two.h -o libtwo.so -L. -lone -Wl,-rpath=libs
    mkdir -p libs
    mv libone.so libs
    cc main.c -o main -L. -lc -ltwo -Wl,-rpath=.

    clean:
    rm -f libone.so libone.a libtwo.so main
    6 changes: 6 additions & 0 deletions lib_one.c
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,6 @@
    #include <stdio.h>

    void foo(void)
    {
    puts("I'm in foo()");
    }
    1 change: 1 addition & 0 deletions lib_one.h
    Original file line number Diff line number Diff line change
    @@ -0,0 +1 @@
    void foo(void);
    6 changes: 6 additions & 0 deletions lib_two.c
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,6 @@
    #include <stdio.h>

    void bar(void)
    {
    puts("I'm in bar()");
    }
    1 change: 1 addition & 0 deletions lib_two.h
    Original file line number Diff line number Diff line change
    @@ -0,0 +1 @@
    void bar(void);
    9 changes: 9 additions & 0 deletions main.c
    Original file line number Diff line number Diff line change
    @@ -0,0 +1,9 @@
    #include <stdio.h>
    #include <stdlib.h>
    #include "lib_two.h"

    int main(void)
    {
    bar();
    return EXIT_SUCCESS;
    }