加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 大数据 > 正文

perl源码 vs编译 用于源码调试

发布时间:2020-12-15 23:57:51 所属栏目:大数据 来源:网络整理
导读:perl.exe的生成比较简单,copy runperl.c perlmain.c? 即拷贝为perlmain.c 再加perlexe.rc perl518.lib生成。 使用vs工程编译,这样就可以vs调试了。 自己以可以整理一份perl518.dll的生成命令。 make文件如下: @echo offcall "D:Program Files (x86)Micr

perl.exe的生成比较简单,copy runperl.c perlmain.c? 即拷贝为perlmain.c 再加perlexe.rc perl518.lib生成。

使用vs工程编译,这样就可以vs调试了。

自己以可以整理一份perl518.dll的生成命令。

make文件如下:

@echo off
call "D:Program Files (x86)Microsoft Visual Studio 10.0VCvcvarsall.bat" x86
set include=include;dllsrcsrc;%include%
set lib=lib;%lib%
set CFLAGS_O= -nologo -GF -W3 -GS- -DWIN32 -D_CONSOLE -DNO_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERLDLL -DPERL_CORE   -O1 -MD -Zi -DNDEBUG  -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO  
set CXX_FLAG= -TP -EHsc
set LIBFILES= oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib 


del *.obj
cl -c %CFLAGS_O% dllsrc*.c
cl -c %CFLAGS_O% dllsrcwin32*.c

cl -c %CFLAGS_O% dllsrcext*.c
cl -c  %CFLAGS_O% %CXX_FLAG% perllib.c

cl -c -nologo -GF -W3 -GS- -O1 -MD -Zi -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERLDLL -O1 -MD -Zi -DNDEBUG -DVERSION="1.18" -DXS_VERSION="1.18" -DLIBC="msvcrt.lib" dllsrcextDynaLoader.c
cl -c -nologo -GF -W3 -GS- -O1 -MD -Zi -DNDEBUG -DWIN32 -D_CONSOLE -DNO_STRICT -D_CRT_SECURE_NO_DEPRECATE -D_CRT_NONSTDC_NO_DEPRECATE -DPERL_TEXTMODE_SCRIPTS -DPERL_IMPLICIT_CONTEXT -DPERL_IMPLICIT_SYS -DUSE_PERLIO -DPERLDLL -UUSEIMPORTLIB -O1 -MD -Zi -DNDEBUG -DVERSION="0.04" -DXS_VERSION="0.04" dllsrcextWin32CORE.c

link -dll -def:perldll.def -base:0x28000000 -out:perl518.dll Win32CORE.obj -nologo -nodefaultlib -debug -opt:ref,icf -machine:x86 "/manifestdependency:type='Win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'" -DELAYLOAD:ws2_32.dll delayimp.lib oldnames.lib kernel32.lib user32.lib gdi32.lib winspool.lib  comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib  netapi32.lib uuid.lib ws2_32.lib mpr.lib winmm.lib  version.lib odbc32.lib odbccp32.lib comctl32.lib msvcrt.lib av.obj		 deb.obj	 doio.obj	 doop.obj	 dump.obj	 globals.obj	 gv.obj		 mro.obj	 hv.obj		 locale.obj	 keywords.obj	 mathoms.obj     mg.obj		 numeric.obj	 op.obj		 pad.obj	 perl.obj	 perlapi.obj	 perly.obj	 pp.obj		 pp_ctl.obj	 pp_hot.obj	 pp_pack.obj	 pp_sort.obj	 pp_sys.obj	 reentr.obj	 regcomp.obj	 regexec.obj	 run.obj	 scope.obj	 sv.obj		 taint.obj	 toke.obj	 universal.obj	 utf8.obj	 util.obj  perllib.obj perlio.obj win32.obj	 win32sck.obj	 win32thread.obj	 fcrypt.obj win32io.obj DynaLoader.obj 
if exist perl518.dll.manifest mt -nologo -manifest perl518.dll.manifest -outputresource:perl518.dll;2 &&  if exist perl518.dll.manifest del perl518.dll.manifest

pause


?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读