文档章节

3D打印控制软件Cura源码在UbuntuKylin15.04上编译

openthings
 openthings
发布于 2015/07/23 15:11
字数 754
阅读 832
收藏 1

Cura在Linux上的版本总是下载不了,准备自己从源码进行编译。

下面是从https://github.com/ultimaker上下载的编译脚本。原始的脚本有一些问题,自己做了一些修改,如下:

#!/bin/bash
# This is a script which get the latest git repo and build them.
#
# Tested under ubuntu 15.04, lower versions don't have PyQT 5.2.1 which is required by cura

cd ~
if [ ! -d "cura_dev" ]; then
    mkdir cura_dev
fi
cd cura_dev

sudo apt-get install -y git cmake cmake-gui autoconf libtool python3-setuptools curl python3-pyqt5.* python3-numpy qml-module-qtquick-controls
git clone https://github.com/Ultimaker/Cura.git
git clone https://github.com/Ultimaker/Uranium.git
git clone https://github.com/Ultimaker/CuraEngine.git
git clone https://github.com/Ultimaker/libArcus
git clone https://github.com/Ultimaker/protobuf.git

cd protobuf
./autogen.sh
./configure
make -j4
sudo make install
sudo ldconfig
cd python
python3 setup.py build
sudo python3 setup.py install
cd ../..

cd libArcus
if [ ! -d "build" ]; then
  mkdir build
fi
cd build
cmake .. -DPYTHON_SITE_PACKAGES_DIR=/usr/lib/python3.4/dist-packages
make -j4
sudo make install
cd ../../

cd CuraEngine
if [ ! -d "build" ]; then
  mkdir build
fi
cd build
cmake ..
make -j4
cd ../../

cd Uranium
if [ ! -d "build" ]; then
  mkdir build
fi
cd build
cmake .. -DPYTHON_SITE_PACKAGES_DIR=/usr/lib/python3.4/dist-packages -DURANIUM_PLUGINS_DIR=/usr/lib/python3.4/dist-packages

sudo make install
cd ../..

cp -rv Uranium/resources/* Cura/resources/
sudo ln -s $PWD/CuraEngine/build/CuraEngine /usr/bin/CuraEngine
cd Cura
python3 cura_app.py

#export PYTHONPATH=/usr/lib/python3/dist-packages

运行了很长时间,但结果不太妙啊。

编译结果出错:

QWidget: Must construct a QApplication before a QWidget
./ubuntu-15.04-build-script.sh: 行 62: 29168 已放弃               (核心已转储) python3 cura_app.py

嗯,这可是最新的开发代码呀!出点错是很正常的。

到https://github.com/ultimaker/Cura上去创建了个issue,提交上去,看谁能解决这个问题。

等了两天,有其他人报同样的错误,但没有解决办法。只好自己再进一步研究。

进python控制台,一步一步运行源码。发现主要是缺少UM这个对象,这是Uranium的支持库,发现被安装到了/usr/local/lib/python3/dist-packages里面。

设置:

export PYTHONPATH=/usr/local/lib/python3/dist-packages

再次运行,出现OpenGL的错误,可能是VirtualBox虚拟机的问题。后面再继续。

更新所有的库,可以用这个脚本:

#!/bin/bash
# This is a script which get the latest git repo and build them.
#
# Tested under ubuntu 15.04, lower versions don't have PyQT 5.2.1 which is required by cura

cd ~
cd cura_dev

cd protobuf
git pull
./autogen.sh
./configure
make -j4
sudo make install
sudo ldconfig
cd python
python3 setup.py build
sudo python3 setup.py install
cd ../..

cd libArcus
git pull
cd build
cmake .. -DPYTHON_SITE_PACKAGES_DIR=/usr/lib/python3.4/dist-packages
make -j4
sudo make install
cd ../../

cd CuraEngine
git pull
cd build
cmake ..
make -j4
cd ../../

cd Uranium
git pull
cd build
cmake .. -DPYTHON_SITE_PACKAGES_DIR=/usr/lib/python3.4/dist-packages  -DURANIUM_PLUGINS_DIR=/usr/lib/python3.4/dist-packages

sudo make install
cd ../..

cp -rv Uranium/resources/* Cura/resources/
sudo ln -s $PWD/CuraEngine/build/CuraEngine /usr/bin/CuraEngine
cd Cura
python3 cura_app.py

libgl出错,可能是虚拟机的问题,下次用物理机试试。

将Virtualbox的“显示-三维加速”去掉,libgl就不再报错了。



© 著作权归作者所有

openthings
粉丝 320
博文 1129
码字总数 675031
作品 1
东城
架构师
私信 提问
加载中

评论(2)

openthings
openthings 博主
将Virtualbox的“显示-三维加速”去掉,libgl就不再报错了。
openthings
openthings 博主
更新了几个目录建立的脚本,仔已有目录情况下,可以继续执行。避免原文件在终止后有目录存在时,新建目录错乱、导致无法正常编译的情况。
Cura源码在Ubuntu15.04上编译脚本(成功)

Cura是著名的3D打印切片和控制软件。新的版本采用Qt和Python进行了重构,界面变化也非常大,目前还在开发中,运行问题还有不少。这里介绍如何从源代码进行Cura的编译,可以抢先体验新版的界面...

openthings
2015/08/06
2.2K
1
人工智能与机器人研究开源技术栈

[原创文章、动态更新,欢迎链接分享、请勿转载误人,By OpenThings] [实践攻略参见:打造一个创客专用的UbuntuKylin版本-UMaker] 构建一个完整的机器人,涉及到机械设计、模型仿真、虚拟现实...

openthings
2015/12/20
687
0
3D打印切片引擎--CuraEngine

CuraEngine 是采用C++编写的3D打印切片引擎,由Cura 发展而来。它是由开源桌面3D打印机Ultimaker领导开发,以"高度整合性"以及"容易使用"为目标而设计的。CuraEngine软件包含了所有3D打印需要...

匿名
2016/04/12
4.9K
0
CuraEngine —— 3D 打印切片引擎

CuraEngine 是采用C++编写的3D打印切片引擎,由Cura 发展而来。它是由开源桌面3D打印机Ultimaker领导开发,以"高度整合性"以及"容易使用"为目标而设计的。CuraEngine软件包含了所有 3D打印需...

oschina
2016/04/18
109
0
3D打印开放工具链-开源而且免费

开源的3D打印开放工具链: 3D打印机:DreamMaker,由DFRobot生产,这是中国很早做创客产品的机构。是实现同样精度的成本最低的产品了,非常酷,而且易于学习。 基础建模软件:OpenSCAD,以程...

openthings
2015/02/12
266
0

没有更多内容

加载失败,请刷新页面

加载更多

作为一个(IT)程序员!聊天没有话题?试试这十二种技巧

首先呢?我是一名程序员,经常性和同事没话题。 因为每天都会有自己的任务要做,程序员对于其他行业来说;是相对来说比较忙的。你会经常看到程序员在发呆、调试密密麻麻代码、红色报错发呆;...

小英子wep
今天
12
0
【SpringBoot】产生背景及简介

一、SpringBoot介绍 Spring Boot 是由 Pivotal 团队提供的全新框架,其设计目的是用来简化新 Spring 应用的初始搭建以及开发过程,该框架使用了特定的方式来进行配置,从而使开发人员不再需要...

zw965
今天
4
0
简述并发编程分为三个核心问题:分工、同步、互斥。

总的来说,并发编程可以总结为三个核心问题:分工、同步、互斥。 所谓分工指的是如何高效地拆解任务并分配给线程,而同步指的是线程之间如何协作,互斥则是保证同一时刻只允许一个线程访问共...

dust8080
今天
6
0
OSChina 周四乱弹 —— 当你简历注水但还是找到了工作

Osc乱弹歌单(2019)请戳(这里) 【今日歌曲】 @花间小酌 :#今日歌曲推荐# 分享成龙的单曲《男儿当自强》。 《男儿当自强》- 成龙 手机党少年们想听歌,请使劲儿戳(这里) @hxg2016 :刚在...

小小编辑
今天
3.3K
22
靠写代码赚钱的一些门路

作者 @mezod 译者 @josephchang10 如今,通过自己的代码去赚钱变得越来越简单,不过对很多人来说依然还是很难,因为他们不知道有哪些门路。 今天给大家分享一个精彩的 GitHub 库,这个库整理...

高级农民工
昨天
9
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部