http://www.dre.vanderbilt.edu/~schmidt/DOC_ROOT/ACE/ACE-INSTALL.html#mingwの手順に従って、Adaptive Communication Environment(ACE)6.4.2をMinGW
を使用して構築しています。私はWindows10 64ビットオペレーティングシステムを使用しています。私はC++プロジェクトを構築するために非常に新しいです。MinGWを使用した適応型通信環境(ACE)の構築
私はhttps://sourceforge.net/projects/mingw/files/からMinGWをインストールしました。私はそれが32ビットバージョンだと思います。 MinGWインストールマネージャを使用してすべてのパッケージをダウンロードしました。
Iはhttp://download.dre.vanderbilt.edu/からACE 6.4.2をダウンロードしてEに抽出:/dependencies/ACE-6.4.2
MinGW
のルートレベルのフォルダ構造を以下に示します。システム変数path
に/dependencies/MinGW/msys/1.0/bin:/依存関係/ MinGWの/ binとE:
私はEが含まれます。
オープン
は、私は、次の手順を行いました。 MinGWののbinディレクトリにMSYS shell
:PATH
環境変数を設定します。export PATH=/e/dependencies/MinGW/bin:$PATH
追加
ACE_ROOT
環境変数ポインティングをACEラッパーのソースツリーのルートに:export ACE_ROOT=/e/dependencies/ACE-6.4.2/ACE_wrappers
ファイルを作成したがで
config.h
と呼ばれます#include "ace/config-win32.h"
を含む
$ACE_ROOT/ace
ディレクトリ私が理解してきたことは内にその
g++
ある
cd $ACE_ROOT/ace make
、MSYS
シェルで
include $(ACE_ROOT)/include/makeinclude/platform_mingw32.GNU INSTALL_PREFIX=/e/dependencies/ACE-6.4.2-install
:ファイルを作成した
が含ま$ACE_ROOT/include/makeinclude
ディレクトリにplatform_macros.GNU
と呼ばれますMinGW
が使用されます。
とエラー・ログ
make[3]: Entering directory 'e:/dependencies/ACE-6.4.2/ACE_wrappers/ace'
GNUmakefile: /e/dependencies/ACE-6.4.2/ACE_wrappers/ace/GNUmakefile.ACE MAKEFLAGS=w
g++ -Wnon-virtual-dtor -O3 -g -mthreads -mtune=pentiumpro -fno-strict-aliasing -Wall -W -Wpointer-arith -pipe -DACE_HAS_CUSTOM_EXPORT_MACROS=0 -Wno-unknown-pragmas -Ie:/dependencies/ACE-6.4.2/ACE_wrappers -DACE_NO_INLINE -I.. -DACE_BUILD_DLL -c -o .shobj/Local_Name_Space.o Local_Name_Space.cpp
In file included from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/os_include/os_sched.h:25:0,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/OS_NS_Thread.h:30,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Thread_Mutex.h:29,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Log_Category.h:18,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc.h:22,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc_T.h:16,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space.h:18,
from Local_Name_Space.cpp:1:
e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/os_include/os_time.h:56:16: error: redefinition of 'struct timespec'
typedef struct timespec
^
In file included from e:\dependencies\mingw\include\sys\time.h:3:0,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/os_include/sys/os_time.h:28,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/os_include/sys/os_resource.h:25,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/os_include/sys/os_wait.h:26,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/os_include/os_stdlib.h:27,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Basic_Types.h:54,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Log_Msg.h:26,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Log_Category.h:17,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc.h:22,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc_T.h:16,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space.h:18,
from Local_Name_Space.cpp:1:
e:\dependencies\mingw\include\time.h:102:8: error: previous definition of 'struct timespec'
struct timespec
^
In file included from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space_T.cpp:15:0,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space_T.h:259,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space.h:126,
from Local_Name_Space.cpp:1:
e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/OS_NS_unistd.h:322:45: warning: 'useconds_t' is deprecated [-Wdeprecated-declarations]
useconds_t interval = 0);
^
In file included from e:\dependencies\mingw\include\wchar.h:66:0,
from e:\dependencies\mingw\lib\gcc\mingw32\5.3.0\include\c++\cwchar:44,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/ace_wchar.h:43,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/config-lite.h:33,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/ACE_export.h:10,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc.h:16,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc_T.h:16,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space.h:18,
from Local_Name_Space.cpp:1:
e:\dependencies\mingw\include\sys\types.h:221:23: note: declared here
typedef unsigned long useconds_t __MINGW_ATTRIB_DEPRECATED;
^
In file included from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space_T.cpp:15:0,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space_T.h:259,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space.h:126,
from Local_Name_Space.cpp:1:
e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/OS_NS_unistd.h:322:45: warning: 'useconds_t' is deprecated [-Wdeprecated-declarations]
useconds_t interval = 0);
^
e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/OS_NS_unistd.h:322:45: warning: 'useconds_t' is deprecated [-Wdeprecated-declarations]
e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/OS_NS_unistd.h:326:78: warning: 'useconds_t' is deprecated [-Wdeprecated-declarations]
const ACE_Time_Value &tv_interval = ACE_Time_Value::zero);
^
In file included from e:\dependencies\mingw\include\wchar.h:66:0,
from e:\dependencies\mingw\lib\gcc\mingw32\5.3.0\include\c++\cwchar:44,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/ace_wchar.h:43,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/config-lite.h:33,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/ACE_export.h:10,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc.h:16,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Malloc_T.h:16,
from e:/dependencies/ACE-6.4.2/ACE_wrappers/ace/Local_Name_Space.h:18,
from Local_Name_Space.cpp:1:
e:\dependencies\mingw\include\sys\types.h:221:23: note: declared here
typedef unsigned long useconds_t __MINGW_ATTRIB_DEPRECATED;
^
e:/dependencies/ACE-6.4.2/ACE_wrappers/include/makeinclude/rules.local.GNU:188: recipe for target '.shobj/Local_Name_Space.o' failed
make[3]: *** [.shobj/Local_Name_Space.o] Error 1
make[3]: Leaving directory 'e:/dependencies/ACE-6.4.2/ACE_wrappers/ace'
GNUmakefile:45: recipe for target 'ACE' failed
make: *** [ACE] Error 2
最終的に、私はACEを使用したアプリケーション開発のためのQTクリエーターを使用する必要があります。 MinGw 32ビット版のQTビルドしか見つかりませんでした。だから、私はMinGW 32ビットを選択してACEを構築します。
おそらく、これをもう少し自分で調べる必要があります。ソースからC++コードをコンパイルする経験がたくさんありますか? GCCのどのバージョンでMingWのどのバージョンを使用していますか?第二に、あなたは最初の重大なエラーを報告していると確信していますか? 2番目のエラーを説明していたかもしれない初期のエラーがあります。ビルドログの2番目または70番目のエラーをデバッグするのは無意味です。 makeの出力をログファイルにリダイレクトしてpastebinに貼り付け、レビューすることができます。 –
MinGW-64(http://mingw-w64.org/doku.php参照)を使用して毎日ACEをエラーなしでコンパイルします。どのACEバージョン、どのMinGW、どのように設定したかなどの詳細を提供してください。 –
おそらくあなたは非常に新しいmingwバージョンを持っています、 'g ++ --version'の出力は? ace/config.hファイルの先頭に '#define ACE_HAS_POSIX_TIME 1'を追加してみてください。 –