1. 程式人生 > >向qt中新增庫檔案(以ffmpeg靜態庫為例)

向qt中新增庫檔案(以ffmpeg靜態庫為例)

在Qt中工程通過.pro檔案管理,所以庫檔案要在.pro檔案中新增。

1.新增庫檔案 靜態庫
linux:LIBS += your_lib_path/your_lib 動態庫
linux:LIBS += -L your_lib_path -lyour_lib//經過測試了
 
win32:LIBS += your_lib_path/your_lib 例如:
LIBS += -L lib/pcsc/ -lpcsclite LIBS += lib/pcsc/libpcsclite.a

2.新增標頭檔案
INCLUDEPATH += your_include_path 例如:
INCLUDEPATH += . /usr/local/include(點號後面有空格)

3.新增要編譯的原始檔和標頭檔案

SOURCES:所有原始檔列表

HEADERS:所有標頭檔案列表

FORMS:所有.ui檔案列表
 
前期工作:
1.檢查gcc,g++,qmake是否用錯。 2.在Makefile中檢查是否少了標頭檔案 3.檢查是否“”與<>錯用了
4.需要另外加庫的程式最好單獨建一個檔案


一個栗子:

新建一個Qt控制檯應用程式ffmpeg,將ffmpeg的靜態庫放進工程的跟目錄,include檔案下為靜態庫的標頭檔案,lib下為8個靜態庫的.a檔案。

在.pro檔案中新增靜態庫,.pro檔案最後看起來如下:

#-------------------------------------------------
#
# Project created by QtCreator 2016-03-11T15:58:33
#
#-------------------------------------------------

QT       += core

QT       -= gui

TARGET = FFmpeg
CONFIG   += console
CONFIG   -= app_bundle

TEMPLATE = app


SOURCES += main.cpp


INCLUDEPATH +=  ./ffmpeg/include
LIBS += -L./ffmpeg/lib/ -lavcodec -lavdevice -lavfilter -lavformat -lavutil -lpostproc -lswscale -lswresample

在main.cpp中新增如下測試程式碼:

#include <QtCore/QCoreApplication>
#include <QDebug>

#define __STDC_CONSTANT_MACROS
extern "C"
{
    #include "libavcodec/avcodec.h"
}

int main(int argc, char *argv[])
{
    QCoreApplication a(argc, argv);
    
    qDebug()<<"Hello World!\n";
    qDebug()<<avcodec_configuration();


    return a.exec();
}

執行後列印ffmpeg的配置資訊,則代表已經配置完成!:)

相關推薦

qt新增檔案ffmpeg靜態

在Qt中工程通過.pro檔案管理,所以庫檔案要在.pro檔案中新增。 1.新增庫檔案 靜態庫 linux:LIBS += your_lib_path/your_lib 動態庫 linux:LIBS += -L your_lib_path -lyour_lib//經過測試

基於GDAL,讀取.grd檔案海洋地形資料C++版

技術背景   海洋地形資料主要是通過美國全球地形起伏資料(GMT)獲得,資料格式為grd(GSBG)二進位制資料,開啟軟體通過是Surfer軟體,surfer軟體可進行資料的編輯處理,以及進一步的視覺化表達等功能操作;由於Surfer軟體不支援二次開發,沒有提供相應的SDK供開發者進行使用,所以這一切只能通

springboot過濾器的使用logback-日誌記錄

過濾器和攔截器的區別,過濾器和攔截器的用途,面試經常被問到:https://blog.csdn.net/qq_36411874/article/details/53996873,這篇部落格寫的很詳細。 使用攔截器記錄日誌的案例:https://blog.csdn.net/qq_3128918

Qt的網絡通信一對一聊天室

lis sci idg ESS host 文字 btn stdstring nec 一、以一對一(服務器,客戶端)為例   1、服務器:      1、在目錄文件 .pro文件中   QT += core gui network 添加network      

Ubuntu安裝和配置 Java JDK,並解除安裝自帶OpenJDKUbuntu 12.04

1.下載jdk-7u25-linux-i586.tar.gz 2.修改jdk-7u25-linux-i586.tar.gz的可執行許可權,最簡單的方法是賦予許可權,即: chmod 755 jdk

1.1.14 新增自己編寫的巨集程式碼程式碼行編號

1. 首先貼上程式碼到word文件; 2. 點選“開發工具”->“巨集”->在開啟的視窗中點選“建立” 圖1-1-14-1 3. 在開啟的Micsoft Visual Basic for Applications “程式碼”視窗中輸入如下程式碼: 01 Sub HangHao() 0

傳播和反向傳播簡單神經網路

在神經網路模型中包括前向傳播和反向傳播那麼究竟什麼是前向傳播,什麼是反向傳播呢前向傳播:說的通俗一點就是從輸入到得到損失值的過程,當然不僅僅是這麼簡單,中間還經過了一些處理,那麼這些處理包括什麼呢:1:從輸入層開始:假設是一個形狀是(2,3)2:經過權重引數(w(3,取決你的

關於端口被占用的問題61440端口

internet 其他 直接 按鍵 str es2017 查看 window 原因   先來說一下寫這篇blog的原因吧,本人今天下午回到宿舍打開電腦準備上網下載開發Python的環境,結果發現下載速度和以前相比是大大的不如。然後看了一下室友的網絡一切ok,然後我突然只能登

當你輸入一個網址/點擊一個鏈接,發生了什麽?www.baidu.com

var aid 查找 style str 在服務器 開始 傳輸 http響應 >>>點擊網址後,應用層的DNS協議會將網址解析為IP地址; DNS查找過程: 瀏覽器會檢查緩存中有沒有這個域名對應的解析過的IP地址,如果緩存中有,這個解析過程就將結束。 如果

使用Altium Designer10軟件繪制芯片引腳圖IC1114芯片

name 類型 對話 圖1 菜單欄 參數設置 計算 sch 位置 運用Altium Designer軟件繪制IC1114-F48LQ芯片的原理圖庫,詳細步驟如下: 第一步:在“文檔”裏新建一個文件夾,命名為“電子產品創新設計源文件”,用以存放每次實驗的源文件和原理圖庫文件等

Visual Studio高低版本的問題2008和2015

image 記得 標準 方法 log 版本 問題 不同 查看 第一個就是改這個裏面的配置 第二個是改這個裏面的配置 方法:通過觀察這兩個的不同,並且同時看低版本打開高版本的時候的錯誤提示來看應該改哪一些配置文件之後就可以進行對比操作,還有就是如果不小心改錯了,比如說20

Python——爬取人口遷徙數據騰訊遷徙

map car img all spa ima tps .sh compile 說明: 1.遷徙量是騰訊修改後的數值,無法確認真實性。 2.代碼運行期間,騰訊遷徙未設置IP屏蔽和瀏覽器檢測,因此下段代碼僅能保證發布近期有效。 3.代碼功能:爬取指定一天的四十個城市左右的遷徙

統計學習三:2.K近鄰法代碼實現最近鄰法

數據集 learning pytho port 4.3 @property 存儲 uil github 通過上文可知感知機模型的基本原理,以及算法的具體流程。本文實現了感知機模型算法的原始形式,通過對算法的具體實現,我們可以對算法有進一步的了解。具體代碼可以在我的githu

【C語言】位元組對齊問題32位系統

  1. 什麼是對齊?   現代計算機中記憶體空間都是按照位元組(byte)劃分的,從理論上講似乎對任何型別的變數的訪問可以從任何地址開始,但實際情況是在訪問特定變數的時候經常在特定的記憶體地址訪問,這就需要各型別資料按照一定的規則在空間上排列,而不是順序地一個接一個地排放,這就是對齊

Tensorflow之多元線性迴歸問題波士頓房價預測

一、根據波士頓房價資訊進行預測,多元線性迴歸+特徵資料歸一化 #讀取資料 %matplotlib notebook import tensorflow as tf import matplotlib.pyplot as plt import numpy as np

詳解如何用爬蟲採集視訊播放量資料騰訊視訊

現代社會提到大資料大家都知道這是近幾年才形成的對於資料相關的新名詞,在1980年,著名未來學家阿爾文·托夫勒便在 《第三次浪潮》一書中,將大資料熱情地讚頌為“第三次浪潮的 華彩樂章”。在 20 世紀 80 年代我國已經有一些專家學者談到了海量資料的加工和管理,但是由於計算機技術和網路技術的限制大資料

在大資料浪潮下如何高效的獲取跨境電商銷售資料亞馬遜

隨著傳統外貿渠道的疲態,跨境電商現在發展異常火爆,跨境電商未來很有可能成為主流的外貿出口模式,並且成為推動中國外貿經濟的一個重要的突破口。跨境電商主要分跨境進口和跨境出口,主流的跨境電商平臺各有特點。 亞馬遜公司作為美國最大的一家網路電子商務公司,是網路上最早開始經營電子商務的公司之一,已成為全

3. CKeditor+ckfinder ---CKFinder原始碼修改上傳 自定義資料夾名時間年月YYYYMM

1 準備 請自行參考  第2文章  此處就不做過多解釋了 ^_^     2. CKeditor+ckfinder ---CKFinder原始碼修改自定義上傳檔名,連結如下 修改上傳檔名 2  查詢官網資料 連結如下

idea給現有web專案建立子maven web模組專案--搭建流程淘淘商城

maven  web專案主要搭建流程: 1、用任意Java開發工具ide中maven外掛(或其他外掛)建立父子web專案骨架 2、完善web專案的目錄結構(如果以下骨架已自動建好,忽略此步驟)         src/main/java       src/main/

基本資料型別和包裝類的關係int和Integer

public void test(){ int a=10; Integer b=new Integer(10); Integer d= Integer.valueOf(10); Integer e= Integer.valueOf(10); Integer c=10; In