1. 程式人生 > >在cmakeLists中這是多平臺相容

在cmakeLists中這是多平臺相容

在你想要做成庫的.h檔案中新增如下的程式碼:

#ifndef DBZHANG_HELLO_
#define DBZHANG_HELLO_
#if defined _WIN32
    #if LIBHELLO_BUILD
        #define LIBHELLO_API __declspec(dllexport)
    #else
        #define LIBHELLO_API __declspec(dllimport)
    #endif
#else
    #define LIBHELLO_API
#endif
LIBHELLO_API void hello(const
char* name); #endif //DBZHANG_HELLO_

並且在.cpp檔案的同級cmakelists.txt中
進行如下設定:

set(LIB_SRC hello.c)
add_definitions("-DLIBHELLO_BUILD")
add_library(libhello SHARED ${LIB_SRC})
set(LIBRARY_OUTPUT_PATH ${PROJECT_BINARY_DIR}/lib)
set_target_properties(libhello PROPERTIES OUTPUT_NAME "hello")

相關推薦

cmakeLists平臺相容

在你想要做成庫的.h檔案中新增如下的程式碼: #ifndef DBZHANG_HELLO_ #define DBZHANG_HELLO_ #if defined _WIN32 #if LI

Java線程你只要看一篇就夠了

== 討論 cin 線程池。 locking nth lis dset tro 引 如果對什麽是線程、什麽是進程仍存有疑惑,請先Google之,因為這兩個概念不在本文的範圍之內。 用多線程只有一個目的,那就是更好的利用cpu的資源,因為所有的多線程代碼都可以用單線程來實現。

轉:Java線程你只要看一篇就夠了

無法 線程不安全 str his ace oat 情況下 containe live 如果對什麽是線程、什麽是進程仍存有疑惑,請先Google之,因為這兩個概念不在本文的範圍之內。 用多線程只有一個目的,那就是更好的利用cpu的資源,因為所有的多線程代碼都可以用單線程來實現

Java執行緒你只要看一篇就夠了(轉)

引 如果對什麼是執行緒、什麼是程序仍存有疑惑,請先Google之,因為這兩個概念不在本文的範圍之內。 用多執行緒只有一個目的,那就是更好的利用cpu的資源,因為所有的多執行緒程式碼都可以用單執行緒來實現。說這個話其實只有一半對,因為反應“多角色”的程式程式碼,最起碼每個角色要給他一個執行緒吧,否

Java執行緒你只要看一篇就夠了

/** * 生產者生產出來的產品交給店員 */ public synchronized void produce() { if(this.product >= MAX_PRODUCT) { try {

Java 執行緒你只要看一篇就夠了

如果對什麼是執行緒、什麼是程序仍存有疑惑,請先Google之,因為這兩個概念不在本文的範圍之內。 用多執行緒只有一個目的,那就是更好的利用cpu的資源,因為所有的多執行緒程式碼都可以用單執行緒來實現。說這個話其實只有一半對,因為反應“多角色”的程式程式碼,最起碼每個角色要給他一個

Java 線程你只要看一篇就夠了

並發 進入 事務 相同 人工 出了 研究 class pool 引 如果對什麽是線程、什麽是進程仍存有疑惑,請先Google之,因為這兩個概念不在本文的範圍之內。 用多線程只有一個目的,那就是更好的利用cpu的資源,因為所有的多線程代碼都可以用單線程來實現。說這個話其實只有

執行緒(本文轉載而來) Java執行緒你只要看一篇就夠了

Java中的多執行緒你只要看這一篇就夠了    引 如果對什麼是執行緒、什麼是程序仍存有疑惑,請先Google之,因為這兩個概念不在本文的範圍之內。 用多執行緒只有一個目的,那就是更好的利用cpu的資源,因為所有的多執行緒程式碼都可以用單執行緒來實現。說

一個Android平臺問題相容解決思路

問題:使用AS打出來的簽名包,在除錯一直用的5.0的小米手機上可以正常執行,4.4的聯想手機上閃退,5.1的模擬器上閃退。 丟擲:java.lang.UnsatisfiedLinkError,Cl

平臺容器映象構建就看一篇

## 前言 ### 願景與現實 早在1995年,就有“write once and run anywhere”(WORA,編寫一次即可在任何地方執行)用於描述 Java 應用程式。時過20年,Docker 高聲喊出了自己的口號——“Build Once, Run Anywhere”(一次構建,隨處可用)。

sql 如何同時更改一列行值

sql如圖,我要把 pre_tel 列 都加上 010 或者其他區號,但是如何用同一條 sql 語句實現?sql 如何同時更改一列中的多行值

python系列(五)centos6.x部署個python版本

python pyenv centos6.x virtualenv 博主QQ:819594300博客地址:http://zpf666.blog.51cto.com/有什麽疑問的朋友可以聯系博主,博主會幫你們解答,謝謝支持!使用pyenv+virtualenv方式部署python多版本pyenv

Java線程

stat 創建 run ron 實現 簡介 通過 public main Java 中的多線程簡介 1. Java 中的線程是通過 java.lang.Thread 類來實現的, 每一個 Thread 對象, 代表了一個新的主線程的線程. 2. Java 虛擬機啟動時會有一

在一個進程定義個線程

daemon 之前 args 設置 tar main art blog thread import threadingfrom time import ctime,sleepimport timedef music(name): print(‘listening to

(十二)Hibernate表操作(1):單向對一

art 保存 int gen round t對象 情況 映射文件 拋出異常 由“多”方可知“一”方的信息,比如多個員工使用同一棟公寓,員工可以知道公寓的信息,而公寓無法知道員工的信息。 案例一: pojo類 public class Department {

java 一個文件個class

nds ride 中一 pan 文件名 out clas int [] 一個java文件中可以包含多個類,但這些類中一個特殊類,這個類的屬性為public,且這個類的名字與文件名相同,java文件中僅有一個類為public. interface Moveable

(十四)Hibernate表操作(4):單向一對一

odin utf-8 lds () clas string 方式 rdb style 案例一: 註解方式實現一對一 UserBean.java package bean; import java.io.Serializable; import javax.pers

Java

如何 face blog xtend this 編譯器 sets getname with 以下內容引用自http://wiki.jikexueyuan.com/project/java/polymorphism.html: 多態性是指對象能夠有多種形態。在OOP中最常用

JS 實現變量在字符串層拼接與嵌套

code source soft 編輯 str clas strong ros eid 簡單點。。。 ‘<a onclick="editCsRole(roleId)" class="openNewTab">編輯</a>‘; 其中 role

循環刪除DataTable.Row行問題

datarow for datatable eight nbsp family let -- 永遠 在C#中,如果要刪除DataTable中的某一行,大約有以下幾種辦法: 1,使用DataTable.Rows.Remove(DataRow),或者DataTable.Rows