open_ssl build

環境:winxp x32

0. If you yet to have MinGW, read http://blog.simpleit.us/2010/05/30/installing-qt-qtcreator-and-mingw-for-windows/ to learn how to install it.

1. Download Perl from ActiveState site: http://www.activestate.com/activeperl/downloads . Choose version that match your Windows. MSI installer is recommended, unless you are so fluent in Windows and don’t mind spending time with little tweaks like adding PATH, etc

2. Run the MSI installer and point path to C:developtoolsperl . You may choose different path, but that’s what on my machine.

3. Having installed with Perl, now let’s fetch OpenSSL: http://www.openssl.org/source/openssl-0.9.8n.tar.gz (the latest version of OpenSSL 0.9.8 at the time of writing). I wouldn’t recommend chasing after the version 1.0 for now.

4. Extract openssl to C:developtools and you will obtain directory C:developtoolsopenssl-0.9.8n . Get inside it.

5. Before you start building anything, take note that the macro OPENSSL_IMPLEMENT_GLOBAL causes fatal errors. Find it inside the files openssl-0.9.8ne_os2.h , openssl-0.9.8nincludeopenssle_os2.h and openssl-0.9.8noutincopenssle_os2.h . Find the macro’s definition and change

static type _hide_##name

to

/* static type _hide_##name */ type _hide_##name

6. Now let’s build shared & static versions of OpenSSL with a single command (you are now inside C:developtoolsopenssl-0.9.8n):

msmingw32.bat shared

Navigate to YouTube and have some snack. It may take 15-20 mins to finish building.

7. When building is finished, you can copy outincopenssl to your mingwinclude directory. You also can copy generated *.a and *.dll files to mingwlib directory and the *.dll to mingwbin directory. If you hate copying, remember to make use of -I and -L flags to appropriate folders when building with MinGW.

Building & installation of OpenSSL is done.

NetBeans shortcut

Ctrl + F:尋找
F3:尋找下一個字串
Ctrl + G:跳到第 N 行
Ctrl + H:取代
Tab:增加縮排
Shift + Tab:減少縮排
Ctrl + E:刪除一行
Ctrl + Shift + I:修正 import 項目
Alt + Enter:修正程式碼錯誤
Alt + Shift + F:格式化程式碼
Alt + Insert:產生程式碼 (constructor、method….)
Ctrl + Up / Down:向上、下捲動
Ctrl + R:重新命名
Ctrl + :自動完成、程式碼建議
Ctrl + Page Down:下一個分頁
Ctrl + Page UP:上一個分頁
Alt + Shift + Up:整行向前移動
Alt + Shift + Down:整行向後移動
Alt + Shift + Enter:全螢幕
Ctrl + 數字鍵盤「+」號:展開目前程式碼片段
Ctrl + 數字鍵盤「-」號:縮合目前程式碼片段
Ctrl + Shift + 數字鍵盤「+」號:展開所有程式區段
Ctrl + Shift + 數字鍵盤「-」號:縮合所有程式區段

只為了linux…

筆電換成fedora 9了…
中文在fedora顯示的比較清楚…
不過桌機依然suse linux…
suse linux 安裝軟體是方便許多…
不過筆電裝了nvidia driver後變怪怪的…
乾脆砍掉重練fedora,
反正好玩就好…
解決suse linux 和 fedora聲音問題,
都是進入kde設定kmix,
設定extrnal…………..為disable,
較新版的kmix則是打開extrnal…………………..選項
然後選擇靜音,
就解決了…

SUSE


SUSE Linux桌面與eclipse linux版,

konqueror的我的電腦首頁,
KMess仿windows live messenger介面,
功能齊全,
有live messenger加messenger plus!的味道…
還有可顯示被自己刪除或封鎖的人奇怪功能…= =
既然都刪了也不用顯示,
這功能是可關的…

很漂亮的聊天介面…
弄了很久的SUSE Linux 10.3 x64 版…
解決了firefox的怪問題,
底線比字體大…
最近應該都會玩一下linux吧…
XP過熟悉的介面,
VISTA很爛的介面…又很不貼心也不友善,
雖然Linux也沒多有善,
不過光那很漂亮的介面就讓我很喜歡了…

web20專題書面報告

Web2.0 Project 報告

專題簡介:

透過google mashup 混搭,整合各個美術館與博物館的數據源,整合後透過googe Map展示在網頁上。

小工具開發透過,google mashup開發完後發佈成google 小工具。

最後將行事曆透過google calendar api擷取至本機端,利用xml-rpc發送至樂多日誌,再透過中華電信提供的blog push服務傳送MMS簡訊至手機。

專題內容:

1. 主要網頁展示:

clip_image002[5]

透過按下錨點來顯示泡泡提示視窗。

clip_image004[4]

使用者可以按下標題來連結至網頁,也可以按下傳送至google日曆按鈕發送至google calendar。

2. 更多個館新聞:

clip_image006[4]

按下更多個館新聞按鈕可以顯示各館活動訊息的詳細資料,當然source必須提供了summary。也可以透過點選標題連結至網頁。

3. 加入RSS與問題回報:

clip_image008[4]

透過javaScript語法內嵌skype狀態與windows live messenger的直接溝通。

Windows live messenger提供的語法,使用者可以不必擁有即時通訊軟體直接發送訊息給使用者。並且使用者與開發者之間不會知道對方身分,確保了身分的隱密性。

4. 主要source code:

clip_image010[4]

透過陳述句來識別該顯示哪個博物館或美術館訊息。

clip_image012[4]

將各館與經緯度訊息對應,展現在google map之上。

Google 小工具之開發:

clip_image014[4]

<gm:list id="museumFeed" data="http://www.google.com/reader/public/atom/user/09601475579999589501/label/gogle%20mashup" pagesize="3" template="museumTemplate"/>

數據源透過google reader來進行管理,在未來加入或修改source源時,不用修改程式的source code。

clip_image016[4]

整合完數據源頭後,只要將該項設定為public 即可複製整合後所產生的atom feed url來變成程式的source來源。

行事曆訊息發送至手機:

clip_image018[4]

如同圖示所顯示的流程,將google calendar的行事曆透過 google calendar java api擷取至本機端後,透過xml-rpc發送至樂多日誌,再透過中華電信提供的blog push服務發送MMS簡訊至手機。

1. google calendar api:

clip_image020[4]

clip_image022[4]

透過查詢來獲得隔天的行程。

clip_image024[4]

傳回行事曆資料準備發送。

2. 樂多日誌xml-rpc:

clip_image026[4]

透過XML-rpc發佈行事曆訊息至樂多日誌,http://xmlrpc.blog.roodo.com/cgi-bin/mt/mt-xmlrpc.cgi這為樂多日誌的XML-RPC端口。

3. Blog push 服務:

clip_image028[4]

clip_image030[4]

訂閱了該blog後,blog push會定期偵測是否有新文章發表,並且擷取後發送至手機端。預設值約5~10分鐘,偵測一次,並且可以設定夜間休眠格天在發送。

4. 專題未將其開發而只有展示測試原因:

因為google calendar原本就有提供sms訊息服務,只是因為在台灣地區尚未開放,未來提供後會使得程序更為簡便,加上此總方式對使用者有使用上的困難,必須申請了樂多日誌與blogpush服務才行,加上背後認證機制尚未找到較好的方式,不可能由開發者吃下傳送MMS簡訊之費用。

結語:

此次展示的是將各項服務整合後所呈現的套裝服務,不過缺乏了後台管理機制,還有MMS簡訊費用的問題無法提供較好的解決方案。這些必須與各個提供服務者進行協商才可能達到。此次只是展現了應用整合後的可能性,並未涉及實用上的問題。

未來展望:

在此次專題完成後發現一個新的方式,電子郵件透過sms簡訊傳送服務,透過此項服務可以解決認證問題,讓整套服務可以是免費提供的,使用者只要擁有提供該服務網站的認證,可以接收固定由特定電子郵件的方式接收行事曆,開發者要做的只是將行事曆訊息以E-mail方式發送至該服務提供者即可。

參考資料:

1. google code

2. google calendar 主頁自訂google calendar button 教學

3. IBM有關XML-RPC介紹與教學文章

WEB2.0專題書面報告

clip_image032[4]

組員:

資工三乙 楊秉諺 494512695

資工三乙 龔俊源 494512578