如何构建我以后可以在使用 emcc 编译代码时使用的静态库?
How to build static library that I can use later on while compiling code with emcc?
我正在使用 emcc(版本 1.38.38)分两步构建第三方 C 库:
- 构建扩展名为 *.a 的静态库(使用 emar)
- 使用该静态库构建一个单独的文件。
不幸的是,我得到了未定义的符号。
到目前为止我尝试了什么:
- 在没有 emcc 的情况下构建,使用 clang 或 gcc - 一切都按预期工作
- 检查符号是否在构建的库中(它们是)
看来我遗漏了一些非常基本的东西,我还没有找到答案,所以我问你:
如何构建静态库,以便稍后在使用 emcc 编译代码时使用?
所以,好吧,我问这个问题很愚蠢,让我为社区做贡献并承认问题所在,也许它会对其他人有所帮助。
此代码有效:
emcc -s WASM=1 -Isrc main.c src/lib.a
虽然这不会
emcc -s WASM=1 -Isrc src/lib.a main.c
订单很重要,我真丢人。
我正在使用 emcc(版本 1.38.38)分两步构建第三方 C 库:
- 构建扩展名为 *.a 的静态库(使用 emar)
- 使用该静态库构建一个单独的文件。
不幸的是,我得到了未定义的符号。 到目前为止我尝试了什么:
- 在没有 emcc 的情况下构建,使用 clang 或 gcc - 一切都按预期工作
- 检查符号是否在构建的库中(它们是)
看来我遗漏了一些非常基本的东西,我还没有找到答案,所以我问你:
如何构建静态库,以便稍后在使用 emcc 编译代码时使用?
所以,好吧,我问这个问题很愚蠢,让我为社区做贡献并承认问题所在,也许它会对其他人有所帮助。
此代码有效:
emcc -s WASM=1 -Isrc main.c src/lib.a
虽然这不会
emcc -s WASM=1 -Isrc src/lib.a main.c
订单很重要,我真丢人。