如何在Linux上构建Prisma Windows电子应用?
我们要实现的是在(Linux)构建服务器上为我们的电子应用构建Linux和Windows安装程序。
安装葡萄酒后,除了Prisma:
IE Prisma之外,这基本上起作用,依赖于OS特定的二进制文件 - 因此,我们必须具有适用于每个平台的正确二进制文件。
Prisma查询引擎/Prisma客户端
此部分工作:我们设置 binaryTarget 到我们的目标平台:binaryTargets = [“ Windows”,“ Debian-Openssl-1.1.x”]
。 现在,当我们生成客户端(prisma生成
)时,target dir(node_modules/.prisma/client/
)包含了Linux和Windows的Query-Engines::
> libquery_engine-debian-openssl-1.1.x.so..node
,query_engine-windows.dll.dll.dll.node
prisma迁移引擎
即prisma
依赖关系和NPM仅在node_modules/@prisma/grisma/grines/
中安装当前OS的二进制文件,即:libquery_engine-engine-debian-debian-debian-openssl-openssl-1.1。 x.so..node
,Migration-engine-debian-openssl-1.1.x
我们如何让NPM安装两个迁移引擎(即Windows和Linux)?
What we want to achieve is to build linux and windows installers for our Electron app on our (Linux) build server.
After installing Wine, this basically works, except for Prisma:
i.e. Prisma relies on OS-specific binaries - thus, we must have the correct binaries available for each platform.
Prisma Query engine / Prisma Client
This part works: we set the binaryTarget to our target platforms: binaryTargets = ["windows", "debian-openssl-1.1.x"]
.
When we now generate the client (prisma generate
), the target dir (node_modules/.prisma/client/
) contains the query-engines for linux and windows: libquery_engine-debian-openssl-1.1.x.so.node
, query_engine-windows.dll.node
Prisma Migration Engine
i.e. in package.json
we only specify the prisma
dependency and npm will only install the binaries for the current OS in node_modules/@prisma/engines/
, i.e.: libquery_engine-debian-openssl-1.1.x.so.node
, migration-engine-debian-openssl-1.1.x
How can we get npm to install both migration Engines (i.e. for Windows and Linux)?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
prisma_cli_binary_targets = darwin,rhel-openssl-1.0.x npm install
npm install
node> node> node_modules/ @prisma/引擎
node_modules/@prisma/indenne
和startingnpm install
再次工作PRISMA_CLI_BINARY_TARGETS=darwin,rhel-openssl-1.0.x npm install
npm install
node_modules/@prisma/engines
node_modules/@prisma/engines
and startingnpm install
again, it worked