Skip to content

Latest commit

 

History

History
103 lines (87 loc) · 4.6 KB

BuildLibrary.md

File metadata and controls

103 lines (87 loc) · 4.6 KB

Самостоятельная сборка библиотеки

Порядок самостоятельной сборки библиотеки внешних компонент из исходников:

  1. Для сборки необходимо установить Visual Studio Community 2019
  2. Скачиваем и устанавливаем библиотеку boost
  3. Чтобы работала сборка примера обработки EPF надо установить OneScript версии 1.0.20 или выше
  4. Устанавливаем VirtualBox и разворачиваем в минимальной конфигурации Ubuntu 18.04 или CentOS 8
  5. Устанавливаем на Linux необходимые пакеты (см. ниже) и дополнения гостевой ОС
  6. Подключаем в VirtualBox общую папку с исходными текстами внешней компоненты
  7. В среде Linux для компиляции библиотек запустить ./build.sh
  8. В среде Window для завершения сборки запустить ./compile.bat

Сборка для Linux в CentOS 8:

yum -y group install "Development Tools"
yum -y install cmake glibc-devel.i686 glibc-devel libuuid-devel
yum -y install libstdc++-devel.i686 gtk2-devel.i686 glib2-devel.i686
yum -y install libstdc++-devel.x86_64 gtk2-devel.x86_64 glib2-devel.x86_64
yum -y install libXtst-devel.i686 libXtst-devel.x86_64
git clone https://github.com/lintest/VanessaExt.git
cd VanessaExt
./build.sh

Сборка для Linux в Ubuntu 18.04:

sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y build-essential cmake git
sudo apt install -y gcc-multilib g++-multilib
sudo apt install -y uuid-dev libx11-dev libxrandr-dev libpng-dev
sudo apt install -y libxtst-dev libxtst-dev:i386
git clone https://github.com/lintest/VanessaExt.git
cd VanessaExt
./build.sh

Сборка библотеки boost для Windows

b2.exe toolset=msvc link=static threading=multi runtime-link=static release stage

Сборка библотеки [boost] для Linux

./b2 cxxflags=-fPIC link=static threading=multi runtime-link=static release stage

Установка на VirtualBox дополнений гостевой ОС для Linux:

mkdir -p /media/cdrom
mount -r /dev/cdrom /media/cdrom
cd /media/cdrom
./VBoxLinuxAdditions.run
sudo usermod -a -G vboxsf "$USER"
reboot

Установка современного компилятора С++ на CentOS 7.7

sudo yum install -y centos-release-scl
sudo yum install -y devtoolset-9-gcc*
scl enable devtoolset-9 bash

Установка на VirtualBox дополнений гостевой ОС для CentOS:

yum group install -y "Development Tools"
yum install -y kernel-devel
mkdir -p /media/cdrom
mount -r /dev/cdrom /media/cdrom
cd /media/cdrom
./VBoxLinuxAdditions.run
reboot

Чтобы работала сборка демонстрационной внешней обработки под Linux:

  • Установить onescript;
  • Добавить в PATH путь к актуальной версии платформы 1с. Например, так:
    sudo ln -s /opt/1cv8/x86_64/8.3.18.891/1cv8 /usr/local/bin/1cv8

Для отладки компоненты под Linux:

  • Закомментировать строку strip -s bin/libVanessaExt*.so в файле build.sh

  • В файле CMakeLists.txt заменить строку:

    SET(CMAKE_BUILD_TYPE Release CACHE STRING "Build configurations" FORCE)

    на:

    SET(CMAKE_BUILD_TYPE Debug CACHE STRING "Build configurations" FORCE)

  • При необходимости удалить установленную ранее библиотеку в папке ~/.1cv8/1C/1cv8/ExtCompT/

Если в момент присоединения к процессу 1с возникает ошибка доступа, можно выполнить следующую инструкцию.


При разработке использовались библиотеки: