diff --git a/README.md b/README.md index 2d0a0e9..4c86fc3 100644 --- a/README.md +++ b/README.md @@ -187,6 +187,44 @@ echo_submod_ptr->inp_data.Write(0, Echo_inpCycData.mem, echo_submod_ptr->cyc_ind Обмен происходит с помощью json rpc, протокол описан в файле `src/interprocess/pipes/json_rpc_protocol.txt`. +## Инструкция по сборке +ПО кроссплатформенное, настройка сборки осуществляется в файле `.vscode/settings.json`. + +### Сборка под arm cortex-a15 (sitara) + +В файле `settings.json` должна быть секция: +```json +"cmake.configureArgs": [ + "-DBOARD=BOARD_ID", + "-DCMAKE_TOOLCHAIN_FILE=${workspaceFolder}/../sitara_depot/compile/ + BOARD_TOOLCHAIN.cmake", +] +``` +где: +* `BOARD_ID` - идентфикатор платы, под которую нужна сборка, принимает значения: + * `am5718-idk` + * `BeagleBoneAI` +* `BOARD_TOOLCHAIN` - cmake файл с настройками сборки - путь к кросс-компилятору и папке sysroot: + * `toolchain_am571x_idk` - для платы am5718-idk, + * `toolchain_beagle_bone` - для платы BeagleBoneAI. + +К сожалению не нашел пути реализовать один файл toolchain.cmake для обоих плат, т.к. cmake перед сборкой самостоятельно запускает cmake с настройками из toolchain.cmake, но без задания BOARD_ID. + +### Сборка под x86_64 + +Удалить секцию `cmake.configureArgs` и запустить сборку. + +## Зависимости +Две библиотеки: +* osal `http://server_gorbunov:3000/SmartForce4.0/profinet_io_dev/src/branch/master/profinet_stack/osal` +* pnet `http://server_gorbunov:3000/SmartForce4.0/profinet_io_dev/src/branch/master/profinet_stack/p-net` + +Библиотеки уже собраны под две архитектуры cortex-a15 и x86_64. Сбори лежат тут: +* `http://server_gorbunov:3000/SmartForce4.0/profinet_io_dev/src/branch/master/libs/lib/arm_a15` +* `http://server_gorbunov:3000/SmartForce4.0/profinet_io_dev/src/branch/master/libs/lib/x86_64` + +В названии файла d - значит дебажная версия библиотеки, например libosal.a - Release, а libosald.a - Debug. +