我正在制作一个需要跨平台的Electron应用程序。
它需要gRPC才能运行。据我所知,除了要为该操作系统获取gRPC外,我还需要从该操作系统运行NPM命令。
即由于我使用的是Windows,因此命令npm rebuild grpc --target=4.0.3 --runtime=electron --dist-url=https://atom.io/download/electron
仅会获取Windows的gRPC二进制文件,这对于在Windows上运行应用程序非常有用-但不适用于其他操作系统。
我想解决这个问题的一种方法是使用Docker,除了,我不知道这是否真的可行,而且我知道如何实现。
我想,如果Docker是要在隔离的环境中运行应用程序-我可以用它使NPM下载适用于Linux和macOS的gRPC二进制文件吗?
答案 0 :(得分:1)
您可以使用--target_platform
选项下载其他平台的二进制文件。要获取Linux和MacOS二进制文件,您需要使用值linux
和darwin
。下载Linux二进制文件时,您还需要使用选项--target_libc=glib
。
出于完整性考虑,如果要从其他平台下载Windows二进制文件,则--target_platform
的值为win32
。如果要从Linux下载Windows或MacOS二进制文件,则需要传递选项--target_libc=unknown
。