VS2008下最新X264(svn 2009.9)編譯不過的解決辦法

總有人說最新的版本 編譯不過,搞的群、 論壇里到處都是這種求助貼。建議斑竹把這個解決辦法放到醒目的位置,以減少噪音。

科普開始

1、編譯問題
由于MS的VS編譯器對C99標準支持不好,不支持函數當中混合定義、聲明變量。
解決辦法:在函數開頭統一定義變量

e.g

編譯不過
void funA() { ?? ?? ?? ?? ?? ?? ?? ?? ?? void funA() {
int i,j; ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? int i,j,x;
i = 0; ?? ?? ?? ========> ?? ?? i = 0;
int x = 0; ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??? x = 0;
} ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ?? ??? }

2、鏈接問題

libx264.lib(encoder.obj) : error LNK2019: 無法解析的外部符號 _x264_lookahead_init,該符號在函數 _x264_encoder_open_75 中被引用
1>libx264.lib(encoder.obj) : error LNK2019: 無法解析的外部符號 _x264_lookahead_is_empty,該符號在函數 _x264_encoder_encode 中被引用
1>libx264.lib(encoder.obj) : error LNK2019: 無法解析的外部符號 _x264_lookahead_get_ frames,該符號在函數 _x264_encoder_encode 中被引用
1>libx264.lib(encoder.obj) : error LNK2019: 無法解析的外部符號 _x264_lookahead_put_frame,該符號在函數 _x264_encoder_encode 中被引用
1>libx264.lib(encoder.obj) : error LNK2019: 無法解析的外部符號 _x264_lookahead_delete,該符號在函數 _x264_encoder_close 中被引用
1>libx264.lib(analyse.obj) : error LNK2019: 無法解析的外部符號 _log2f,該符號在函數 _x264_mb_analyse_load_costs 中被引用

由于最近x264_param中新添了lookahead,而對應Win32工程是沒有及時更新。
把encoder/lookahead.c添加到工程里(和encode.c放在一起)即可。

error LNK2019 unresolved external symbol _log2f
另外,如果最后出現error LNK2019 unresolved external symbol _log2f, osdep.h 里定義一下log2f( 不知道性能如何) :

#ifdef _MSC_VER
#define inline __inline
#define strcasecmp stricmp
#define strncasecmp strnicmp
#define snprintf _snprintf
#define fseek _fseeki64
#define ftell _ftelli64
#define isfinite _finite
#define strtok_r strtok_s
#define _CRT_SECURE_NO_DEPRECATE
#define X264_VERSION "" // no configure script for msvc
#define log2f(x) (logf(x)*1.4426950408889634f)
#endif
或 :
#define log2f(x) ??? ((float)log((double)(x)))/(log((double)2))

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/448510.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/448510.shtml
英文地址,請注明出處:http://en.pswp.cn/news/448510.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

node、npm、vue安裝 -- VUE 項目 demo 實例

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 1. 安裝node: sudo yum install epel-release sudo yum install nodejs node --version // 安裝好后查看版本2. 安裝 npm …

用C語言實現簡單的停車場管理

這個程序是利用棧和循環隊列實現的,自己得先處理好邏輯關系就好了。由于題目沒有要求,這個程序就沒加重復判斷,比如一輛車已經停在車位上或者便道上,再來一輛就判斷不了了。關于棧,就是先進后出的思想,隊列…

推薦一個配置linux服務的網站

該網站的各種linux服務的配置都是基于CentOS系統的 基本上各種linux服務都有了 http://www.server-world.info/en/轉載于:https://www.cnblogs.com/Skyar/p/3582389.html

mariadb數據庫增刪改查

1.常用數據類型 1)整數:int, bit 2)小數:decimal    #decimal(5,2)表示共有五位數,保留兩位小數 3)字符串:varchar, char   4)日期時間:date, time, datetime 5)枚舉類型(enu…

為什么你工作努力卻沒有起色?

成為職場達人,未必要經常挑燈夜戰。相反,注意到下面幾條,會讓你少走彎路。 1)成長的機會永遠比眼前的待遇重要——做重要的事比多拿錢重要。 我知道在水木bbs上的worklife版本,每天都在上演的就是比較自己的第一個o…

《 Spring 實戰 》(第4版) 讀書筆記 (未完結,更新中...)

前些天發現了一個巨牛的人工智能學習網站,通俗易懂,風趣幽默,忍不住分享一下給大家。點擊跳轉到教程。 Pxx 表示在書的第 xx 頁。 Spring 框架的核心是 Spring 容器。 1. (P7.) 構造器注入是依賴注入的方式之一。 緊耦合:在 …

數據結構排序法之希爾排序法(Shell Sort)

希爾排序,也叫遞減增量排序,是插入排序的一種更高效的改進版本。希爾排序是不穩定的排序算法。 希爾排序是基于插入排序的以下兩點性質而提出改進方法的: 1、插入排序在對幾乎已經排好序的數據操作時,效率高,即可以達…

Windows To Ghost系統封裝之必備軟件集 - 好壓

好壓壓縮軟件(HaoZip)是強大的壓縮文件管理器,是完全免費的新一代壓縮軟件,相比其它壓縮軟件系統資源占用更少,有更好的兼容性,壓縮率比較高。 它提供了對ZIP、7Z和TAR文件的完整支持,能解壓RAR…

js 彈窗并定時關閉

1. $(input).click(function() {prompt(點擊成功, 2000) })function prompt(newName, time, fn) {var $div $(<div></div>);$div.css({position: fixed,top: 0,left: 0,width: 100%,height: 100%,z-index: 200,background-color: rgba(0,0,0,0.4),// background-c…

數據結構排序法之插入法

插入排序是一種簡單直觀的排序算法。它的工作原理非常類似于我們抓撲克牌。 對于未排序數據(右手抓到的牌)&#xff0c;在已排序序列(左手已經排好序的手牌)中從后向前掃描&#xff0c;找到相應位置并插入。 插入排序在實現上&#xff0c;通常采用in-place排序&#xff08;即…

XSLT學習筆記

1. 樣式聲明&#xff1a;<xsl:stylesheet>或<xsl:transform> 2. XSLT常用元素&#xff1a; 2.1 <xsl:template>&#xff1a;創建模板 Match屬性的作用是使模板和XML元素相關聯 e.g.:<xsl:template match"\">......</xsl:template&g…

職場:人生從沒有最佳時機!一個離職客服人員的領悟

每個人都有感到失落迷惘的時候。 人生用專制又霸道的方式運行著&#xff0c;每當我們心想一切塵埃落定、生活穩固的時候&#xff0c;生活總愛給我們驚喜&#xff0c;粉碎我們短暫的安逸&#xff0c;讓我們不得不重新思考。 「我走對路了嗎?」 「我能夠賺更多錢、爬到更高的地位…

VS Code 的常用快捷鍵

VS Code 的常用快捷鍵和插件 一、vs code 的常用快捷鍵 前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 1、注釋&#xff1a; a) 單行注釋&#xff1a;[ctrlk,ctrlc] 或 ctrl/ b) 取消…

vue-axios interceptors

import axios from axios import cookie from js-cookie const options {baseURL: window.location.protocol process.env.BASE_API,headers: {},timeout: 20000 } const fetch axios.create(options)// request攔截器 fetch.interceptors.request.use(config > {if (coo…

數據結構排序法之雞尾酒排序法he快速排序法

雞尾酒排序&#xff0c;也叫定向冒泡排序&#xff0c;是冒泡排序的一種改進。此算法與冒泡排序的不同處在于從低到高然后從高到低&#xff0c;而冒泡排序則僅從低到高去比較序列里的每個元素。他可以得到比冒泡排序稍微好一點的效能。 // 兩兩互換 void swap (int* a, int i, …

VSCode 多開、環境對比

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 多開&#xff1a; 第一種&#xff1a;win10的開始菜單&#xff0c;在vscode圖標右鍵選擇“新開窗口”&#xff0c;這樣就多了一個vscode…

前言_工作兩年自我感觸

17年大學畢業&#xff0c;到今天整整工作兩年&#xff0c;從前端到數據分析&#xff0c;從上家公司&#xff08;簡稱A&#xff09;到現公司&#xff0c;想趁著今天是參加工作兩年的紀念日&#xff0c;回憶過往&#xff0c;結合現狀有感而發。 剛畢業的時候&#xff0c;啥都學&a…

數據結構排序法之堆排序he歸并排序

堆排序&#xff08;Heapsort&#xff09;是指利用堆這種數據結構所設計的一種排序算法。堆是一個近似完全二叉樹的結構&#xff0c;并同時滿足堆性質&#xff1a;即子結點的鍵值或索引總是小于&#xff08;或者大于&#xff09;它的父節點。 堆排序的時間&#xff0c;主要由建…

超詳細設置 Idea 類注釋模板和方法注釋模板

前些天發現了一個巨牛的人工智能學習網站&#xff0c;通俗易懂&#xff0c;風趣幽默&#xff0c;忍不住分享一下給大家。點擊跳轉到教程。 網上找了一下&#xff0c;沒有很詳細且正確介紹Idea配置注釋模板的&#xff0c;于是結合多篇文章自己琢磨整理出如下。 設置類注釋模板…

手動創建兩個文本文件text1.txt和text2.txt,按要求創建text3.txt

實現在text1.txt和text2.txt文件中除去首行和末尾對應的數據&#xff0c;要求三個文本內容如下&#xff1a; text1 text2 text3begin begin begin10 11 12 15 16 17 …