Это команда aimkPVM, которую можно запустить в провайдере бесплатного хостинга OnWorks, используя одну из наших многочисленных бесплатных онлайн-рабочих станций, таких как Ubuntu Online, Fedora Online, онлайн-эмулятор Windows или онлайн-эмулятор MAC OS.
ПРОГРАММА:
ИМЯ
aimk - Портативный скрипт make wrapper
СИНТАКСИС
Аймк [ -здесь ] [ сделать Аргументы ]
ОПИСАНИЕ
Аймк это программа-оболочка для сделать, используется для переносимого выбора параметров для построения PVM и PVM
приложения на различных машинах. Каждому порту PVM назначается архитектура имя,
имя используется как во время компиляции (для условного переключения в коде), так и во время выполнения (чтобы
выберите исполняемый файл или хост).
aimk использует значение переменной окружения $ PVM_ARCH если он установлен, в противном случае он вызывает
$ PVM_ROOT / pvmgetarch для определения названия архитектуры. pvmgetarch - это скрипт, который
обнюхивает различные части системы, чтобы определить правильное название архитектуры. это
обновляется по мере определения новых портов PVM и может быть расширен локально.
aimk определяет архитектуру машины и ее исполнителей, передавая ей архитектуру и
файл конфигурации вместе с аргументами, передаваемыми в aimk. Он запускает make в подкаталоге
чтобы предотвратить смешивание исполняемых файлов и разрешить перекрывающиеся компиляции. А
разные make-файлы могут быть помещены в каждый подкаталог или в один make-файл, Makefile.aimk,
могут быть разделены между архитектурами. Определения архитектуры из файла $ PVM_ROOT / conf
каталог добавляются к общему make-файлу. Звонок в аймк вызывается в одном из трех
способами, в зависимости от того, какие make-файлы присутствуют:
я. Если существует $ PVM_ARCH / Makefile или $ PVM_ARCH / makefile, смените каталог на $ PVM_ARCH
и exec сделать там:
(cd $ PVM_ARCH; сделать PVM_ARCH = $ PVM_ARCH <aimk args>)
II. В противном случае, если Makefile.aimk существует, создайте каталог $ PVM_ARCH, если он не существует, а затем:
(cd $ PVM_ARCH; \
make -f $ PVM_ROOT / conf / $ PVM_ARCH.def \
-f ../Makefile.aimk PVM_ARCH = $ PVM_ARCH <аргументы цели>)
iii. В противном случае просто выполните команду make в текущем каталоге:
сделать PVM_ARCH = $ PVM_ARCH <аргументы цели>
Если aimk успешно вызывает make, статус выхода - make, в противном случае - 1.
ФЛАГИ
-здесь Заставляет aimk запускать make в текущем каталоге, например, преобразует case i. к делу
III.
ПРИМЕРЫ
Следующий файл Makefile.aimk строит и устанавливает Здравствуйте, создавая двоичный файл PVM
каталог, если он не существует. Его можно запускать одновременно на машинах разных типов,
разделяя тот же исходный каталог.
LDIR = -L $ (PVM_ROOT)/ lib /$ (PVM_ARCH)
ПВМЛИБ = -lpvm3
СДИР = ..
BDIR = $ (HOME) / pvm3 / bin
XDIR = $ (BDIR) / $ (PVM_ARCH)
CFLAGS = -g -I $ (PVM_ROOT) / включить
LIBS = $ (LDIR) $ (PVMLIB) $ (ARCHLIB)
$ (XDIR):
- mkdir $ (BDIR) $ (XDIR)
привет: $ (SDIR) /hello.c $ (XDIR)
$(CC) $(CFLAGS) -o $@ $(SDIR)/[электронная почта защищена] $ (LIBS)
mv $ @ $ (XDIR)
ОКРУЖАЮЩАЯ СРЕДА
$ PVM_ROOT Корневой путь установки PVM.
$ PVM_ARCH Имя архитектуры PVM для машины.
Используйте aimkPVM онлайн с помощью сервисов onworks.net