導航:首頁 > 編程系統 > linuxzlib使用

linuxzlib使用

發布時間:2021-10-12 21:55:40

① 誰用過linux里的zlib

我下了zlib,解壓放在了linux伺服器下,自己編了個程序
#include <iostream>
#include <vector>
#include "zlib.h"
using namespace std;
int main()
{
const unsigned char strSrc[] = "jasddsfsfaffafasd";
unsigned char buff[1024] = {0}, strDst[1024] = {0};
unsigned long srcLen = sizeof(strSrc), bufLen = sizeof(buff), dstLen = sizeof(strDst);
//壓縮
compress(buff, &bufLen, strSrc, srcLen);
//解壓縮
uncompress(strDst, &dstLen, buff, bufLen);
cout << strDst << endl;
return 0;
}
但是程序編譯出錯
undefined reference to `compress'
undefined reference to `uncompress'

linux下不會使用庫,所以出錯了,哪位能幫我詳細的說下linux下怎麼使用庫的。
答:你把zlib包解壓後要編譯一下,它會生成一個zlib.so之類的庫文件
編譯的時候引用這個庫文件就可以#include"zlib.h"了,
就像$ gcc -o z z.c -lz
z就是生成的可執行文件,z.c就是你的代碼,-lz就是引用zlib.so了

引用 4 樓 haihai05 的回復:換個問法,寫的那個簡單的程序為什麼會報那樣的錯呢?不是說給例子。主要是想明白怎麼樣在linux下使用像zlib包這樣的東東的。是直接解壓後放在linux下就可以#include"zlib.h"
給自己的程序服務了嗎?如果是但是上面那個為什麼不對呢?引用 1 樓 showman 的回復:
zlib包不是有個example.c嗎?

一個極簡單的常式:

$ cat z.c

#include <stdio.h>
...

② 我用zlib 中的gzwrite 寫了一個文件,怎麼用Linux命令解壓

加上後綴再解壓試試看吧

③ Linux 下使用zlib庫的crc32函數問題

不知道crc32這個函數還可以接力著用,

你仔細看看吧
getline + getline + ... 把內容讀進緩沖區 跟一次性把所有內容讀進緩沖區是一樣的么。
getline 是不是去掉每行的\r\n啊?

④ linux中使用qt調用zlib庫需要添加哪些頭文件

准備工作:首先,最不可思議的,是要在Linux下把QT編譯一遍,因為庫都是一樣的,需要的就是一些Windows下的qmake、moc、uic之類的工具而已。因為QT源碼很多地方不能在Windows下面交叉編譯通過,雖然我改了一些代碼和配置(一會兒我貼出補丁來),但我只用它編譯了qtbase、qtdeclarative這兩個模塊和qttools模塊中的一部分。
Linux下的編譯可以參照我之前寫的這篇文章。參考配置:
開發包:
./configure -extprefix /opt/qt/5.2.1/arm -prefix /usr -plugindir /usr/lib/qt/plugins -importdir /usr/lib/qt/imports -qmldir /usr/lib/qt/qml -make libs -xplatform linux-arm-gnueabi-g++ -opengl es2 -confirm-license -opensource -xcb -xinput2 -nomake examples -nomake tests -qt-zlib -qt-xcb -dbus -largefile -cups -no-fontconfig -glib -gtkstyle -qt-freetype -sysroot /opt/sysroot-arm -mysql_config /opt/sysroot-arm/usr/bin/mysql_config -v

⑤ 在Linux下,用zlib寫解壓文件的C程序,需要事先知道文件壓縮前的大小么怎麼得到

.gz文件的最後4位元組就是壓縮前的原長度(ISIZE),並且倒數第二個4位元組是壓縮前專原buffer的CRC32冗餘校驗值。參見標准文屬檔 rfc1952 (https://tools.ietf.org/html/rfc1952).

⑥ 如何在linux平台下使用C++語言實現多文件的壓縮解壓縮(使用zlib依賴庫)必重謝!

由於Unix系一貫堅持功能分離,所以通常是先tar再gzip來完成多文件一次壓縮。

開發中一般是藉助zlib-X.X.X.tar.gzzlib-X.X.X.tarzlib-X.X.Xcontribminizip實例中的介面:

ZLib可能並不是一個針對ZIP文件的庫,它只是一個針對gzip以及deflate演算法的庫。它提供了一個叫做minizip
(contribminizip)例子來給出操作ZIP文件的方法。下文將從ZLib出發,歸結出兩個傻瓜介面:BOOLZipCompress(LPCTSTRlpszSourceFiles,LPCTSTRlpszDestFile);
BOOLZipExtract(LPCTSTRlpszSourceFile,LPCTSTRlpszDestFolder);
要引入的源文件
ZLib主目錄下的代碼,除minigzip.c、example.c外;
contribminizip下的代碼,除minizip.c、miniunz.c外。
相關API

然minizip更像是個例子,但是除去其主程序minizip.c和miniunz.c後,剩下的部分我們可以看作是ZLib
的一個上層庫,它封裝了與ZIP文件格式相關的操作。而minizip.c和miniunz.c
就是我們要改寫的——把它從命令行程序改為上述傻瓜介面。minizip.c和miniunz.c中用到的API主要有:
壓縮相關:
zipOpen64
zipClose
zipOpenNewFileInZip
zipCloseFileInZip
zipWriteInFileInZip
解壓相關:
unzOpen64
unzClose
unzGetGlobalInfo64
unzGoToNextFile
unzGetCurrentFileInfo64
unzOpenCurrentFile
unzCloseCurrentFile
unzReadCurrentFile
想必看到這些名字都能猜到怎麼用了吧。好的介面果然能帶給人愉悅的。minizip中的這些函數有的是帶「64」的有的是不帶的,有的還有「2」、「3」、「4」版本。這里一律用帶64的,不帶「2」、「3」、「4」的。

來源參考:http://www.cppblog.com/Streamlet/archive/2010/09/22/127368.html

⑦ linux下怎麼使用zlib庫

zlib 沒有可執行文件吧?只是幾個動態連接庫文件。而且文件名也肯定不是 zlib 這四個字母。 另外,Linux 沒有 命令。沒這東西,whereis 沒有提示很正常埃

⑧ linux怎麼安裝zlib系統配置

在linux命令行上查詢一下zlib的軟體地址,然後使用瀏覽器打開即可,如下圖所示
大家也可以在網路上進行搜索,不過一定要注意安全哦,避免下載到一些不幹凈的軟體,所以這點需要注意一下
【參考資料後面附官網下載地址】

END
Gcc編譯安裝zlib源碼包並配置使用

使用tar 命令進行解壓出來,然後進入到安裝目錄,如下圖所示
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8

使用./configure --help可以查看編譯的選項,我們這里使用簡單的選項安裝即可
進入安裝文件目錄,然後 使用如下命令進行安裝
./configure --prefix=/data/progam/zlib
make
make install
如下圖所示

再進行配置一下系統的文件,載入剛才編譯安裝的zlib生成的庫文件
vi /etc/ld.so.conf.d/zlib.conf
加入如下內容後保存退出
/data/program/zlib/lib
==============================
也就是添加安裝目錄的文件路徑,庫文件。ldconfig 運行之後就會載入安裝的庫文件了。

⑨ linux安裝zlib的問題

yum -y reinstall zlib 重新安裝軟體包, zlib是個軟體包,cp是個命令, which 查看可執行文件的位置,並不是查看軟體包的名字。
[root@instructor ~]# whereis zlib
zlib: /usr/include/zlib.h /usr/share/man/man3/zlib.3.gz

⑩ 如何在linux平台上編譯安裝zlib軟體

搜索並下載zlib源碼包

1
在linux命令行上查詢一下zlib的軟體地址,然後使用瀏覽器打開即可,如下圖所示
大家也可以在網路上進行搜索,不過一定要注意安全哦,避免下載到一些不幹凈的軟體,所以這點需要注意一下
【參考資料後面附官網下載地址】

END
Gcc編譯安裝zlib源碼包並配置使用

使用tar 命令進行解壓出來,然後進入到安裝目錄,如下圖所示
tar zxf zlib-1.2.8.tar.gz
cd zlib-1.2.8

使用./configure --help可以查看編譯的選項,我們這里使用簡單的選項安裝即可
進入安裝文件目錄,然後 使用如下命令進行安裝
./configure --prefix=/data/progam/zlib
make
make install
如下圖所示

再進行配置一下系統的文件,載入剛才編譯安裝的zlib生成的庫文件
vi /etc/ld.so.conf.d/zlib.conf
加入如下內容後保存退出
/data/program/zlib/lib
==============================
也就是添加安裝目錄的文件路徑,庫文件。ldconfig 運行之後就會載入安裝的庫文件了。

閱讀全文

與linuxzlib使用相關的資料

熱點內容
網路中常用的傳輸介質 瀏覽:518
文件如何使用 瀏覽:322
同步推密碼找回 瀏覽:865
樂高怎麼才能用電腦編程序 瀏覽:65
本機qq文件為什麼找不到 瀏覽:264
安卓qq空間免升級 瀏覽:490
linux如何刪除模塊驅動程序 瀏覽:193
at89c51c程序 瀏覽:329
怎麼創建word大綱文件 瀏覽:622
裊裊朗誦文件生成器 瀏覽:626
1054件文件是多少gb 瀏覽:371
高州禁養區內能養豬多少頭的文件 瀏覽:927
win8ico文件 瀏覽:949
仁和數控怎麼編程 瀏覽:381
項目文件夾圖片 瀏覽:87
怎麼在東芝電視安裝app 瀏覽:954
plc顯示數字怎麼編程 瀏覽:439
如何辨別假網站 瀏覽:711
寬頻用別人的賬號密碼 瀏覽:556
新app如何佔有市場 瀏覽:42

友情鏈接