chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

【嵌入式編程】如何在Linux平臺(tái)安裝zint開源庫(kù)

嵌入式物聯(lián)網(wǎng)開發(fā) ? 來源:嵌入式物聯(lián)網(wǎng)開發(fā) ? 作者:嵌入式物聯(lián)網(wǎng)開發(fā) ? 2022-08-23 19:10 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

? 一、zint開源庫(kù)的介紹

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

它的開源項(xiàng)目介紹頁(yè)面,Zint Barcode Generator download | SourceForge.net 可自行閱讀。

二、zint源碼在linux平臺(tái)下的編譯和安裝

編譯平臺(tái)介紹:

系統(tǒng)版本 :Red Hat Enterprise Linux6

Linux內(nèi)核版本: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) 下載源碼

在開源頁(yè)面中下載到對(duì)應(yīng)版本的zint源碼;

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

筆者下載的版本是zint-2.4.3,對(duì)應(yīng)的壓縮包文件為 zint-2.4.3.tar.gz

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

2) 解壓源碼

cd /zint_src

tar –xvf zint-2.4.3.tar.gz 解壓到當(dāng)前目錄

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

3) 閱讀編譯指南

cd zint-2.4.3

vi readme-cmake

里面的內(nèi)容如下:

how to :

mkdir build

cd build

cmake ..

make [-j nr_proc+1]

make install

4) 開始正式編譯

mkdir build

cd build

cmake ..

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

這個(gè)時(shí)候ls一下當(dāng)前目錄就會(huì)發(fā)現(xiàn)有makefile了,我們就可以使用make直接來安裝了

make install

輸入完后,會(huì)看到百分比提示了:

【筆者第一次make install報(bào)錯(cuò)了,是因?yàn)閣indows主機(jī)和linux虛擬機(jī)之間使用了共享文件,剛好做so文件軟鏈接的時(shí)候就報(bào)錯(cuò)了,如下:】

[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] 錯(cuò)誤 1

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

make: *** [all] 錯(cuò)誤 2

[root@localhost build]#

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

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庫(kù)就已經(jīng)安裝好了。

5) 測(cè)試zint和libzint

通過第4步后已經(jīng)完成了安裝,這個(gè)步驟我們來試一下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動(dòng)態(tài)庫(kù)已經(jīng)鏈接完成。

測(cè)試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這個(gè)bin文件已經(jīng)安裝好了。

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

本章介紹到此結(jié)束,下一篇將介紹如何使用libzint生成二維碼,敬請(qǐng)關(guān)注。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 嵌入式
    +關(guān)注

    關(guān)注

    5186

    文章

    20133

    瀏覽量

    328336
  • Linux
    +關(guān)注

    關(guān)注

    88

    文章

    11622

    瀏覽量

    217824
  • 編程
    +關(guān)注

    關(guān)注

    90

    文章

    3707

    瀏覽量

    96709
  • zint
    +關(guān)注

    關(guān)注

    0

    文章

    1

    瀏覽量

    1106
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    嵌入式與FPGA的區(qū)別

    ,一是嵌入式軟件開發(fā),主要與嵌入式cao作系統(tǒng)、應(yīng)用軟件等有關(guān)。第二是嵌入式硬件開發(fā),需要掌握硬件設(shè)計(jì)、模擬仿真、 PCB設(shè)計(jì)等技能。 ?2、FPGA:它是在PAL、GAL、CPLD等可編程
    發(fā)表于 11-20 07:12

    嵌入式需要掌握哪些核心技能?

    嵌入式需要掌握哪些核心技能? 若想通過學(xué)習(xí)嵌入式技術(shù)提升就業(yè)競(jìng)爭(zhēng)力,需重點(diǎn)掌握C語言、嵌入式硬件架構(gòu)、RTOS/Linux開發(fā)、通信協(xié)議四大核心技能,并結(jié)合行業(yè)需求積累項(xiàng)目經(jīng)驗(yàn)。
    發(fā)表于 10-21 16:25

    嵌入式工程師為什么要學(xué)QT?

    、車載系統(tǒng)和消費(fèi)電子等領(lǐng)域尤為突出。其跨平臺(tái)特性、豐富的庫(kù)和工具、高性能以及強(qiáng)大的GUI支持,讓Qt成為嵌入式開發(fā)最理想的選擇。 嵌入式工程師學(xué)習(xí)Qt有很多好處。 跨
    發(fā)表于 08-14 15:15

    一文讀懂:嵌入式Linux實(shí)時(shí)性進(jìn)階

    在工業(yè)控制、機(jī)器人、汽車電子等關(guān)鍵領(lǐng)域,嵌入式系統(tǒng)對(duì)實(shí)時(shí)性要求極高。 Linux作為強(qiáng)大的通用操作系統(tǒng),其原生實(shí)時(shí)性能難以滿足最嚴(yán)苛的硬實(shí)時(shí)需求。為突破這一限制,PREEMPT_RT補(bǔ)丁
    發(fā)表于 07-10 15:26

    怎么結(jié)合嵌入式,Linux,和FPGA三個(gè)方向達(dá)到一個(gè)均衡發(fā)展?

    嵌入式領(lǐng)域,不少人都懷揣著讓嵌入式、Linux 和 FPGA 三個(gè)方向?qū)崿F(xiàn)均衡發(fā)展的夢(mèng)想,然而實(shí)踐中卻面臨諸多挑戰(zhàn)。就像備受矚目的全棧工程師稚暉君,他從大學(xué)玩單片機(jī)起步,憑借將智能算法融入
    的頭像 發(fā)表于 06-25 10:08 ?638次閱讀
    怎么結(jié)合<b class='flag-5'>嵌入式</b>,<b class='flag-5'>Linux</b>,和FPGA三個(gè)方向達(dá)到一個(gè)均衡發(fā)展?

    Linux嵌入式和單片機(jī)嵌入式的區(qū)別?

    : 單片機(jī)嵌入式 :開發(fā)環(huán)境相對(duì)簡(jiǎn)單,通常使用C語言或匯編語言進(jìn)行編程,開發(fā)工具包括Keil、IAR等。 Linux嵌入式 :開發(fā)環(huán)境較為復(fù)雜,除了需要掌握C語言,還需要了解
    發(fā)表于 06-20 09:46

    物聯(lián)網(wǎng)工程師為什么要學(xué)Linux?

    物聯(lián)網(wǎng)工程師需要掌握Linux的主要原因可以從技術(shù)生態(tài)、開發(fā)需求、行業(yè)應(yīng)用及就業(yè)競(jìng)爭(zhēng)力四個(gè)角度來分析: 一、技術(shù)生態(tài)與行業(yè)適配性 1)嵌入式開發(fā)的主流平臺(tái) 物聯(lián)網(wǎng)設(shè)備往往基于嵌入式
    發(fā)表于 05-26 10:32

    嵌入式開發(fā)入門指南:從零開始學(xué)習(xí)嵌入式

    特定功能的計(jì)算機(jī)系統(tǒng),廣泛應(yīng)用于智能家居、工業(yè)控制、醫(yī)療設(shè)備、車載系統(tǒng)等領(lǐng)域。 2. 學(xué)習(xí)嵌入式開發(fā)的前置知識(shí)熟悉C語言編程掌握基本的數(shù)據(jù)結(jié)構(gòu)與算法了解數(shù)字電路與微控制器原理熟悉Linux操作系統(tǒng)
    發(fā)表于 05-15 09:29

    嵌入式編程設(shè)計(jì)模式

    嵌入式編程設(shè)計(jì)模式,介紹如何使用設(shè)計(jì)模式為嵌入式系統(tǒng)創(chuàng)建高效且優(yōu)化的C語言設(shè)計(jì)。 純分享貼,有需要可以直接下載附件獲取完整資料! (如果內(nèi)容有幫助可以關(guān)注、點(diǎn)贊、評(píng)論支持一下哦~)
    發(fā)表于 04-15 14:47

    Linux的作用

    。 2、嵌入式系統(tǒng):Linux可以被嵌入到各種嵌入式設(shè)備中,如智能路由器、智能電視等。它提供了一個(gè)靈活的平臺(tái),可以根據(jù)設(shè)備的需求進(jìn)行定制和優(yōu)
    發(fā)表于 04-04 01:57

    怎么嵌入式linux下控制dlp?

    請(qǐng)問怎么嵌入式linux 下控制dlp,有沒有支持
    發(fā)表于 03-03 07:02

    Made with KiCad(九十四):M5Pi Linux嵌入式開發(fā)板

    “ 波哥大作,必須優(yōu)先安排!M5Pi 是一款開源 Linux 嵌入式開發(fā)板,使用全志 F1C200s CPU,擁有漂亮的外殼?!?/div>
    的頭像 發(fā)表于 12-25 14:53 ?1302次閱讀
    Made with KiCad(九十四):M5Pi <b class='flag-5'>Linux</b><b class='flag-5'>嵌入式</b>開發(fā)板

    新手怎么學(xué)嵌入式?

    的運(yùn)行機(jī)制。例如,了解數(shù)據(jù)結(jié)構(gòu)中的鏈表、棧和隊(duì)列,對(duì)于在嵌入式編程中管理數(shù)據(jù)非常有幫助。 2. 選擇合適的編程語言 嵌入式開發(fā)中常用的編程
    發(fā)表于 12-12 10:51

    如何快速入門HAL庫(kù)編程 HAL庫(kù)與裸機(jī)編程的比較

    如何快速入門HAL庫(kù)編程 要快速入門HAL庫(kù)編程,可以遵循以下步驟: 了解基礎(chǔ)知識(shí) : 掌握C語言編程基礎(chǔ),包括變量、數(shù)據(jù)類型、函數(shù)、指針等
    的頭像 發(fā)表于 12-02 11:39 ?1698次閱讀

    HAL庫(kù)嵌入式系統(tǒng)中的應(yīng)用

    HAL庫(kù)是一種在嵌入式開發(fā)中用于屏蔽底層硬件細(xì)節(jié)、提供統(tǒng)一接口的軟件層。它允許開發(fā)者在編寫應(yīng)用程序時(shí)無需關(guān)心具體的硬件實(shí)現(xiàn),從而提高了代碼的可移植性和復(fù)用性。HAL庫(kù)的主要目的是將硬件相關(guān)的代碼與應(yīng)用程序代碼分離,使得開發(fā)者能
    的頭像 發(fā)表于 12-02 11:32 ?2885次閱讀