資源描述:
《手把手教你Windows下編譯OpenVPN2.1.1》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、網(wǎng)絡(luò)上目前的有關(guān)Windows平臺下,OpenVPN的編譯方式無非兩種,一種就是使用VS2010來編譯,第二種就是使用MinGW來編譯。我想作為一名Windows程序員,對VS編譯器的鐘愛是可以理解的,本人最開始也是使用VS對OpenVPN2.1.1的源代碼進行了編譯。非常的幸運,雖然有一些編譯錯誤,不過用了不到兩天時間就一一解決了。編譯通過后,心情舒暢,不過隨之而來的一個問題是如何使用呢?如果是下載的OpenVPN的exe安裝包,安裝完成后,會生成一個虛擬網(wǎng)卡,而且會有g(shù)ui的界面,簡單的改寫配置文件后,雙擊OpenVPN的圖標
2、就可以運行了。但是使用VS2010編譯OpenVPN的源碼包之后,在Debug目錄下只生成了一個OpenVPN.exe文件。據(jù)我所知,此文件只能用來對OpenVPN進行一些配置工作,對于其他的功能,比如OpenVPN的虛擬網(wǎng)卡是沒有辦法通過此exe文件生成的。依據(jù)我的觀點,那就是如果在VS中編譯OpenVPN,那么其他周邊的功能,需要你自己去下載第三方的軟件來完成,比如生成一個虛擬VPN網(wǎng)卡。這樣的話就很不方便了,而且網(wǎng)上也沒有相關(guān)的操作說明,怎么安裝,如何配置都需要自己摸索,對于我這等新手而言難度頗大。至于OpenVPN編譯的第
3、二種方法,則是我力薦給大家的一種方法,它使用MinGW進行編譯,每一步操作的詳細說明網(wǎng)上教程都給的非常詳細,資料比較多,而且最后生成的exe是一個OpenVPN的安裝包,和官方提供的安裝包別無二致,所以說,編譯好之后,只要雙擊此安裝包,至于安裝虛擬VPN網(wǎng)卡等依賴第三方的工作,都可以輕松搞定了。不過,對于源代碼編譯而言,一臺機子也許就會有一臺機子不同的問題,單純地依賴網(wǎng)上的教程,很多時候沒有辦法達到我們最終的目的,下面我就講一下,我的編譯過程,其主要的步驟皆來自于互聯(lián)網(wǎng),其中補充了我自己在編譯過程中遇到的問題,并且給出了解決之道,
4、希望給大家以啟發(fā)。--------------------------------------安裝步驟注意:以下提到的安裝路徑皆為示例,如無特殊說明,皆可根據(jù)實際情況作更改。安裝NSIS下載鏈接:http://sourceforge.net/projects/nsis/files/NSIS2/2.46/nsis-2.46-setup.exe/download正常安裝即可。如無必要,請選擇完整安裝。安裝MinGW下載鏈接:http://sourceforge.net/projects/mingw/files/AutomatedMin
5、GWInstaller呃…選擇文件列表里的MinGW-5.1.6.exe下載…選擇完整安裝,安裝到D:MinGW下。安裝MSYS下載鏈接:http://downloads.sourceforge.net/mingw/MSYS-1.0.11.exe選擇安裝到D:msys1.0目錄下。安裝msysDTK下載鏈接:http://downloads.sourceforge.net/mingw/msysDTK-1.0.1.exe和MSYS選擇安裝在相同位置,D:msys1.0目錄下。配置環(huán)境變量我的電腦,右鍵->屬性->高級-
6、>環(huán)境變量,觀察窗口上部“XXX的用戶環(huán)境變量”,看是否有PATH這個環(huán)境變量。如果有,雙擊修改,在最后加上’;c:MinGWbin;d:msys1.0bin‘(單引號內(nèi)內(nèi)容,注意最前面的分號)。如果沒有,新建一個,變量名PATH,變量值’c:MinGWbin;d:msys1.0bin‘(單引號內(nèi)內(nèi)容,注意最前面沒有分號)完成操作后,開始->運行,打開cmd窗口,輸入bash。如果出現(xiàn)“bash-3.1$”字樣,說明環(huán)境變量修改成功。輸入exit退出bash。下載OpenVPN預(yù)編譯文件這里的預(yù)編譯文件不是op
7、envpn本身的預(yù)編譯文件,而是例如openssl,tap驅(qū)動等等openvpn編譯過程中需要的二進制文件下載鏈接:http://openvpn.net/prebuilt/版本不是2.1.1沒有關(guān)系,因為2.1_rc22到2.1.0的代碼變化不多,而2.1.0到2.1.1只是修正了一下內(nèi)置的rpm打包用的spec文件而已…解壓,獲得以下目錄:gen-prebuiltlzo-2.02openssl-0.9.8lpkcs11-helper將以上4個目錄中都復制到C:下下載OpenVPNGUI二進制文件下載鏈接:http://open
8、vpn.se/files/binary/openvpn-gui-1.0.3.exe如果想深度定制自己的OpenVPN安裝程序,可以自行編譯安裝OpenVPNGUI,修改源碼中的rc文件得到自定義效果。具體就不在這里介紹了下載后在C盤下建立openv