Татварын PosAPI Linux дээр ажиллуулахад гарах асуудлууд шийдэх

Дусал нэвтэрхий толь-с
18:33, 4 Тавдугаар сар 2022-ий байдлаарх Almas (Яриа | оруулсан хувь нэмэр) хэрэглэгчийн хийсэн залруулга

Суулгаж тохируулах

Ubuntu 20.04 дээр доорх аргаар тохируулж үзэж туршсан болно.

Эхлээд зарим санг суулгаж бэлдэнэ:

sudo apt install libqt5network5 libqt5networkauth5 libqt5networkauth5-dev libqt5script5

Доорх хавтаснаас Linux үйлдлийн системийн нэмэлт сан татах гэж орж татна. (Энэ үйлдэл гэхдээ яг үнэхээр хэрэгтэй үгүйг мэдэхгүй байна.) https://ebarimt.mn/posapi

Тэгээд задлаад x64 хавтсан дахь файлуудыг /usr/lib/x86_64-linux-gnu хавтас руу хуулна. Татвараас өгсөн холбоосоор PosAPI-гаа татаж аваад x64/libPosAPI.so файлыг мөн /usr/lib/x86_64-linux-gnu хавтас руу хуулна.

Ингээд sendData файлаа ажиллуулахад эхний удаад алдаа заах ба дахин ажиллуулахад хэвийн болно. Ингээд getInformation ба checkApi функцуудыг шалгахад хэвийн болсон байх ёстой. Болоогүй бол доорхоор хийгээд дахин sendData 2 удаа ажиллуулж үзнэ.


Асуудал шийдвэрлэх

sendData үйлдлийг хийх үед ийм алдаа гарлаа. Энэ асуудлыг хэрхэн шийдэх вэ?

{
    "errorCode": 317,
    "message": "Баазтай харьцахад алдаа гарлаа!!! \"unknown database BILL_DATA\"",
    "success": false
}

"libsqlite3-0" сангийн version зөрөөд байсан байна.

libsqlite3-0 (3.8)

Тэгэхээр хуучин version -г нь хайж олж байгаад суулгаж ажиллуулахад алдаа нь засагдаж байна шүү.

3.8 хувилбарын debian package-н татах линк https://launchpad.net/ubuntu/trusty/amd64/libsqlite3-0/3.8.2-1ubuntu2.1

libsqlite3-0_3.8.2-1ubuntu2.1_amd64.deb ийм нэртэй файл татагдана. Доорх тушаалаар задална.

$ dpkg -x libsqlite3-0_3.8.2-1ubuntu2.1_amd64.deb libsqlite3


libsqlite3 энэ фолдерт задарсан файлуудаас, libsqlite3.so.0.8.6 гэсэн файлыг /usr/lib/x86_64-linux-gnu (эсвэл зохих фолдерт) гэсэн фолдерт хийнэ.

Доорх тушаалаар shortcut-г нь үүсгэнэ.

ln -s libsqlite3.so.0.8.6 libsqlite3.so


Segmentation fault (core dumped) гээд болохгүй байхад доорхыг суулгаад хэвийн ажиллав.

libssl1.0.0 -ийг Ubuntu 20.04-т суулгах

$ wget http://archive.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0.0_1.0.2n-1ubuntu5_amd64.deb
$ sudo apt install ./libssl1.0.0_1.0.2n-1ubuntu5_amd64.deb