This commit is contained in:
Andrei Astafev 2020-04-11 18:07:10 +03:00
parent 5bf5a20624
commit 2bcf387ba4
3 changed files with 25 additions and 15 deletions

View File

@ -640,11 +640,12 @@ ExternalProject_Add(ext-lib
---- ----
В результате будет создана цель `ext-lib`, являющаяся результатом сборки В результате будет создана цель `ext-lib`, являющаяся результатом сборки
подключённой библиотеки. Все функции `ExternalProject_Add` необходимо располагать подключённой библиотеки. Все функции `ExternalProject_Add` необходимо
перед функциям `add_subdirectories`, чтобы в указанных подкаталогах можно было располагать перед функциям `add_subdirectories`, чтобы в указанных подкаталогах
использовать добавленные цели для определения зависимостей. можно было использовать добавленные цели для определения зависимостей.
В файле `src/cmlib-example/CMakeLists.txt` нужно подключить внешний проект `ext-lib`: В файле `src/cmlib-example/CMakeLists.txt` после создания цели `${TRGT}` нужно
подключить внешний проект `ext-lib`:
[source,cmake] [source,cmake]
---- ----
@ -659,7 +660,6 @@ target_include_directories(${TRGT} PUBLIC $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/
target_link_libraries(${TRGT} ${CMAKE_BINARY_DIR}/lib/libcmlib-example.a) target_link_libraries(${TRGT} ${CMAKE_BINARY_DIR}/lib/libcmlib-example.a)
---- ----
Для проверки работоспособности в файле `src/cmlib-example/main.cpp` нужно Для проверки работоспособности в файле `src/cmlib-example/main.cpp` нужно
вызвать функцию `cmlib_example_init` из библиотеки, предоставляемой внешним вызвать функцию `cmlib_example_init` из библиотеки, предоставляемой внешним
проектом. Например, можно заменить его содержимое на: проектом. Например, можно заменить его содержимое на:
@ -680,17 +680,22 @@ int main(int argc, char* argv[])
---- ----
ПИШУ ЗДЕСЬ!!! ПИШУ ЗДЕСЬ!!!
== Qt5
Для поиска необходимых компонентов Qt5 нужно в файл `cmex/CMakeLists.txt`
перед вызовом функции `cmlib_config_hpp_generate()` нужно добавить строку: === Qt5
Для поиска необходимых компонентов Qt5 нужно в файле `/CMakeLists.txt`,
находящемся в корневом каталоге проект, перед вызовом функции
`cmlib_config_hpp_generate()` добавить строку:
[source,cmake] [source,cmake]
---- ----
find_package(Qt5 COMPONENTS Core Network Gui Widgets DBus Concurrent Sql REQUIRED) find_package(Qt5 COMPONENTS Core Network Gui Widgets Concurrent Sql REQUIRED)
---- ----
Библиотека CMLib автоматически подключает вызов препроцессора `moc` и Библиотека CMLib автоматически подключает вызов препроцессора `moc` и

View File

@ -137,7 +137,7 @@ participant remote as "Удалённый репозиторий\n(remote reposi
[-> workspace : <font color=red>Начало работы</font> [-> workspace : <font color=red>Начало работы</font>
activate workspace activate workspace
remote -> local : <font color=red>Получение изменений с сервера</font>\n<b>git fetch</b> remote -> local : <font color=red>Получение изменений с сервера</font>\n<b>git fetch</b>
remote -> local : <font color=red>Обновление подмодулей</font>\n<b>git submodule update --remote</b> remote -> local : <font color=red>Обновление подмодулей</font>\n<b>git submodule update --recursive --init</b>
workspace <-> local : <font color=red>Просмотр информации</font>\n<b>git status</b> workspace <-> local : <font color=red>Просмотр информации</font>\n<b>git status</b>
workspace <-> local : <font color=red>Переход на ветку master</font>\n<b>git checkout master</b> workspace <-> local : <font color=red>Переход на ветку master</font>\n<b>git checkout master</b>
local -> workspace : <font color=red>Слияние с удалённой веткой</font>\n<b>git merge origin/master</b> local -> workspace : <font color=red>Слияние с удалённой веткой</font>\n<b>git merge origin/master</b>

View File

@ -19,11 +19,16 @@ CREATE TABLE example (
---- ----
const char cart[] = {0x04, 0x43, 0x00, 0x9A}; const char cart[] = {0x04, 0x43, 0x00, 0x9A};
QByteArray binDataArray(QByteArray::fromRawData(cart, 4)); QByteArray binDataArray(QByteArray::fromRawData(cart, 4));
QSqlQuery query; QSqlQuery query1;
query.prepare(QString("INSERT INTO example (id, bin_data) VALUES(:id, :bin_data)"); query1.prepare(QString("INSERT INTO example (id, bin_data) VALUES(:id, :bin_data)");
query.bindValue(":id", 10, QSql::In); query1.bindValue(":id", 10, QSql::In);
query.bindValue(":bin_data", binDataArray, QSql::In | QSql::Binary); query1.bindValue(":bin_data", binDataArray, QSql::In | QSql::Binary);
query.exec(); query1.exec();
QSqlQuery query2;
query2.exec(QString("INSERT INTO files VALUES(%1, %2);")
.arg(18)
.arg(db.driver()->formatValue(dataField)));
---- ----
Чтение данных: Чтение данных: