ace能在linux下使用嗎

ace能在linux下使用,其使用方法是:1、下載ACE源碼并解壓;2、將“ACE_wrappers”文件夾放到某個目錄下;3、更改“~/.bash_profile”文件;4、在“$ACE_ROOT/ace”下創建一個“config.h”,并添加“#include “ace/config-linux.h””代碼;5、執行make命令即可。

ace能在linux下使用嗎

本教程操作環境:linux5.9.8系統、Dell G3電腦。

ace能在linux下使用嗎?

可以。

在Linux上使用ACE

ACE自適配通信環境(ADAPTIVE Communication Environment)是可自由使用、開放源碼的面向對象(OO)框架(framework),它實現了許多用于并發通信軟件的核心模式。ACE提供了一組豐富的可重用C++包裝外觀(wrapper facade)和框架組件,可跨多種平臺,如Windows、Linux、WinCE、VxWorks等系統。它不僅實現了網絡通信,還有線程、進程、內存操作等,所以現在ACE的應用還是比較廣泛的。

它的源碼可以在www.riverace.com下載

下載后解壓出來一個ACE_wrappers文件夾,將其放到某個目錄下面

?

然后更改~/.bash_profile文件,添加如下代碼

#這個目錄在編譯的時候會用到,因為所有的頭文件都在/ACE_wrappers/ace/文件夾下面?#而且它的頭文件包含形式都是<ace>形式的?ACE_ROOT=$HOME/ace/ACE_wrappers#這個是為了在程序運行的時候用的,因為安裝好之后,它的動態庫,libACE.so等都放到這個目錄里面了?#如果這個不設置,程序找libACE.so找不到的話,就沒法正常運行?LD_LIBRARY_PATH=$ACE_ROOT/lib:$LD_LIBRARY_PATH#導出這兩個環境變量?export?ACE_ROOTexport?LD_LIBRARY_PATH</ace>

然后想辦法讓你的環境變量生效,因為我用的SecureCRT遠程登錄的linux,所以斷開之后再連接,就生效了

?

然后再$ACE_ROOT/ace下面創建一個config.h

然后在里面添加上如下代碼:

#include?"ace/config-linux.h"

然后保存就行了

(ace的好多頭文件都要使用config.h,而且它跨平臺,就是要靠這個文件來區分的,在Windows下面,這個文件的內容好像就好像改為了: #include “ace/config-win32.h”)

?

然后在如下目錄:

$ACE_ROOT/include/makeinclude/

創建:

platform_macros.GNU

內容:

include?$(ACE_ROOT)/include/makeinclude/platform_linux.GNU

?

然后直接執行make命令,如果能成功執行完,就說明已經安裝好了

但我在make的時候就出現了兩個問題,開始提示某個sh腳本的執行權限不夠,我就手動加上執行權限:

chmod?+x?file

后來又提示在腳本中存在一些其它的錯誤,這時候用vi打開這些腳本,然后執行:

set ff?? ? (這個命令查看當前文本的格式,ff,即file format)

如果出現:

fileformat=dos

則再執行如下的命令:

set?ff=unix

然后保存

這樣應該就能執行成功了

?

安裝好之后就可以拿一個簡單示例來進行測試了

下面是簡單的hello world示例

#include?<stdio.h>?#include?"ace/Log_Msg.h"?#include?"ace/OS_main.h"?int?ACE_TMAIN(int?argc,?ACE_TCHAR?*argv[]){????????ACE_DEBUG((LM_DEBUG,?"Hello?World/n"));????????return?0;}</stdio.h>

?

然后執行如下命令:

g++?-Wall?-I?$ACE_ROOT?-L?$ACE_ROOT/lib?-l?ACE?-o?hello?hello.cpp

?

此時應該就生成了hello

./hello Hello?World

推薦學習:《linux視頻教程

以上就是ace能在

? 版權聲明
THE END
喜歡就支持一下吧
點贊15 分享