File tree Expand file tree Collapse file tree 6 files changed +45
-3
lines changed
Expand file tree Collapse file tree 6 files changed +45
-3
lines changed Original file line number Diff line number Diff line change 3131 working-directory : ' interop/multiplier-static'
3232 - run : cargo clippy
3333 working-directory : ' interop/multiplier-dynamic'
34+ - uses : actions/setup-go@v5
3435 - run : make all
Original file line number Diff line number Diff line change 1- all : adder static dynamic
1+ all : static dynamic
22
33static :
4- make -C adder all
4+ make -C adder clean
5+ make -C adder static
56 cd multiplier-static && cargo clean && cargo test && cargo build --release
67 rm -f demo-static
78 gcc -o demo-static main.c -L multiplier-static/target/release -lmultiplier
89 ./demo-static
10+ cd go-static && go run . && cd -
911
1012dynamic :
11- make -C adder all
13+ make -C adder clean
14+ make -C adder dynamic
1215 cd multiplier-dynamic && cargo clean && LD_LIBRARY_PATH=" ` pwd` /../adder" cargo test && cargo build --release
1316 rm -f demo-dynamic
1417 LD_LIBRARY_PATH=adder gcc -o demo-dynamic main.c -lmultiplier -L multiplier-dynamic/target/release
1518 LD_LIBRARY_PATH=multiplier-dynamic/target/release:adder ./demo-dynamic
19+ cd go-dynamic && LD_LIBRARY_PATH=../multiplier-dynamic/target/release:../adder go run . && cd -
20+
Original file line number Diff line number Diff line change 1+ package main
2+
3+ /*
4+ #cgo CFLAGS: -I..
5+ #cgo LDFLAGS: -L../multiplier-dynamic/target/release -lmultiplier -L../adder -ladder
6+ #include "multiplier.h"
7+ */
8+ import "C"
9+ import "fmt"
10+
11+ func main (){
12+ res := C .multiply (10 , - 82 )
13+ fmt .Println ("GO Dynamic" )
14+ fmt .Println (res )
15+ }
Original file line number Diff line number Diff line change 1+ module go-dynamic
2+
3+ go 1.23.3
Original file line number Diff line number Diff line change 1+ package main
2+
3+ /*
4+ #cgo CFLAGS: -I..
5+ #cgo LDFLAGS: -L ../multiplier-static/target/release -lmultiplier
6+ #include "multiplier.h"
7+ */
8+ import "C"
9+ import "fmt"
10+
11+ func main (){
12+ res := C .multiply (10 , - 82 )
13+ fmt .Println ("GO Static" )
14+ fmt .Println (res )
15+ }
Original file line number Diff line number Diff line change 1+ module go-static
2+
3+ go 1.23.3
You can’t perform that action at this time.
0 commit comments