千家信息网

在tinycolinux上如何安装sandstorm davros

发表于:2025-12-01 作者:千家信息网编辑
千家信息网最后更新 2025年12月01日,小编给大家分享一下在tinycolinux上如何安装sandstorm davros,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解
千家信息网最后更新 2025年12月01日在tinycolinux上如何安装sandstorm davros

小编给大家分享一下在tinycolinux上如何安装sandstorm davros,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!

在tinycolinux上编译安装nodejs和npm

tinycolinux上gcc481最高最能编译7.10.1 ,8.0.0和8.0.0以上会提示ArrayVector(v8::internal::StringStream::FmtElm [])相关的错误, 最新的894要求gcc494,

sandstorm自身用的是nodejs8.9.3,官方使用的davros 0.21.7 spk中使用的nodejs6.4.0,所以在这里我们使用6.4.0版本,首先装好git,然后装好py,下载nodejs640其源码,cd到其中,执行:

./configure --preifx=/usr/local/nodejs && sudo make install

cd到/usr/local/nodejs,export PATH=$PATH:/usr/local/nodejs/bin,执行nodejs发现需要libstdc++高版本,把libstdc++.so.6.0.18(这个是编译cmake时也需要的库,参见以前文章)换到/usr/lib下,接着执行npm install -g git://xxx,发现调用git时不能下载https里的git repos内容,提示SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert protocol version Completed with errors

这是由于最近2018.2.1github不采用低级的加密方法了,git依赖cur,curl 命令行依赖 openssl 库才能使用 ssl 和 TLS。当前一般认为 TLSv1.1 及 TLSv1.2 才是安全的,很多 https 服务器仅支持这2个协议,不再支持 TLSv1.0 及 ssl。但是 openssl 是从 1.0.1 才支持 TLSv1.1 及 TLSv1.2。系统当前安装的openssl-1.00.tcz+curl不支持。查看已安装的ssl和curl,执行:curl -V(大写)发现openssl是1.0.0k,curl是7.30.0

我也不想去其它的5.x的tinycolinux中去找了,自己编译吧。好像5.x的是1.0.2的去掉了sslv2v3的?所以还是自己编译安装吧。

我下载的是openssl 1.0.1src和curl-7.15.0.tar.gz,首先安装perl5,openssl编译需要perl5,cd srcroot,./config --prefix=/usr/local shared && sudo make install就可以(注意不是./configure)一定要加/usr/local,否则安装到/usr/local/ssl中去了,加shared可免去下列错误:x86cpuid.s:(.text+0x2d0): multiple definition of `OPENSSL_cleanse' ../libcrypto.a(mem_clr.o):mem_clr.c:(.text+0x0): first defined here

接下来编译新的curl7.30.0,./configure --enable-shared --with-ssl=/usr/local

查看新的openssl版本

/sbin/ldconfig -v openssl version -a

查看curl是否引用了刚编译安装的1.0.1版本

curl -V(大写的),发现使用的是openssl1.0.1

现在git会自动使用ssl3,npm install -g git://xxx或https://可以用了。

准备davros代码并编译运行,失败

现在准备davros,我下载的是https://github.com/mnutt/davros中的davros-ca480aea708d0e9ae4b63342a4583660609f331f的0.21.7 release,将davros的根中的所有内容全选,上传到/usr/local/nodejs根目录,cd到此

我们看到js npm的包管理还是蛮好的,每一个包都维护一个package.json,申明它向前依赖的项。应用即包本身,各个包组成一个树形关联关系组成一个大应用,davros作为大应用,可以看到其根下有npm用的根package.json,bower用的根bower.json,etc..

根据https://github.com/mnutt/davros的说明,先sudo npm install,但是发现奇慢,加tb的mirror吧npm install -g cnpm --registry=https://registry.npm.taobao.org,再sudo cnpm install发现快多了(这是在安装src root下那个package.json的依赖关系包括bower)。它可以代替默认的npm,匹配不到的它会从默认从github下载。如果有紫红色的就是出错的

接下来,sudo bower install后会提示找不到bower,把生成的node_modules/bower/.bin中的那个链接文件移到/usr/local/nodejs/bin中,并修改指向对应位置

然后sudo npm install 和 sudo bower install --allow-root,发现git出错:error: SSL certificate problem: unable to get local issuer certificate while accessing

git config --global http.sslVerify false一下会在home/tc/下产生.gitconfig文件,再sudo bower install --allow-root这下能继续了。

我们也无法去追踪到底安装了多少东西了。

然后按照https://github.com/mnutt/davros的说明,sudo PORT=3009 ember serve,发现ember也没链接进/usr/local/nodejs/bin中(在src root package.json中它跟bower一样是要被安装的也一路并没有出错),直接执行吧,不做了:sudo PORT=3009 node_modules/.bin/ember server,发现ember的确在后台打开了守护,根据github的readme.md说明,这时本地桌面客户端可以连接了。

但其实我们根本不用这样做,因为这个后台守护会耗尽内存, top中会看到内存占用一直涨,最终命令行也显示heap out of memeory,尝试失败!!

按理说,这里要ember build一次,之后会将ember一系列东西,包括davros src root的app文件夹下面的东西全打包在生成的srcroot/dist下一个davros打头的随机文件名中。是不是这样呢,我们也没时间追究了,只能换个死方法了,我们直接从spk中取来所有ember build好的东西:

直接提取spk的已编译好的davros运行,成功

在另外一台机器上安装一个sandstorm,然后连上进入winscp,进那个spk的目录,我的是/opt/sandstorm/var/sandstorm/apps/e813a833d983fbc38d87da62ea461fa7/opt/app,全部打包下载,清空原来nodejs的根目录,重新/tce/nodejs460下make install一次,然后把新的spk中的包的内容全部上传到这里,./sandstorm中的launcher.sh弄出来到根,稍微修改下其中的路径,建立data,data-temp,samplefiles等目录,执行sudo ./launcher.sh(它其实就是nodejs执行根下的app.js),注意8000端口不要被占据,成功!!不光oc的桌面客户端访问。网页端免sandstorm也可以进入。 可见它与sandstorm管理框架和ember build过程是没有太多导致运行失败上的关系的。

当然,这个免sandstorm是没有认证机制的,如果是自用的话,随便写个认证逻辑就可以,这个服务端比oc的服务端快多了。

以上是"在tinycolinux上如何安装sandstorm davros"这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注行业资讯频道!

编译 内容 东西 文件 版本 支持 篇文章 应用 提示 服务 运行 成功 接下来 内存 后台 命令 大写 客户 客户端 就是 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 128核服务器评测 定制软件开发交税 陕西九思连强互联网科技面试 sis系统的网络安全性 青岛西海影电网络技术有限公司 苹果传文件连接服务器出现问题 软件开发中数据接口类型 网络安全是谁提出来的 note2显示无法连接服务器 深圳富山科技互联网工资 杀手6连接服务器 宝安区新一代网络技术开发动态 软件开发学校排名北京 专注脚本软件开发公司 计算机网络技术升本的学校 网络安全法宣讲报告 网络安全工程师有哪些分类 网络安全实验小结 云服务器 镜像 光网络技术及发展有限公司 涛翔网络技术有限公司怎么样 华为服务器风扇告警 制造业的主要网络安全计划叫什么 暑期网络安全小报 中心系统网络安全应急响应研究 信息网络安全宣传实施方案 寻找小的软件开发公司 木瓜互联网科技布沙发颜色怎么 计算机网络技术专业基础要求 公共数据库免费申请
0