当前位置:首页 » 操作系统 » bird源码

bird源码

发布时间: 2023-07-08 00:15:09

Ⅰ Ubuntu bochs源码安装时出现: make: *** 没有指明目标并且找不到 makefile。 停止。

用ubuntu中的ubuntu软件安装中心安装的bochs不带调试功能,所以我们要用源码安装bochs.

从http://sourceforge.net/projects/bochs/files/ 下载bochs-2.4.5.tar.gz

然后

tar vxzf bochs-2.4.5.tar.gz
cd bochs-2.4.5
./configure --enable-debugger --enable-disasm
make
sudo make install

结果出错,解决的办法是:

问题1:
checking for C compiler default output file name… configure: error: C compiler cannot create executables
解决办法:
[thornbird@thornbird bochs-2.4]$ sudo apt-get install libc6-dev
问题2:
...
checking how to run the C++ preprocessor... /lib/cpp
configure: error: C++ preprocessor "/lib/cpp" fails sanity check
See `config.log' for more details.
解决方法:
[thornbird@thornbird bochs-2.4]$ sudo apt-get install build-essential

问题3:
[thornbird@thornbird bochs-2.4]$ make
make: *** 没有指明目标并且找不到 makefile.停止。
解决方法:
[thornbird@thornbird bochs-2.4]$ sudo apt-get install build-essential

问题4:
...
checking for wxWidgets library version...
checking for default gui on this platform... x11
ERROR: X windows gui was selected, but X windows libraries were not found.

解决方法: 配置的时候加上"--with-nogui "
或者改成:[thornbird@thornbird bochs-2.4]$sudo apt-get install xorg-dev (建议)

问题5:

Package gtk+-2.0 was not found in the pkg-config search path.Perhaps you should add the directory containing `gtk+-2.0.pc'to the PKG_CONFIG_PATH environment variableNo package 'gtk+-2.0' foundERROR: pkg-config was not found, or unable to access the gtk+-2.0 package.Install pkg-config and the gtk+ development package,or disable the gui debugger, or the wxWidgets display library (whichever is being used).

解决方法:

[thornbird@thornbird bochs-2.4]$sudo apt-get install libgtk2.0-dev

问题6:

install: 无法获取"./bochsdbg" 的文件状态(stat): 没有该文件或目录

解决办法:需要在make后,将bochs拷贝一份,命名为bochsdbg

[thornbird@thornbird bochs-2.4]$ cp bochs bochsdbg

Ⅱ dede网页上加上手机跳转代码,手机不能访问(打不开网页)

那就需要看一下源代码,检查手机跳转代码是否正确了

下面给你提供一下织梦自带跳转代码,参考一下

首页

<scripttype="text/javascript">if(window.location.toString().indexOf('pref=padindex')!=-1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent)||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/index.php";}elseif(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}</script>

列表页

<scripttype="text/javascript">if(window.location.toString().indexOf('pref=padindex')!=-1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent)||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/list.php?tid={dede:field.id/}";}elseif(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}</script>

内容页

<scripttype="text/javascript">if(window.location.toString().indexOf('pref=padindex')!=-1){}else{if(/AppleWebKit.*Mobile/i.test(navigator.userAgent)||(/MIDP|SymbianOS|NOKIA|SAMSUNG|LG|NEC|TCL|Alcatel|BIRD|DBTEL|Dopod|PHILIPS|HAIER|LENOVO|MOT-|Nokia|SonyEricsson|SIE-|Amoi|ZTE/.test(navigator.userAgent))){if(window.location.href.indexOf("?mobile")<0){try{if(/Android|WindowsPhone|webOS|iPhone|iPod|BlackBerry/i.test(navigator.userAgent)){window.location.href="{dede:global.cfg_mobileurl/}/view.php?aid={dede:field.id/}";}elseif(/iPad/i.test(navigator.userAgent)){}else{}}catch(e){}}}}</script>

Ⅲ 求汇编程序的mp3源码(要带注释)

mp3.asm

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 是否包括调试代码
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
DEBUG = 0
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Programmed by 罗云彬, [email protected]
; Website: http://asm.yeah.net
; LuoYunBin's Win32 ASM page (罗云彬的编程乐园)
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 版本信息
; Mp3 播放测试程序 Ver 1.0 - 2000/06/08
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

.386
.model flat, stdcall
option casemap :none ; case sensitive

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Include 数据
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

include G:\masm32\include\windows.inc
include G:\masm32\include\user32.inc
include G:\masm32\include\kernel32.inc
include G:\masm32\include\comctl32.inc
include G:\masm32\include\comdlg32.inc
include G:\masm32\include\winmm.inc

includelib G:\masm32\lib\user32.lib
includelib G:\masm32\lib\kernel32.lib
includelib G:\masm32\lib\comctl32.lib
includelib G:\masm32\lib\comdlg32.lib
includelib G:\masm32\lib\winmm.lib

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; Equ 数据
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

DLG_MAIN equ 1000
ID_BROWSE equ 1001
ID_FILE equ 1002

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 数据段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

.data?

dwFlag dd ?
hWinMain dd ?
hInstance dd ?
hDevice dd ?
szBuffer db 256 p (?)
stOpenFileName OPENFILENAME <?>

.data

szCaption db "Error...",0
szError db "Error to play MP3 file!",0
szPlay db "&Play",0
szStop db "&Stop",0
szDevice db "MPEGVideo",0
szTitleSave db "Open MP3 file...",0
szExt db '*.mp3',0
szFilter db 'MP3 Files(*.mp3)',0,'*.mp3',0,'All Files(*.*)',0,'*.*',0,0

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 子程序声明
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
_ProcDlgMain PROTO :DWORD,:DWORD,:DWORD,:DWORD

;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>
; 代码段
;>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>

.code

if DEBUG
include Debug.asm
endif

include Win.asm

;********************************************************************
_GetFileName proc

mov stOpenFileName.Flags,OFN_PATHMUSTEXIST or OFN_FILEMUSTEXIST
mov stOpenFileName.lStructSize,SIZEOF stOpenFileName
mov eax,hWinMain
mov stOpenFileName.hWndOwner,eax
mov stOpenFileName.lpstrFilter,offset szFilter ;扩展名
mov stOpenFileName.lpstrFile,offset szBuffer ;文件名缓冲
mov stOpenFileName.nMaxFile,255 ;文件名缓冲长度
mov stOpenFileName.lpstrInitialDir,0
mov stOpenFileName.lpstrTitle,offset szTitleSave
mov stOpenFileName.lpstrDefExt,offset szExt
invoke GetOpenFileName,offset stOpenFileName
.if eax == FALSE
ret
.endif
invoke SetDlgItemText,hWinMain,ID_FILE,addr szBuffer
call _StopPlayMP3

ret

_GetFileName endp
;********************************************************************
_PlayMP3 proc
local @stMCIOpen:MCI_OPEN_PARMS
local @stMCIPlay:MCI_PLAY_PARMS

mov @stMCIOpen.lpstrDeviceType,offset szDevice
mov @stMCIOpen.lpstrElementName,offset szBuffer
invoke mciSendCommand,0,MCI_OPEN,MCI_OPEN_TYPE or MCI_OPEN_ELEMENT,addr @stMCIOpen
mov eax,@stMCIOpen.wDeviceID
mov hDevice,eax
mov eax,hWinMain
mov @stMCIPlay.dwCallback,eax
invoke mciSendCommand,hDevice,MCI_PLAY,MCI_NOTIFY,addr @stMCIPlay
.if eax == 0
invoke SetDlgItemText,hWinMain,IDOK,offset szStop
mov dwFlag,1
.else
invoke MessageBox,hWinMain,addr szError,addr szCaption,MB_OK
.endif
ret

_PlayMP3 endp
;********************************************************************
_StopPlayMP3 proc
local @stMCIStop:MCI_GENERIC_PARMS

mov eax,hWinMain
mov @stMCIStop.dwCallback,eax
invoke mciSendCommand,hDevice,MCI_STOP,MCI_NOTIFY,addr @stMCIStop
invoke mciSendCommand,hDevice,MCI_CLOSE,MCI_NOTIFY,addr @stMCIStop
invoke SetDlgItemText,hWinMain,IDOK,offset szPlay
mov dwFlag,0
ret

_StopPlayMP3 endp
;********************************************************************
_ProcDlgMain proc uses ebx edi esi, \
hWnd:DWORD,wMsg:DWORD,wParam:DWORD,lParam:DWORD

mov eax,wMsg
.if eax == WM_CLOSE
invoke EndDialog,hWnd,NULL
.elseif eax == WM_INITDIALOG
mov eax,hWnd
mov hWinMain,eax
invoke _CenterWindow,eax
invoke SendDlgItemMessage,hWinMain,ID_FILE,EM_SETREADONLY,TRUE,NULL
.elseif eax == WM_COMMAND
mov eax,wParam
.if eax == ID_BROWSE
call _GetFileName
.elseif eax == IDOK
.if dwFlag == 0
call _PlayMP3
.else
call _StopPlayMP3
.endif
.endif
.else
;********************************************************************
; 注意:对话框的消息处理后,要返回 TRUE,对没有处理的消息
; 要返回 FALSE
;********************************************************************
mov eax,FALSE
ret
.endif
mov eax,TRUE
ret

_ProcDlgMain endp
;********************************************************************
start:
invoke InitCommonControls
invoke GetMoleHandle,NULL
mov hInstance,eax
invoke DialogBoxParam,hInstance,DLG_MAIN,NULL,offset _ProcDlgMain,0
invoke ExitProcess,NULL

end start

win.asm

.386
.model flat,stdcall
option casemap:none
include \masm32\include\windows.inc
include \masm32\include\user32.inc
include \masm32\include\kernel32.inc
includelib \masm32\lib\user32.lib
includelib \masm32\lib\kernel32.lib

WinMain proto :DWORD,:DWORD,:DWORD,:DWORD

.data
ClassName db "SimpleWinClass",0
AppName db "Our First Window",0

.data?
hInstance HINSTANCE ?
CommandLine LPSTR ?
.code
start:
invoke GetMoleHandle, NULL
mov hInstance,eax
invoke GetCommandLine
mov CommandLine,eax
invoke WinMain, hInstance,NULL,CommandLine, SW_SHOWDEFAULT
invoke ExitProcess,eax

WinMain proc hInst:HINSTANCE,hPrevInst:HINSTANCE,CmdLine:LPSTR,CmdShow:DWORD
LOCAL wc:WNDCLASSEX
LOCAL msg:MSG
LOCAL hwnd:HWND
mov wc.cbSize,SIZEOF WNDCLASSEX
mov wc.style, CS_HREDRAW or CS_VREDRAW
mov wc.lpfnWndProc, OFFSET WndProc
mov wc.cbClsExtra,NULL
mov wc.cbWndExtra,NULL
push hInstance
pop wc.hInstance
mov wc.hbrBackground,COLOR_WINDOW+1
mov wc.lpszMenuName,NULL
mov wc.lpszClassName,OFFSET ClassName
invoke LoadIcon,NULL,IDI_APPLICATION
mov wc.hIcon,eax
mov wc.hIconSm,eax
invoke LoadCursor,NULL,IDC_ARROW
mov wc.hCursor,eax
invoke RegisterClassEx, addr wc
INVOKE CreateWindowEx,NULL,ADDR ClassName,ADDR AppName,\
WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,\
CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,NULL,\
hInst,NULL
mov hwnd,eax
invoke ShowWindow, hwnd,SW_SHOWNORMAL
invoke UpdateWindow, hwnd
.WHILE TRUE
invoke GetMessage, ADDR msg,NULL,0,0
.BREAK .IF (!eax)
invoke TranslateMessage, ADDR msg
invoke DispatchMessage, ADDR msg
.ENDW
mov eax,msg.wParam
ret
WinMain endp

WndProc proc hWnd:HWND, uMsg:UINT, wParam:WPARAM, lParam:LPARAM
.IF uMsg==WM_DESTROY
invoke PostQuitMessage,NULL
.ELSE
invoke DefWindowProc,hWnd,uMsg,wParam,lParam
ret
.ENDIF
xor eax,eax
ret
WndProc endp
end start

热点内容
邮箱怎么加密码保护 发布:2025-03-18 04:37:30 浏览:572
云服务器老是半夜崩溃白天恢复 发布:2025-03-18 04:37:29 浏览:923
如何看自己手机配置是多少 发布:2025-03-18 04:32:26 浏览:856
js文件拒绝访问 发布:2025-03-18 04:26:36 浏览:704
安卓系统怎么恢复聊天记录 发布:2025-03-18 04:24:57 浏览:596
怎么把安卓手机app转到苹果手机 发布:2025-03-18 04:20:30 浏览:967
分算法适用于 发布:2025-03-18 04:17:08 浏览:627
mysql数据库连接串 发布:2025-03-18 04:15:51 浏览:14
社会脚本法定义 发布:2025-03-18 03:59:00 浏览:326
安卓扩展存储空间 发布:2025-03-18 03:57:34 浏览:10