色哟哟视频在线观看-色哟哟视频在线-色哟哟欧美15最新在线-色哟哟免费在线观看-国产l精品国产亚洲区在线观看-国产l精品国产亚洲区久久

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

【嵌入式編程】如何在Linux平臺安裝zint開源庫

嵌入式物聯網開發 ? 來源:嵌入式物聯網開發 ? 作者:嵌入式物聯網開發 ? 2022-08-23 19:10 ? 次閱讀

? 一、zint開源庫的介紹

zint 是一個開源的條碼編碼庫,它支持超過50種條碼,包括 Code-128, Data Matrix, EAN-128, UPC/EAN, ITF, QR Code, Code 16k, PDF417, MicroPDF417, LOGMARS, Maxicode, GS1 DataBar, Aztec, Composite Symbols 等等,基本上你見過的條碼都能用它來進行編碼,它支持直接輸出 PNG 格式的圖像文件和位圖的字節數組。

它的開源項目介紹頁面,Zint Barcode Generator download | SourceForge.net 可自行閱讀。

二、zint源碼在linux平臺下的編譯和安裝

編譯平臺介紹:

系統版本 :Red Hat Enterprise Linux6

Linux內核版本:Linux localhost.localdomain 2.6.32-71.el6.i686 #1 SMP Wed Sep 1 01:26:34 EDT 2010 i686 i686 i386 GNU/Linux

gcc版本 :4.4.4 20100726 (Red Hat 4.4.4-13) (GCC)

zint版本:zint-2.4.3

編譯步驟:

1) 下載源碼

在開源頁面中下載到對應版本的zint源碼;

Zint Barcode Generator - Browse /zint/2.4.3 at SourceForge.net

筆者下載的版本是zint-2.4.3,對應的壓縮包文件為 zint-2.4.3.tar.gz

將下載的源碼放于一個新的linux的目錄下,比如/zint_src

2) 解壓源碼

cd /zint_src

tar –xvf zint-2.4.3.tar.gz 解壓到當前目錄

解壓完了之后,用ls看一下當前路徑,如果有zint-2.4.3文件夾生成,且里面有文件,解壓過程沒有報錯,則表示解壓成功了。

3) 閱讀編譯指南

cd zint-2.4.3

vi readme-cmake

里面的內容如下:

how to :

mkdir build

cd build

cmake ..

make [-j nr_proc+1]

make install

4) 開始正式編譯

mkdir build

cd build

cmake ..

執行后這句后,成功的話就會提示 Build files have been written to: /zint_src/zint-2.4.3/build

這個時候ls一下當前目錄就會發現有makefile了,我們就可以使用make直接來安裝了

make install

輸入完后,會看到百分比提示了:

【筆者第一次make install報錯了,是因為windows主機和linux虛擬機之間使用了共享文件,剛好做so文件軟鏈接的時候就報錯了,如下:】

[root@localhost build]# make install

Scanning dependencies of target zint

[ 1%] Building C object backend/CMakeFiles/zint.dir/common.c.o

[ 3%] Building C object backend/CMakeFiles/zint.dir/library.c.o

[ 5%] Building C object backend/CMakeFiles/zint.dir/render.c.o

.....[中間省略]

[ 55%] Building C object backend/CMakeFiles/zint.dir/code1.c.o

[ 57%] Building C object backend/CMakeFiles/zint.dir/gridmtx.c.o

Linking C shared library libzint.so

CMake Error: cmake_symlink_library: System Error: Operation not supported

CMake Error: cmake_symlink_library: System Error: Operation not supported

make[2]: *** [backend/libzint.so.2.4.1] 錯誤 1

make[1]: *** [backend/CMakeFiles/zint.dir/all] 錯誤 2

make: *** [all] 錯誤 2

[root@localhost build]#

如果按照一開始將源碼放于/zint_src (非主機與虛擬機的共享目錄),則可以很順利的編譯和安裝,如下:

root@localhost build]# make install

Scanning dependencies of target zint

[ 1%] Building C object backend/CMakeFiles/zint.dir/common.c.o

[ 3%] Building C object backend/CMakeFiles/zint.dir/library.c.o

[ 5%] Building C object backend/CMakeFiles/zint.dir/render.c.o

[ 7%] Building C object backend/CMakeFiles/zint.dir/ps.c.o

[ 9%] Building C object backend/CMakeFiles/zint.dir/large.c.o

[ 11%] Building C object backend/CMakeFiles/zint.dir/reedsol.c.o

.....[中間省略]

[ 53%] Building C object backend/CMakeFiles/zint.dir/code49.c.o

[ 55%] Building C object backend/CMakeFiles/zint.dir/code1.c.o

[ 57%] Building C object backend/CMakeFiles/zint.dir/gridmtx.c.o

Linking C shared library libzint.so

[ 57%] Built target zint

Scanning dependencies of target zint_frontend

[ 59%] Building C object frontend/CMakeFiles/zint_frontend.dir/main.c.o

Linking C executable zint

[ 59%] Built target zint_frontend

Scanning dependencies of target QZint

[ 61%] Building CXX object backend_qt4/CMakeFiles/QZint.dir/qzint.cpp.o

Linking CXX shared library libQZint.so

[ 61%] Built target QZint

[ 63%] Generating qrc_resources.cxx

[ 65%] Generating moc_mainwindow.cxx

[ 67%] Generating moc_datawindow.cxx

[ 69%] Generating moc_sequencewindow.cxx

[ 71%] Generating moc_exportwindow.cxx

[ 73%] Generating ui_mainWindow.h

[ 75%] Generating ui_extData.h

[ 76%] Generating ui_extSequence.h

[ 78%] Generating ui_extExport.h

Scanning dependencies of target zint-qt

[ 80%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/barcodeitem.cpp.o

[ 82%] Building CXX object frontend_qt4/CMakeFiles/zint-qt.dir/main.cpp.o

[ 84%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/mainwindow.cpp.o

[ 86%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/datawindow.cpp.o

[ 88%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/sequencewindow.cpp.o

[ 90%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/exportwindow.cpp.o

[ 92%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/moc_mainwindow.cxx.o

[ 94%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/moc_datawindow.cxx.o

[ 96%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/moc_sequencewindow.cxx.o

[ 98%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/moc_exportwindow.cxx.o

[100%] Building CXX object

frontend_qt4/CMakeFiles/zint-qt.dir/qrc_resources.cxx.o

Linking CXX executable zint-qt

[100%] Built target zint-qt

Install the project...

-- Install configuration: "RelWithDebInfo"

-- Installing: /usr/share/cmake/Modules/FindZint.cmake

-- Installing: /usr/local/lib/libzint.so.2.4.1

-- Installing: /usr/local/lib/libzint.so.2.4

-- Installing: /usr/local/lib/libzint.so

-- Installing: /usr/local/include/zint.h

-- Installing: /usr/local/bin/zint

-- Installing: /usr/local/lib/libQZint.so.2.4.1

-- Installing: /usr/local/lib/libQZint.so.2.4

-- Installing: /usr/local/lib/libQZint.so

-- Installing: /usr/local/include/qzint.h

-- Installing: /usr/local/bin/zint-qt

到這里zint庫就已經安裝好了。

5) 測試zint和libzint

通過第4步后已經完成了安裝,這個步驟我們來試一下zint和libzint如下:

先看下libzint是否安裝成功,

[root@localhost build]# ls -al /usr/local/lib/libzint.so

lrwxrwxrwx. 1 root root 14 10月 16 17:20 /usr/local/lib/libzint.so ->

libzint.so.2.4

則正是zint動態庫已經鏈接完成。

測試zint 如下:

在終端輸入 zint –h

[liluchang@localhost src]$ zint -h

Zint version 2.4.1

Encode input data in a barcode and save as a PNG, EPS or SVG file.

-h, --help Display this message.

-t, --types Display table of barcode types

-i, --input=FILE Read data from FILE.

-o, --output=FILE Write image to FILE. (default is out.png)

-d, --data=DATA Barcode content.

-b, --barcode=NUMBER Number of barcode type (default is 20 (=Code128)).

--height=NUMBER Height of symbol in multiples of x-dimension.

-w, --whitesp=NUMBER Width of whitespace in multiples of x-dimension.

--border=NUMBER Width of border in multiples of x-dimension.

--box Add a box.

--bind Add boundary bars.

-r, --reverse Reverse colours (white on black).

--fg=COLOUR Specify a foreground colour.

--bg=COLOUR Specify a background colour.

--scale=NUMBER Adjust size of output image.

--directpng Send PNG output to stdout

--directeps Send EPS output to stdout

--directsvg Send SVG output to stdout

--dump Dump binary data to stdout

--rotate=NUMBER Rotate symbol (PNG output only).

--cols=NUMBER (PDF417) Number of columns.

--vers=NUMBER (QR Code) Version

--secure=NUMBER (PDF417 and QR Code) Error correction level.

--primary=STRING (Maxicode and Composite) Structured primary message.

--mode=NUMBER (Maxicode and Composite) Set encoding mode.

--gs1 Treat input as GS1 data

--binary Treat input as Binary data

--notext Remove human readable text

--square Force Data Matrix symbols to be square

--init Create reader initialisation symbol (Code 128)

--smalltext Use half-size text in PNG images

--batch Treat each line of input as a separate data set

error: No data received, no symbol generated

[liluchang@localhost src]$

能看到版本信息,證明zint這個bin文件已經安裝好了。

至此zint和libzint的安裝已全部結束,筆者在安裝的過程中,幾乎使用的默認路徑,感興趣的童鞋可以試著修改一些自定義的安裝路徑,可以定制化自己的zint和libzint。

本章介紹到此結束,下一篇將介紹如何使用libzint生成二維碼,敬請關注。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 嵌入式
    +關注

    關注

    5090

    文章

    19173

    瀏覽量

    306844
  • Linux
    +關注

    關注

    87

    文章

    11339

    瀏覽量

    210119
  • 編程
    +關注

    關注

    88

    文章

    3637

    瀏覽量

    93901
  • zint
    +關注

    關注

    0

    文章

    1

    瀏覽量

    1023
收藏 人收藏

    評論

    相關推薦

    嵌入式 Linux 操作系統配置

    隨著物聯網(IoT)和智能設備的快速發展,嵌入式系統在各個領域扮演著越來越重要的角色。Linux因其開源、靈活和穩定的特性,成為嵌入式系統的首選操作系統。 1. 硬件選擇 在配置
    的頭像 發表于 11-06 10:22 ?557次閱讀

    何在低成本ARM平臺部署LVGL免費圖形,基于全志T113-i

    本帖最后由 Tronlong創龍科技 于 2024-10-29 10:39 編輯 LVGL簡介 LVGL(Littlev Graphics Library)是一個開源的圖形,主要用于嵌入式
    發表于 10-29 09:55

    一種常用嵌入式開發代碼

    使用開源協議:GPL-2.0varch簡介varch(we-architecture,意為我們的框架)是嵌入式C語言常用代碼模塊,包含了嵌入式
    的頭像 發表于 09-04 08:06 ?534次閱讀
    一種常用<b class='flag-5'>嵌入式</b>開發代碼<b class='flag-5'>庫</b>

    七大嵌入式GUI盤點

    提供商業技術支持,同時也繼續提供開源版本。MiniGUI為嵌入式Linux系統提供了完整的多進程支持;可以MiniGUI-Processes、MiniGUI-Threads或者
    發表于 09-02 10:58

    嵌入式linux開發的基本步驟有哪些?

    之前,首先需要選擇合適的硬件平臺。硬件選擇需要考慮以下幾個方面: 1.1 處理器 嵌入式Linux開發需要一個處理器,常見的處理器有ARM、MIPS、PowerPC等。選擇處理器時,需要考慮處理器的性能、功耗、成本等因素。 1.
    的頭像 發表于 09-02 09:11 ?592次閱讀

    嵌入式linux開發板怎么操作

    嵌入式Linux開發板是一種基于Linux操作系統的嵌入式系統開發平臺。它通常包括一個處理器、內存、存儲器、輸入/輸出接口等硬件組件,以及一
    的頭像 發表于 09-02 09:09 ?445次閱讀

    嵌入式linux開發板芯片的工作原理

    了處理器、存儲器、輸入/輸出接口等硬件資源的嵌入式系統開發平臺。它通常采用Linux操作系統作為底層軟件平臺,提供了豐富的開發工具和庫函數,方便開發者進行
    的頭像 發表于 09-02 09:07 ?446次閱讀

    專家力薦|《嵌入式系統原理與開發——基于RISC-V和Linux系統》新書發售

    當前,嵌入式系統已成為智能設備的核心之一,RISC-V+Linux開源力量為嵌入式系統注入強大的創新動力。作為中國RISC-V軟硬件生態領導者,賽昉科技與業界專家合作推出《
    的頭像 發表于 07-24 08:20 ?660次閱讀
    專家力薦|《<b class='flag-5'>嵌入式</b>系統原理與開發——基于RISC-V和<b class='flag-5'>Linux</b>系統》新書發售

    如何提升嵌入式編程能力?

    如何提升嵌入式編程能力? 要提升嵌入式編程的能力,可以從以下幾點學習: 1. 理解硬件:熟悉你正在編程的硬件
    發表于 06-21 10:01

    如何獲取STM32MP157的嵌入式Linux的OpenGL

    請問,如何獲取STM32MP157的嵌入式Linux的OpenGL
    發表于 05-27 07:27

    Linux是做什么用的?

    Linux是做什么用的?Linux是一種開源的操作系統,廣泛用于服務器、嵌入式設備和個人電腦等領域。它具有以下特點和用途: Linux是做什
    發表于 04-28 15:40

    如何獲取STM32MP157的嵌入式Linux的OpenGL

    請問,如何獲取STM32MP157的嵌入式Linux的OpenGL
    發表于 03-15 07:21

    嵌入式人工智能的就業方向有哪些?

    網絡編程開發及實戰下 數據開發 Linux應用開發綜合實戰 三:嵌入式Linux系統工程師,Linuxkernel工程師,
    發表于 02-26 10:17

    嵌入式軟件開發應該掌握哪些知識?

    和 Thumb 模式的區別,以及 ARM Cortex 系列處理器的特性。 嵌入式 ARM 開發:學習如何在嵌入式系統中使用 ARM 處理器進行開發,包括交叉編譯工具鏈的配置、裸機編程
    發表于 02-19 11:23

    高端嵌入式實驗平臺

    微處理器、內存芯片組、閃存芯片組和電源管理電路,擴展板則由嵌入式硬件接口、板載功能和擴展功能模塊組成。 軟件提供嵌入式主流Andriod和Linux雙系統軟件包,開放的資源滿足教學、科研、創新等應用,并提成配套實驗教程。 該
    的頭像 發表于 01-29 09:55 ?568次閱讀
    高端<b class='flag-5'>嵌入式</b>實驗<b class='flag-5'>平臺</b>
    主站蜘蛛池模板: 袖珍人与大黑人性视频| 成 人 色综合| 24小时日本在线观看片| 97人人添人人澡人人澡人人澡 | 青青草国产偷拍在线av| 色欲国产麻豆精品AV免费| 校花在公车上被内射好舒服| 伊人久久综合成人亚洲| free乌克兰性xxxxhd| 国产麻豆AV伦| 久久综合网久久综合| 日本G奶乳液汁| 亚洲欧美精品无码一区二在线 | 2021国产精品久久久久精品免费网| 97国产精品久久精品国产| 国产成人精品123区免费视频| 久草在线新是免费视频| 热久久视久久精品2015| 亚洲欧美日韩国产另类电影| 99久久网站| 国产亚洲999精品AA片在线爽| 免费在线观看一区| 小货SAO边洗澡边CAO你动漫| 91久久夜色精品| 国产婷婷综合在线视频中文| 摸老师丝袜小内内摸出水| 亚洲、国产综合视频| ankha成人| 精品99久久久久成人网站| 日本aaaa| 中国农村妇女真实BBWBBWBBW| 国产成人精品在视频| 免费A级毛片无码无遮挡内射| 无套日出白浆在线播放| 2020精品国产视| 国产午夜一级鲁丝片| 欧美日韩精品一区二区三区高清视频 | 亚洲乱码国产一区三区| 波野结衣qvod| 久久亚洲精选| 亚州精品视频|