vc6設置靜態編譯
1. 易語言靜態編譯和獨立編譯的區別
1、庫文件和程序文件不同,編譯是把支持庫文件和程序分開來,如果給別人去用,別人卻沒安裝易語言,就要把支持庫文件帶上給那人才能用。但是靜態編譯是把支持庫文件打包到程序里去.這樣,如果對方沒裝易語言也照樣可以正常使用和獨立編譯。
2. VC++6.0編譯出來的程序能在別的電腦上運行問題
不一定,那要看是是不是mfc的程序,如果別的電腦上沒有mfc的庫也會運行失敗的,這也是mfc的硬傷,對庫的依賴太大。如果是單純的控制台程序應該問題不大,也有可能會少一兩個dll,看具體情況而定。還有你沒有必要把整個relese目錄拷貝過去,只要拷貝.exe就足夠了
你的程序這樣寫吧:
#include <iostream>
#include <windows.h>
int main()
{
while (1)
{
std::cout<<"你是混蛋,我爸是李剛\n";
Sleep(2000);
}
return 0;
}
3. vc++ 6 添加 類靜態變數的問題
vc裡面聲明類靜態變數有點特殊,要這樣
class CDemo
{
static bool Started;
}
static bool CDemo::Started;
4. 易語言5.11完整版破解版+黑月1.7.2+VC6鏈接器支持庫最好全我做的東西每次都是支持庫或是靜態編譯問題
VC6要配置文件才能靜態編譯
打開你的VC6鏈接器文件夾 如:VC98linker 裡面有個文件夾Bin 打開過後復制一下地址 如:E:\易語言5.11\VC98linker\Bin 再打開E:\易語言5.11\tools\link.ini 可以直接在文件最後加入 linker="E:\你復制的地址\link.exe" 注意有雙引號 鏈接器就可以用了
5. 如何用vc6編譯ffmpeg,並單步調試
目前官方ffmpeg的最新版本為0.9, 我們就以此為例:
1. 下載最新git版本的源代碼(http://ffmpeg.zeranoe.com/builds/, 本例下載的是2011-12-12版本)
2. 放到MSYS環境里配置,生成config.h文件。mingw gcc是能順利編譯通過整個項目的,並生成最新版的ffmpeg。
3. 建立vc6工程,把相關代碼都加入到工程中。由於在vc生成的obj都在一個目錄下,所以需要修改文件名,讓其不重名。
4. 安裝intel compiler 11編譯器,單獨提取其icl.exe及相關include目錄,替換掉vc6自帶的cl.exe, 在工程設置里加上/Qstd=c99,用於支持C99語法。
5. 安裝intel compiler 10編譯器,單獨提取lib目錄,因為此版本調試庫的結構能完美支持vc6的調試信息。
6. 在vc6的options里設置include/exe/lib查找目錄,指向intel編譯器。
7. 開始修改代碼,添加C99的相關linux頭文件, 用於支持vc6, (unistd.h, stdint.h, inttypes.h, getopt.h)
8. 添加C99和linux的相關實現代碼,ffmpeg需要用到: getopt_long, strtoll, gettimeofday, atoll, usleep等
9. 修改windows的相關兼容代碼,GetWindowLongPtr -> GetWindowLong, GWLP_USERDATA
10. 去除硬體加速libavcodec代碼,和依賴庫代碼。選擇所需要的模塊,修改相關的allcodec.c, alldevices.c, allfilters.c, allformats.c
11. 加上鏈接庫,sdl.lib, winmm.lib, dxguid.lib, wsock32.lib
12. 在os_support.c里,把<winsock2.h>移動到文件最前面。
13. 如果是ffmpeg, 已經能順利編譯了。如果是ffplay,還需要編譯靜態sdl, 並鏈接。
14. 等等,音頻運行不正確?有雪花聲?因為還需要替換所有文件里的<math.h>為<mathimf.h>, 默認的rint等數學函數和gcc不兼容。
15. ok, 大功告成,純C版本完美運行。
16. 由於ffmpeg0.9在c文件里,添加了一些intel compiler不支持的mmx語法,所以編譯mmx/sse加速版本時,一小部分.c文件需要依賴mingw gcc編譯成.o文件,再通過vc6的lib.exe工具轉換成lib,讓vc6鏈接上。當然還要加上yasm編譯的很多匯編obj.
6. 易語言靜態編譯。無法定位鏈接器!請檢查 tools\link.ini 中的配置是否正確來高手教我。
打開tools文件夾里的link.ini配置文本,找到其中一句:ilnker="C:\full\path\link.exe" 把它修改為: ilnker=" 這里是你易語言安裝的路徑 \VC98linker\bin\link.exe" 如我的配置:ilnker=" F:\程序軟體\e\VC98linker\bin\link.exe" , F:\程序軟體\e 是我的易語言安裝路徑。 你是否下載了靜態編譯VC6連接器,你把vc6鏈接器解壓到易語言安裝的目錄里就可以了。
7. 請教VC6.0 Release靜態編譯程序運行是循環,在本地運行怎麼都不出錯
是不是有內存泄露,再檢查一下程序吧
8. 易語言5.0的靜態編譯中的VC6鏈接器咋弄啊
到易語言論壇下載了靜態編譯VC6連接器,你把vc6鏈接器解壓到易語言安裝的目錄里得到VC98linker文件夾。 再打開VC98linker文件夾,裡面有link易語言源碼,你打開運行點擊修改。它會自動幫你配置好的。
靜態編譯VC6連接器下載地址:
http://bbs.eyuyan.com/read.php?tid=202913