Я пытаюсь создать библиотеку ACE для 64-разрядной версии Mingw GCC в Windows. В инструкциях, здесь, говорится следующее:
Установите инструменты MinGW (включая набор инструментов разработки MinGW) в общий каталог, скажем
c:/mingw
.Установите инструменты MSYS в общий каталог, скажем
c:/msys
.Откройте оболочку MSYS. Задайте переменную среды
PATH
так, чтобы каталог bin вашего MinGW был первым:% export PATH=/c/mingw/bin:$PATH
Добавьте переменную среды
ACE_ROOT
, указывающую на корень исходного дерева ваших оболочек ACE:% export ACE_ROOT=/c/work/mingw/ACE_wrappers
С этого момента мы будем называть корневой каталог дерева исходных текстов ACE
$ACE_ROOT
.Создайте файл с именем config.h в каталоге
$ACE_ROOT/ace
, который содержит:#include "ace/config-win32.h"
Создайте файл с именем platform_macros.GNU в каталоге
$ACE_ROOT/include/makeinclude
, содержащий:include $(ACE_ROOT)/include/makeinclude/platform_mingw32.GNU
В приведенном выше тексте не заменяйте
$(ACE_ROOT)
фактическим каталогом, GNU make будет брать значение из переменной среды, которую вы определили ранее. Если вам не хватает Winsock 2, добавьте строкуwinsock2 = 0
перед предыдущим.
Если вы хотите установить ACE (используя "make install") и хотите, чтобы все файлы .pc были сгенерированы, установите префикс установки в platform_macros.GNU.
INSTALL_PREFIX=/c/ACE
Заголовки будут установлены в
$INSTALL_PREFIX/include
, файлы документации и сборки - в$INSTALL_PREFIX/share
, а библиотеки - в$INSTALL_PREFIX/lib
. Если установленоINSTALL_PREFIX
, будет включеноRPATH
. Чтобы отключитьRPATH
(например, если$INSTALL_PREFIX/$INSTALL_LIB
уже является системным расположением для разделяемых библиотек), установите для макроса make install_rpath значение 0, добавивinstall_rpath=0
в platform_macros.GNU.
Проблема здесь:
В оболочке MSYS перейдите в каталог
$ACE_ROOT/ace
и запустите make:% cd $ACE_ROOT/ace % make
Теперь я заметил, что в ACE_ROOT/ace
нет MakeFile, который C:\mingw64\Other\ACE_wrappers\ace
Я загрузил свои материалы ACE с здесь . Есть предложения о том, что я делаю неправильно? я скачал что-то не так?