attempt to fix dynamic library build error

```
/nix/store/mzrw2zphz9xx9s3qq8x5zpf18isp0jga-go-1.20.3/share/go/pkg/tool/linux_amd64/link: running gcc failed: exit status 1
/nix/store/ybw485608d7f1yv1v071j2052q64mvla-binutils-2.40/bin/ld: /build/go-link-2631521468/go.o: relocation R_X86_64_TPOFF32 against `runtime.tlsg' can not be used when making a shared object; recompile with -fPIC
/nix/store/ybw485608d7f1yv1v071j2052q64mvla-binutils-2.40/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
```

Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
Jakub Sokołowski 2024-04-15 18:36:20 +03:00
parent 33bb3f2fa2
commit 81b0b92239
No known key found for this signature in database
GPG Key ID: FE65CD384D5BF7B4
2 changed files with 5 additions and 1 deletions

View File

@ -3,6 +3,7 @@
self ? ./.,
subPkgs ? "cmd/waku",
ldflags ? [],
cgoLdflags ? "",
output ? null,
commit ? builtins.substring 0 7 (self.rev or "dirty"),
version ? builtins.readFile ./VERSION,
@ -18,6 +19,8 @@ pkgs.buildGo120Module {
"-X github.com/waku-org/go-waku/waku/v2/node.GitCommit=${commit}"
"-X github.com/waku-org/go-waku/waku/v2/node.Version=${version}"
] ++ ldflags;
CGO_LDFLAGS = cgoLdflags;
GOGCCFLAGS = "-fPIC";
doCheck = false;
# Otherwise library would be just called bin/c.

View File

@ -53,7 +53,8 @@
inherit self;
subPkgs = ["library/c"];
ldflags = ["-buildmode=c-shared"];
output = "libgowaku.a";
cgoLdflags = "-Wl,-Bsymbolic,-soname,libgowaku.so.0";
output = "libgowaku.so";
};
});