<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    隨筆-124  評論-194  文章-0  trackbacks-0

    曾試過用VS2005編譯各種版本openssl都會到最后用perl測試說LOADDLL失敗,不得其解,可是用下面的方法即可安裝成功,考慮是不是人家是用VC6編譯的:

    更新于08年11月7日:

    下面的PPM用不了了,參看這個:http://theoryx5.uwinnipeg.ca/ppms/

    C:\Documents and Settings\Administrator>ppm install http://theoryx5.uwinnipeg.ca/ppms/Net_SSLeay.pm.ppd


    或者


    add this repository to your list (perl 5.8):
    ppm> rep add RKOBES
    http://theoryx5.uwinnipeg.ca/cgi-bin/ppmserver?urn:/PPMServer58
    then search:
    ppm> search SSLeay
    Searching in Active Repositories
     1. Crypt-SSLeay [0.51] OpenSSL glue that provides LWP https support
     2. Crypt-SSLeay [0.51]
     3. Net_SSLeay.pm [1.25] Perl extension for using OpenSSL
    ppm>install Net_SSLeay.pm

    在解壓目錄下,運行perl test.pl可以成功。

    這是在perlorg上問的貼,可以參考:

    http://perlchina.sun126.com/cgi-bin/ccb/topic_view.cgi?forum=4&article_id=0004061125003921&publishtime_id=0004061125003921&page=40


    更新于2008年1月6日:
    最近,又再次試圖自己安裝OPENSSL+SSLeay,用了SSLeay里README.WIN32說的方法:

    3. Windows XP SP2 CAUTION: this is not working yet
       ActivePerl 5.8.8.820
       Visual Studio Express 2005
       Microsoft Platform SDK SVR2003R2
       OpenSSL 0.9.8e source openssl-0.9.8e.tar.gz
       Dynamic linking to SSL DLLs

    - Install all packages in the order listed above (make sure you follow the
       instructions on the download page about adding the appropriate paths to the
       Projects and Solutions section of the Options dialog box, and updating
       corewin_express.vsprops file)
    - Start a build shell with Start->All Programs->Microsoft Windows SDK->CMD Shell
    - cd openssl-0.9.8e
    - perl Configure VC-WIN32 --prefix=c:/OpenSSL
    - ms\do_masm
    - nmake -f ms\ntdll.mak
    - nmake -f ms\ntdll.mak install
       (if you have trouble getting to this stage, consult INSTALL.W32)
    - cd Net-SSLeay-xxxx
    - perl Makefile.PL
    - nmake
    - copy c:\OpenSSL\bin\*.dll blib\arch\auto\Net\SSLeay\
    - nmake test
      CAUTION: nmake test fails at this stage. Any suggestions?? This may be
       relevant: http://www.itwriting.com/blog/?postid=261&replyto=2542
    - nmake install


    應該說基本成功了,這次也最后同樣遇到了LOADDLL失敗,好像是R2604錯誤,這是引用msvcr80.dll出的問題,順著方法里提到的URL看一下這里,介紹了微軟為了解決DLL HELL問題引入了SIDE BY SIDE的DLL存在方式,我把我看了這篇文章的理解說明如下:
    微軟現在使用MANIFEST資源文件注入到DLL中的方法來解決DLL的依賴問題,在這個文件中以XML方式說明了本DLL將會引用到的其它系統DLL的詳盡版本,這個文件由鏈接器自動生成。其機關在此:
    可以到C:\WINDOWS\WinSxS看一下,這里共存了相同名字不同版本的DLL。
    特別是POLICIES目錄中MSVCR80目錄中相關XML有一句:
    <bindingRedirect oldVersion="8.0.41204.256-8.0.50608.0" newVersion="8.0.50727.762"/>
    這就是說凡是有DLL中引用了之前老版本都會被重定位到最新版本。

    VC2005編譯出來的SSLeay.dll引用的是8.0.50608.0的,我們要把鏈接器產生的MANIFEST文件注入到DLL中:

    mt /manifest SSLeay.dll.manifest /outputresource:SSLeay.dll;#2

    這樣至少可以通過NETSSLEAY的自測了。


    但是,凡事都有個但是,真FAINT,當我用IO::Socket::SSL包時,報找不到randomize函數,是不是因為SSLeay太新了的緣故,此事還無解。所以為了用這個包,還是用前述的PPM方式安裝會比較好,那個方法我已經驗證過,裝和用都沒問題。

    posted on 2006-11-26 11:35 我愛佳娃 閱讀(2321) 評論(0)  編輯  收藏 所屬分類: Perl
    主站蜘蛛池模板: 国产亚洲视频在线观看网址| 成人精品一区二区三区不卡免费看 | 亚洲国产成人手机在线电影bd| 日本一区二区三区免费高清 | 99久久精品日本一区二区免费| 亚洲精品日韩一区二区小说| 中文字幕人成人乱码亚洲电影| 50岁老女人的毛片免费观看| 日韩欧美亚洲中文乱码| 国产AV无码专区亚洲Av| 天天拍拍天天爽免费视频| 大地资源中文在线观看免费版| 男人天堂2018亚洲男人天堂 | 国产成人精品久久亚洲高清不卡| 国产日产亚洲系列| 免费在线看v网址| 中文字幕在线免费观看视频| 亚洲愉拍一区二区三区| 无码久久精品国产亚洲Av影片| 狼友av永久网站免费观看| 99视频在线看观免费| 杨幂最新免费特级毛片| 亚洲精品不卡视频| 亚洲精品国精品久久99热一| 午夜视频在线观看免费完整版| 免费A级毛片无码视频| 一区在线免费观看| 国产AV无码专区亚洲AV蜜芽| 亚洲精品美女在线观看播放| 伊人亚洲综合青草青草久热| 手机看片久久国产免费| 国产免费的野战视频| 国产一级在线免费观看| 免费国产黄网站在线观看动图| 亚洲制服在线观看| 久久水蜜桃亚洲av无码精品麻豆| 久久久久亚洲精品男人的天堂| 国产又黄又爽又猛的免费视频播放 | 亚洲天堂在线播放| 亚洲男人的天堂在线va拉文| 午夜免费不卡毛片完整版|