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

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

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

Windows下基于MSVC搭建libjpeg開發(fā)環(huán)境

嵌入式USB開發(fā) ? 來源:嵌入式USB開發(fā) ? 作者:嵌入式USB開發(fā) ? 2023-06-08 10:23 ? 次閱讀

本文轉(zhuǎn)自公眾號,歡迎關(guān)注

Windows下基于MSVC搭建libjpeg開發(fā)環(huán)境 (qq.com)

前言

官網(wǎng)

http://ijg.org/

圖片

下載的是jpegsr9e.zip

圖片

構(gòu)建

參考源碼中的install.txt

解壓源碼

打開VS的命令行

C:\\ProgramData\\Microsoft\\Windows\\Start Menu\\Programs\\Visual Studio 2022\\Visual Studio Tools\\VC下的x64 Native Tools Command Prompt for VS 2022

進(jìn)入到源碼路徑

cd C:\\Users\\qinyunti\\OneDrive\\wuqi\\usb\\jpegsr9e\\jpeg-9e

此時如果沒有進(jìn)入對應(yīng)路徑,則再輸入

C:

生成VS工程V17對應(yīng)VS2022,將jconfig.vc移動為 jconfig.h并生成工程

nmake /f makefile.vs setup-v17

圖片

使用nmake /f makefile.vs setupcopy-v17的話保留jconfig.vc可以重復(fù)生成。

編譯庫

雙擊打開

jpeg.sln

設(shè)置平臺和自己的平臺對應(yīng),這里選x64,菜單欄生成->生成解決方案

圖片

\\Release\\x64下生成靜態(tài)庫文件jpeg.lib

編譯測試程序

雙擊打開

apps.sln

同樣選擇x86平臺,菜單欄生成->生成解決方案

圖片

\\Release\\x64下生成cjpeg.exe,djpeg.exe,jpegtran.exe,rdjpgcom.exe,wrjpgcom.exe5個測試程序。

自測試

在命令行中

nmake /f makefile.vs test-64

如果是32位平臺則

nmake /f makefile.vs test-32

沒有差異說明測試OK。

圖片

測試輸入文件位于

jpeg-9e

輸出圖片位于

jpeg-9e\\Release

在自己的工程中使用

工程配置

在自己的工程目錄新建libjpeg文件夾,創(chuàng)建inc和lib子目錄。

將jpeg.lib復(fù)制到lib目錄下。

將源碼中所有的.h文件復(fù)制到inc目錄下。

右鍵點擊工程名->屬性

設(shè)置包含路徑

$(MSBuildProjectDirectory)\\Src\\libjpeg\\inc;

設(shè)置庫路徑

$(MSBuildProjectDirectory)\\Src\\libjpeg\\lib;

圖片

設(shè)置鏈接的庫文件jpeg.lib

圖片

測試代碼

編碼測試

復(fù)制源碼路徑的以下文件到自己的工程目錄

圖片

生成解決方案

告警

1>C:\\Users\\qinyunti\\OneDrive\\wuqi\\usb\\USB_VS\\USB\\Src\\cdjpeg.c(154,3): error C4996: 'setmode': The POSIX name for this item is deprecated. Instead, use the ISO C and C++ conformant name: _setmode. See online help for details.

將setmode改為_setmode

fileno改為_fileno

編碼測試

從源碼路徑復(fù)制測試文件testimg.ppm過來

.\\cjpeg.exe testimg.ppm testimg.jpg

可以看到testimg.ppm編碼為了testimg.jpg

解碼測試

添加如下文件

圖片

同樣的

將setmode改為_setmode

fileno改為_fileno

解碼測試

.\\USB.exe -bmp -colors 256 testimg.jpg testimg.bmp

可以看到testimg.jpg解碼為了testimg.bmp

審核編輯:湯梓紅

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

    關(guān)注

    5059

    文章

    18973

    瀏覽量

    302002
  • WINDOWS
    +關(guān)注

    關(guān)注

    3

    文章

    3521

    瀏覽量

    88316
  • 源碼
    +關(guān)注

    關(guān)注

    8

    文章

    632

    瀏覽量

    29110
  • 開發(fā)環(huán)境
    +關(guān)注

    關(guān)注

    1

    文章

    218

    瀏覽量

    16567
收藏 人收藏

    評論

    相關(guān)推薦

    Windows基于MSVC搭建libuvc開發(fā)環(huán)境

    libuvc是基于libusb的跨平臺UVC庫。在Mac 和 Linux上可以直接構(gòu)建(使用cmake),也可以移植到Windows。
    的頭像 發(fā)表于 06-08 10:19 ?6018次閱讀
    <b class='flag-5'>Windows</b><b class='flag-5'>下</b>基于<b class='flag-5'>MSVC</b><b class='flag-5'>搭建</b>libuvc<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    Windows基于MSVC搭建libusb開發(fā)環(huán)境

    Windows基于MSVC搭建libusb開發(fā)環(huán)境
    的頭像 發(fā)表于 06-08 10:25 ?2779次閱讀
    <b class='flag-5'>Windows</b><b class='flag-5'>下</b>基于<b class='flag-5'>MSVC</b><b class='flag-5'>搭建</b>libusb<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    Windows基于MSVC搭建ffmpeg開發(fā)環(huán)境

    Windows基于MSVC搭建ffmpeg開發(fā)環(huán)境
    的頭像 發(fā)表于 06-08 10:27 ?1819次閱讀
    <b class='flag-5'>Windows</b><b class='flag-5'>下</b>基于<b class='flag-5'>MSVC</b><b class='flag-5'>搭建</b>ffmpeg<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    Windows基于MSVC搭建SDL開發(fā)環(huán)境

    Windows基于MSVC搭建SDL開發(fā)環(huán)境
    的頭像 發(fā)表于 06-08 10:29 ?1501次閱讀
    <b class='flag-5'>Windows</b><b class='flag-5'>下</b>基于<b class='flag-5'>MSVC</b><b class='flag-5'>搭建</b>SDL<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    Windows使用pthread-開發(fā)環(huán)境搭建

    Windows使用pthread-開發(fā)環(huán)境搭建
    的頭像 發(fā)表于 06-08 10:32 ?5519次閱讀
    <b class='flag-5'>Windows</b><b class='flag-5'>下</b>使用pthread-<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b><b class='flag-5'>搭建</b>

    開發(fā)環(huán)境搭建教程

    android Windows系統(tǒng)開發(fā)環(huán)境搭建
    發(fā)表于 03-22 17:42 ?0次下載

    搭建C語言開發(fā)環(huán)境Windows平臺)匯總

    本文給大家匯總了5種在WIN平臺下搭建C語言開發(fā)環(huán)境的方法,包括在Windows平臺配置GNU環(huán)境,使用Sublime Test
    的頭像 發(fā)表于 02-01 10:03 ?3699次閱讀

    php開發(fā)環(huán)境搭建和使用

    本文主要介紹的是php開發(fā)環(huán)境搭建和使用。apache在默認(rèn)情況下不會處理php頁面,Apache處理php頁面的步驟:即:php開發(fā)環(huán)境
    的頭像 發(fā)表于 02-01 15:26 ?3411次閱讀
    php<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>的<b class='flag-5'>搭建</b>和使用

    ESP32教程——Windows開發(fā)環(huán)境搭建.pdf下載

    ESP32教程——Windows開發(fā)環(huán)境搭建.pdf
    發(fā)表于 04-14 10:41 ?47次下載
    ESP32教程——<b class='flag-5'>Windows</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b><b class='flag-5'>搭建</b>.pdf下載

    如何在Windows系統(tǒng)安裝搭建PHP環(huán)境

    這兩天剛裝好Windows 7,碰巧前段時間有朋友問我Windows 如何安裝搭建PHP 環(huán)境,所以打算勤勞
    發(fā)表于 08-09 16:56 ?13次下載

    ESP32教程之如何在Windows系統(tǒng)上搭建開發(fā)環(huán)境

    本文檔的主要內(nèi)容詳細(xì)介紹的是ESP32教程之如何在Windows系統(tǒng)上搭建開發(fā)環(huán)境
    發(fā)表于 12-13 15:34 ?40次下載
    ESP32教程之如何在<b class='flag-5'>Windows</b>系統(tǒng)上<b class='flag-5'>搭建</b><b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    MM32F013x——Windows環(huán)境基于Eclipse開發(fā)、調(diào)試MM32

    前面一章節(jié)介紹了在Windows搭建Eclipse開發(fā)環(huán)境,本章節(jié)將介紹在Windows
    發(fā)表于 01-25 18:53 ?2次下載
    MM32F013x——<b class='flag-5'>Windows</b><b class='flag-5'>環(huán)境</b><b class='flag-5'>下</b>基于Eclipse<b class='flag-5'>開發(fā)</b>、調(diào)試MM32

    MM32F013x——Windows搭建Eclipse開發(fā)環(huán)境

    前段時間有客戶問到如何在Windows環(huán)境基于Eclipse開發(fā)、調(diào)試MM32 MCU,經(jīng)過嘗試,現(xiàn)將環(huán)境
    發(fā)表于 01-25 18:58 ?2次下載
    MM32F013x——<b class='flag-5'>Windows</b><b class='flag-5'>下</b><b class='flag-5'>搭建</b>Eclipse<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    MM32F013x——Windows搭建Eclipse開發(fā)環(huán)境

    如何在Windows環(huán)境基于Eclipse開發(fā)、調(diào)試MM32 MCU,經(jīng)過嘗試,現(xiàn)將環(huán)境搭建
    發(fā)表于 02-08 16:27 ?1次下載
    MM32F013x——<b class='flag-5'>Windows</b><b class='flag-5'>下</b><b class='flag-5'>搭建</b>Eclipse<b class='flag-5'>開發(fā)</b><b class='flag-5'>環(huán)境</b>

    Windows搭建ARM11裸機(jī)開發(fā)環(huán)境:Eclipse創(chuàng)建工程

    上一篇文章介紹了在Windows搭建ARM11的裸機(jī)開發(fā)環(huán)境,需要的朋友可以過去看看。
    的頭像 發(fā)表于 04-08 09:36 ?1144次閱讀