我的电子armv7l版本因分段错误而退出

时间:2019-08-23 16:46:09

标签: electron cross-compiling

我有一个需要电子的armv7l板。在buildroot的帮助下,尽管我想自己构建电子并将其部署到我的板上,但我已经能够通过“ npm install”获得电子的最新版本。我遵循了电子link的交叉编译的构建说明,并且创建了可以执行的构建。电子版本的输出是一个名为dist.zip的文件。我将其复制到我的目标上,解压缩并执行电子,尽管它由于分割错误而迅速退出。我相信该构建适用于正确的处理器。

这是dist.zip内部存在的内容。

drwxr-xr-x 5 docker-user docker-user     4096 Aug 22 22:31 .
drwxr-xr-x 8 docker-user docker-user     4096 Aug 22 22:29 ..
-rw-r--r-- 1 docker-user docker-user     1060 Aug 10 05:36 LICENSE
-rw-r--r-- 1 docker-user docker-user  3993441 Aug 23 02:02 LICENSES.chromium.html
-rwxr-xr-x 1 docker-user docker-user  4224508 Aug 23 05:17 chrome-sandbox
-rw-r--r-- 1 docker-user docker-user   116794 Aug 23 03:59 chrome_100_percent.pak
-rw-r--r-- 1 docker-user docker-user   175786 Aug 23 03:59 chrome_200_percent.pak
-rwxr-xr-x 1 docker-user docker-user 78589028 Aug 23 05:17 electron
-rw-r--r-- 1 docker-user docker-user 10425616 Aug 10 06:10 icudtl.dat
-rwxr-xr-x 1 docker-user docker-user   161468 Aug 23 05:17 libEGL.so
-rwxr-xr-x 1 docker-user docker-user  5089240 Aug 23 05:17 libGLESv2.so
-rwxr-xr-x 1 docker-user docker-user  1962076 Aug 23 05:17 libffmpeg.so
drwxr-xr-x 2 docker-user docker-user     4096 Aug 22 22:31 locales
-rw-r--r-- 1 docker-user docker-user    82118 Aug 23 02:35 natives_blob.bin
drwxr-xr-x 2 docker-user docker-user     4096 Aug 22 22:31 resources
-rw-r--r-- 1 docker-user docker-user  8438393 Aug 23 03:59 resources.pak
-rw-r--r-- 1 docker-user docker-user   279912 Aug 23 05:14 snapshot_blob.bin
drwxr-xr-x 2 docker-user docker-user     4096 Aug 22 22:31 swiftshader
-rw-r--r-- 1 docker-user docker-user   612184 Aug 23 05:15 v8_context_snapshot.bin
-rw-r--r-- 1 docker-user docker-user       22 Aug 10 05:36 version

然后我按如下所示运行它并出现故障。

./electron: /usr/lib/libdbus-1.so.3: no version information available (required by ./electron)
./electron: /usr/lib/libasound.so.2: no version information available (required by ./electron)
./electron: /usr/lib/libasound.so.2: no version information available (required by ./electron)
Segmentation fault

然后我使用strace运行它,这就是我所看到的。

mprotect(0x75618000, 4096, PROT_READ)   = 0
mprotect(0x75be8000, 4096, PROT_READ)   = 0
mprotect(0x760ab000, 8192, PROT_READ)   = 0
--- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_ACCERR, si_addr=0x76bebfdc} ---
+++ killed by SIGSEGV +++
Segmentation fault
# 

任何帮助将不胜感激。

0 个答案:

没有答案