1. 程式人生 > >PCL初探(一) : 建立一個可執行檔案

PCL初探(一) : 建立一個可執行檔案

1.建立一個空白資料夾

2.建立空白文件,命名為pcd_write.cpp,程式碼如下

#include <iostream>
#include <pcl/io/pcd_io.h>
#include <pcl/point_types.h>

int
  main (int argc, char** argv)
{
  pcl::PointCloud<pcl::PointXYZ> cloud;

  // Fill in the cloud data
  cloud.width    = 5;
  cloud.height   = 1;
  cloud.is
_dense = false; cloud.points.resize (cloud.width * cloud.height); for (size_t i = 0; i < cloud.points.size (); ++i) { cloud.points[i].x = 1024 * rand () / (RAND_MAX + 1.0f); cloud.points[i].y = 1024 * rand () / (RAND_MAX + 1.0f); cloud.points[i].z = 1024 * rand () / (RAND_MAX + 1.0f); } pcl::io::savePCDFileASCII ("test_pcd.pcd"
, cloud); std::cerr << "Saved " << cloud.points.size () << " data points to test_pcd.pcd." << std::endl; for (size_t i = 0; i < cloud.points.size (); ++i) std::cerr << " " << cloud.points[i].x << " " << cloud.points[i].y << " " << cloud.points
[i].z << std::endl; return (0); }

3.在同一資料夾下新建CMakeLists.txt,程式碼如下

cmake_minimum_required(VERSION 2.6 FATAL_ERROR)
project(MY_GRAND_PROJECT)
find_package(PCL 1.3 REQUIRED COMPONENTS common io)
include_directories(${PCL_INCLUDE_DIRS})
link_directories(${PCL_LIBRARY_DIRS})
add_definitions(${PCL_DEFINITIONS})
add_executable(pcd_write_test pcd_write.cpp)
target_link_libraries(pcd_write_test ${PCL_COMMON_LIBRARIES} ${PCL_IO_LIBRARIES})

4.在相同資料夾下建立build資料夾並進行編譯與建立

  • mkdir build
  • cd build
  • cmake ..
  • make

    此時出現可執行檔案pcd_write_txt

5.終端輸入 ./pcd_write_txt,得到輸出這裡寫圖片描述
6.結束!

相關推薦

PCL初探() 建立一個執行檔案

1.建立一個空白資料夾 2.建立空白文件,命名為pcd_write.cpp,程式碼如下 #include <iostream> #include <pcl/io/pcd_io.h> #include <pcl/point_typ

java建立一個執行的jar包小程式

首先有兩個概念需要清楚: 1、idea打包java可執行jar包:http://www.cnblogs.com/blog5277/p/5920560.html 2、Java中String [] args中的args是什麼意思:https://blog.csdn.net/qq_356032

徹底理解連結器庫與執行檔案

庫與可執行檔案 在連結器可操作的元素這一節中我們提到,連結器可以操作的最小單元為目標檔案,也就是說我們見到的無論是靜態庫、動態庫、可執行檔案,都是基於目標檔案構建出來的。目標檔案就好比樂高積木中最小的零部件。 給定目標檔案以及連結選項,連結器可以生成兩種庫,分別是靜

objc系列譯文(6.3)Mach-O 執行檔案

當我們在Xcode中構建一個程式的時候,其中有一部分就是把原始檔(.m和.h)檔案轉變成可執行檔案。這個可執行檔案包含了將會在CPU(iOS裝置上的arm處理器或者你mac上的Intel處理器)執行的位元組碼。 我們將會過一遍編譯器這個過程的做了些什麼,同時也看一下

Linux原始碼到執行檔案(CRF++ python安裝)

這一過程又稱為編譯軟體原始碼。編譯是將原始碼(程式語言描述)翻譯成計算機處理器能識別的語言的過程。一 語言發展phase1:機器語言(數值程式碼,二進位制指令。)phase2:組合語言(有一些人理解的符號)phase3:高階程式語言(我們現在使用的語言)二 編譯程式語言(1)

Linux下安裝pyinstaller用於將py檔案打包生成一個執行檔案

(2)cd pyinstaller-2.1 執行 python setup.py install 4. 拷貝py檔案 將需打包的py檔案如test.py 拷貝到當前目錄 5. 生成可執行檔案 cd到pyinstaller目錄, 執行  python pyinstaller.py test.py可能遇到的問題1

檢視一個執行檔案或者庫的依賴庫

經常需要檢視一個可執行檔案或者庫依賴那些庫檔案。 通常情況下這很好辦,使用ldd命令就可以了,比如: 1 2 3 4 5 6 $ ldd /bin/bash linux-vdso.so.1 =>  (0x00007ffd8ffef000) libtinfo

linux環境下使用pyinstaller分步打包python程式(使用spec檔案將python程式打包成一個執行檔案)

先貼上pyinstaler的官網指南,很多使用方法可以直接查到: pyinstaller的安裝: 在自己的環境下執行: pip install Pyinstaller 有什麼錯誤就根據錯誤提示去查,這個容易解決~ pyinstaller的初步使用:

一個執行檔案是怎麼來的

一個可執行檔案的生成一般都要經過下面幾個步驟: 編輯 、預處理 、 編譯、優化、彙編 、 連線   ——>可執行檔案 下面將從這幾個步驟一個一個來分析他們的具體內容。 1. 編輯 編輯這個過程其實挺簡單的,但也是最講究的,它直接體現了一個程式設計者的程式設計習慣,

[JAVA]利用bat將jar轉變成一個執行檔案exe

>本質     明白話說在前頭,其實這是一種掩耳盜鈴的做法,不過在表現形式上,很像是把jar變成了一個可執行的exe檔案來執行。     jar的執行依舊是需要JRE環境的,但這個我們可以通過其他方式來實現,這裡暫掛不表,我們留到最後去說。     轉載請註明:[來自

作業系統(程序間共享儲存區的通訊):建立一個共享儲存區,大小4個位元組(int大小)。建立一個子程序,然後子父程序獨自執行。父程序寫入一個數字到共享儲存區,子程序在共享儲存區把該數字讀出

題目:建立一個共享儲存區,大小4個位元組(int大小)。建立一個子程序,然後子父程序獨自執行。父程序寫入一個數字到共享儲存區,子程序在共享儲存區把該數字讀出。 程式碼量很少,純屬應付作業 筆者在telnet上寫這些程式碼,由於知識技術及英語太菜,不知道怎樣在telnet上覆製出來這些程式碼,

(轉)Gradle初探建立一個Gradle專案

http://www.jianshu.com/p/c0fc6a91d3e7 前兩天聽BOSS提到了Gradle,說論壇里人說"比Maven好"云云,故抽空試玩了下。 1. 環境準備 1.1. 先上Gradle官網下載最新版的程式,地址:https://gradle.org/gradle-

要創建一個執行的jar,我們需要添加spring-boot-maven-plugin到我們的 pom.xml。為此,請在該dependencies部分正下方插入以下幾行

pos pen 如果 個人 uil sta type version port 要創建一個可執行的jar,我們需要添加spring-boot-maven-plugin到我們的 pom.xml。為此,請在該dependencies部分正下方插入以下幾行: 1 <bui

執行緒()建立執行緒的幾種方法

概括來說就是兩種:1、繼承Thread類,重寫run方法,然後start。不推薦這種,因為java的單繼承特性。 2、Thread類的建構函式中可以接受Runnable任務,所以只要是Runnable例項就可以作為引數給Thread 一般有兩種建立Runnable例項的方法(1)實現Runn

python裝飾器用法(計算一個函式執行所需要的時間

import time from functools import wraps def time_this_function(func): #作為裝飾器使用,返回函式執行需要花費的時間

Scrum實踐指南一個執行的Scrum是怎樣的

      在目前的網際網路公司,敏捷(Agile)的概念已經有相當的普及,人人都在談,似乎不談敏捷就不那麼網際網路了。幾乎所有的網際網路公司都不同程度的實施了敏捷。採用敏捷開發的方法也有很多,主要包括極限程式設計(XP)、Scrum、水晶方法(Crystal Methods

使用 pyinstaller 建立執行檔案時的一個小麻煩

想使用pyinstaller 建立exe檔案,首先安裝 pyinstaller :pip install pyinstaller然後 對一個python 檔案進行操作:pyinstaller -F hello.py 會在dist目錄下產生 hello.exe 但是若你的原始檔

C++多執行緒初級建立執行

以函式為引數建立執行緒: // PolythreadDemo.cpp : 定義控制檯應用程式的入口點。 //這裡有一個觀點,就是當使用某個函式的時候,再 //寫上標頭檔案,不用一開始就來、

Linux核心分析Linux核心如何裝載和啟動一個執行程式

1.編譯連結的過程和ELF可執行檔案格式 從一個原始碼檔案到一個可執行程式檔案大概要經歷如下過程: 以C程式碼為例子,有如下程式碼的一個hello.c檔案 //hello.c #include <stdio.h> int ma

[Unity通訊]一個基於socket的3DARPG網路遊戲()建立連線和事件分發

一.客戶端 1.定義一個訊息體,伺服器和客戶端通訊的時候,傳輸的就是這樣的資訊。 using System.Collections; using System.Text; public class SocketMessage { //大模組,例如登入註冊模組,