Privacy policyContactsAbout siteOpinionsGitHubDonate
© EVILEG 2015-2018
Recommend hosting
TIMEWEB
Dec. 19, 2018, 8:43 a.m.

Как подключить ICU

Qt, ICU, SQLite

Здравствуйте. Говорят, если подключить ICU, то в SQLite появится регистронезависемый поиск. Я нашел скомпилированный ICU по этой ссылке https://www.npcglib.org/~stathis/blog/precompiled-icu/ Скажите пожалуйста, как это правильно подключить в проект?

3

Добрый день!

По идее, всё это добро можно подключить например так (это для подключения статических библиотек),

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicudt
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicudtd

INCLUDEPATH += $$PWD/icu-59.1-vs2017/include
DEPENDPATH += $$PWD/icu-59.1-vs2017/include

win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicudt.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicudtd.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicudt.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicudtd.lib

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicuin
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicuind

INCLUDEPATH += $$PWD/icu-59.1-vs2017/include
DEPENDPATH += $$PWD/icu-59.1-vs2017/include

win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicuin.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicuind.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicuin.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicuind.lib

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicuio
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicuiod

INCLUDEPATH += $$PWD/icu-59.1-vs2017/include
DEPENDPATH += $$PWD/icu-59.1-vs2017/include

win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicuio.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicuiod.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicuio.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicuiod.lib

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicutest
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicutestd

INCLUDEPATH += $$PWD/icu-59.1-vs2017/include
DEPENDPATH += $$PWD/icu-59.1-vs2017/include

win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicutest.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicutestd.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicutest.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicutestd.lib

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicutu
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicutud

INCLUDEPATH += $$PWD/icu-59.1-vs2017/include
DEPENDPATH += $$PWD/icu-59.1-vs2017/include

win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicutu.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicutud.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicutu.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicutud.lib

win32:CONFIG(release, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicuuc
else:win32:CONFIG(debug, debug|release): LIBS += -L$$PWD/icu-59.1-vs2017/lib/ -lsicuucd

INCLUDEPATH += $$PWD/icu-59.1-vs2017/include
DEPENDPATH += $$PWD/icu-59.1-vs2017/include

win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicuuc.a
else:win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/libsicuucd.a
else:win32:!win32-g++:CONFIG(release, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicuuc.lib
else:win32:!win32-g++:CONFIG(debug, debug|release): PRE_TARGETDEPS += $$PWD/icu-59.1-vs2017/lib/sicuucd.lib

Вообще в Qt Creator есть визард для подключения библиотек. Кликаете на проект правой кнопкой мыши и выбираете в контекстном меню "Добавить библиотеку", а там дальше внешнюю, статическую и т.д.

Я только не уверен, что это будет работать автоматически. Не удивлюсь, если нужно гонять данные через этот самый ICU, просто подключить скорее всего будет мало.

0

я тоже этого боюсь. из ICU вместе с драйверами компилируют новый драйвер и тогда оно иногда работает, но вот как это сделать, я пока не понял.

0

ну... тут нужно поискать какие-то мануалы по компилированию самого драйвера SQLite тогда. Это интересный вопрос, но лично я им не занимался никогда.

0

Comments

Only authorized users can post comments.
Please, Log in or Sign up
v
Jan. 17, 2019, 11:51 a.m.
vitalir12

C ++ - Test 004. Pointers, Arrays and Loops

  • Result:20points,
  • Rating points-10
v
Jan. 17, 2019, 11:49 a.m.
vitalir12

C++ - Test 002. Constants

  • Result:50points,
  • Rating points-4
v
Jan. 17, 2019, 11:13 a.m.
vitalir12

C++ - Тест 003. Условия и циклы

  • Result:28points,
  • Rating points-10
Last comments
I
Jan. 16, 2019, 8:06 a.m.
IscanderChe

Заработало. Забыл model->select(); вписать.
I
Jan. 16, 2019, 8:02 a.m.
IscanderChe

Всё равно пусто, хотя строка с данными в базу добавляется.
Jan. 16, 2019, 7:51 a.m.
Евгений Легоцкой

потому, что нужно сохранять информацию для всех остальных ролей и столбцов через вызов переопределённого метода. Да к тому же вы ещё и зациклили вызов метода data. QVariant MySqlTableModel:...
I
Jan. 16, 2019, 7:43 a.m.
IscanderChe

Сделал вот так. В tableView ничего нет, кроме заголовка. QVariant MySqlTableModel::data(const QModelIndex &index, int role) const{ if (role == Qt::DisplayRole) { QTime ...
Now discuss on the forum
Jan. 17, 2019, 1:40 p.m.
Михаиллл

Спасибо, заработало.Учту с переменными.
Jan. 17, 2019, 12:01 p.m.
Алексей Внуков

у меня просто есть отдельное поле с чекбоксамими какие колонки нужно отображать CheckBox { id: checkBox text: qsTr("some text") checked: true onC...
Jan. 15, 2019, 4:53 p.m.
Михаиллл

Спасибо, заработало.Но выдало обычный текст без форатирования HTML.Придется искать дальше
Jan. 15, 2019, 12:52 p.m.
BlinCT

Я же вам выше написал CLion умеет работать с ремоут машинами. И Qt так же собирает.
Join us in social networks

For registered users on the site there is a minimum amount of advertising