使用vs2013、CodeBlocks分别编译cgal
来源:互联网 发布:手机怎么申请淘宝账号 编辑:程序博客网 时间:2024/04/30 04:52
vs2013编译cgal
1.安装boost1.5.4;安装cgal4.4;安装cmake2.8.8。
2.编译boost:
2.1执行bootstrap.bat,准备。
2.2执行b2编译。
3.编译cgal:
3.1用cmake准备vs2013的工程文件,参看网上资料,配置了boost_include_dir和boost_library_dir。
3.2用vs2013打开工程文件编译。
4.测试编译的cgal:
4.1用vs2013创建vc console程序,使用cgal手册的第一个例子代码;
4.2需要配置cgal的include和lib目录,配置boost的include和lib目录,配置cgal中的gmp的include和lib目录;
4.3提示缺少的compiler_config.h文件,从build的include复制到cgal的include目录;
4.4link需要的cgal和boost的lib只需要指定路径就可以了,而gmp的需要指定lib的名字作为输入,否则会提示gmp链接错误。
--基本上就是这些,更详细的过程参照网上资料。
CodeBlocks编译cgal
1.安装boost1.5.4;安装cgal4.4;安装cmake2.8.8;安装codeblocks13,带mingw4.8.
2.编译boost:
2.1执行bootstrap.bat gcc
2.2执行b2 --toolset=gcc --prefix=c:\apps\boost_gcc install
3.编译cgal:
3.1用cmake准备codeblocks的makefile,配置了boost_include_dir和boost_library_dir。
4.1创建console程序,使用cgal手册的第一个例子代码;
4.2需要配置cgal的include和lib目录,配置boost的include和lib目录,配置cgal中的gmp的include和lib目录;
-include配置在:project build option=search directories=compiler
-lib配置在:project build option=search directories=link
-作为输入的xlib文件名指定位置在:project build option=linker settings,用add命令增加
5.1创建UI程序,调用cgal代码如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <iostream>
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/convex_hull_2.h>
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef K::Point_2 Point_2;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_released()
{
Point_2 points[5] = { Point_2(0,0), Point_2(10,0), Point_2(10,10),
Point_2(6,5), Point_2(4,1) };
Point_2 result[5];
Point_2 *ptr = CGAL::convex_hull_2( points, points+5, result );
//std::cout << ptr - result << " points on the convex hull" <<std::endl;
QString str;
char szVal[10]={0};
itoa(ptr-result,szVal,10);
str=szVal;
ui->lineEdit->setText(str+" points on the convex hull");
}
5.2修改pro文件,配置include和lib,代码如下:
#-------------------------------------------------
#
# Project created by QtCreator 2014-04-30T22:33:42
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = cgal3_qt
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
INCLUDEPATH += C:\apps\CGAL-4.4\include \
C:\apps\CGAL-4.4\auxiliary\gmp\include \
C:\apps\boost_gcc\include\boost-1_54 \
LIBS += C:\apps\CGAL-4.4\build_gcc\lib\libCGAL.dll.a \
C:\apps\CGAL-4.4\build_gcc\lib\libCGAL_Core.dll.a \
C:\apps\CGAL-4.4\build_gcc\lib\libCGAL_ImageIO.dll.a \
C:\apps\CGAL-4.4\auxiliary\gmp\lib\libgmp-10.lib \
C:\apps\CGAL-4.4\auxiliary\gmp\lib\libmpfr-4.lib \
5.3执行的时候需要cgal和gmp的dll。
1.安装boost1.5.4;安装cgal4.4;安装cmake2.8.8。
2.编译boost:
2.1执行bootstrap.bat,准备。
2.2执行b2编译。
3.编译cgal:
3.1用cmake准备vs2013的工程文件,参看网上资料,配置了boost_include_dir和boost_library_dir。
3.2用vs2013打开工程文件编译。
4.测试编译的cgal:
4.1用vs2013创建vc console程序,使用cgal手册的第一个例子代码;
4.2需要配置cgal的include和lib目录,配置boost的include和lib目录,配置cgal中的gmp的include和lib目录;
4.3提示缺少的compiler_config.h文件,从build的include复制到cgal的include目录;
4.4link需要的cgal和boost的lib只需要指定路径就可以了,而gmp的需要指定lib的名字作为输入,否则会提示gmp链接错误。
--基本上就是这些,更详细的过程参照网上资料。
CodeBlocks编译cgal
1.安装boost1.5.4;安装cgal4.4;安装cmake2.8.8;安装codeblocks13,带mingw4.8.
2.编译boost:
2.1执行bootstrap.bat gcc
2.2执行b2 --toolset=gcc --prefix=c:\apps\boost_gcc install
3.编译cgal:
3.1用cmake准备codeblocks的makefile,配置了boost_include_dir和boost_library_dir。
3.2用codeblocks打开工程文件编译。
4.1创建console程序,使用cgal手册的第一个例子代码;
4.2需要配置cgal的include和lib目录,配置boost的include和lib目录,配置cgal中的gmp的include和lib目录;
-include配置在:project build option=search directories=compiler
-lib配置在:project build option=search directories=link
-作为输入的xlib文件名指定位置在:project build option=linker settings,用add命令增加
4.3执行时候需要cgal和gmp的dll。
5.1创建UI程序,调用cgal代码如下:
#include "mainwindow.h"
#include "ui_mainwindow.h"
#include <iostream>
#include <CGAL/Exact_predicates_inexact_constructions_kernel.h>
#include <CGAL/convex_hull_2.h>
typedef CGAL::Exact_predicates_inexact_constructions_kernel K;
typedef K::Point_2 Point_2;
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow)
{
ui->setupUi(this);
}
MainWindow::~MainWindow()
{
delete ui;
}
void MainWindow::on_pushButton_released()
{
Point_2 points[5] = { Point_2(0,0), Point_2(10,0), Point_2(10,10),
Point_2(6,5), Point_2(4,1) };
Point_2 result[5];
Point_2 *ptr = CGAL::convex_hull_2( points, points+5, result );
//std::cout << ptr - result << " points on the convex hull" <<std::endl;
QString str;
char szVal[10]={0};
itoa(ptr-result,szVal,10);
str=szVal;
ui->lineEdit->setText(str+" points on the convex hull");
}
5.2修改pro文件,配置include和lib,代码如下:
#-------------------------------------------------
#
# Project created by QtCreator 2014-04-30T22:33:42
#
#-------------------------------------------------
QT += core gui
greaterThan(QT_MAJOR_VERSION, 4): QT += widgets
TARGET = cgal3_qt
TEMPLATE = app
SOURCES += main.cpp\
mainwindow.cpp
HEADERS += mainwindow.h
FORMS += mainwindow.ui
INCLUDEPATH += C:\apps\CGAL-4.4\include \
C:\apps\CGAL-4.4\auxiliary\gmp\include \
C:\apps\boost_gcc\include\boost-1_54 \
LIBS += C:\apps\CGAL-4.4\build_gcc\lib\libCGAL.dll.a \
C:\apps\CGAL-4.4\build_gcc\lib\libCGAL_Core.dll.a \
C:\apps\CGAL-4.4\build_gcc\lib\libCGAL_ImageIO.dll.a \
C:\apps\CGAL-4.4\auxiliary\gmp\lib\libgmp-10.lib \
C:\apps\CGAL-4.4\auxiliary\gmp\lib\libmpfr-4.lib \
5.3执行的时候需要cgal和gmp的dll。
0 0
- 使用vs2013、CodeBlocks分别编译cgal
- 编译CGAL
- list在codeblocks和vs2013中编译提示不同
- 使用VS2013编译webkit
- VS2013 编译&使用 stlport
- CGAL编译安装笔记
- CGAL编译与配置
- CGAL编译错误
- CGAL 编译指南
- CodeBlocks 使用单行注释 编译出错 解决
- codeblocks使用自己的Makefile编译
- [转]vs2013编译使用Lualib
- VS2013 编译libevent 并且使用!
- 使用VS2013编译Lua5.3.2
- Window7下安装CGAL(VS2013)
- Window7下安装CGAL(VS2013)+QT5
- win64 QT(VS2013) 配置 CGAL+libQGLViewer
- CGAL(32)+Boost+CMake+win8.1+VS2013
- 组合数学 知识体系梳理
- ucosiii任务内建消息队列
- 【Sublime】Mac下使用Sublime编译运行带输入数据的程序
- spring发送邮件收到方显示为无主题,内容和附件都显示不正常
- python 调用摄像头,基于opencv 的人脸检测实现
- 使用vs2013、CodeBlocks分别编译cgal
- iOS开发中在许多项目中涉及的身份证验证等问题
- [Android L]SEAndroid开放设备文件结点权限(读或写)方法(涵盖常用操作:sys/xxx、proc/xxx、SystemProperties)热门干货
- java中Map,List与Set的区别
- Cannot find ./catalina.sh The file is absent or does not have execute permission This file is nee
- sigwait函数详解
- linux中单引号、双引号、以及反引号的区别
- Java基础之(二十六)对象与垃圾回收
- 网易笔试题:饥饿的小易