如何在MSYS2中編譯Rust程式? 2018 年 12 月 16 日 Magic Len 研究分享、 Rust Windows作業系統中的Rust程式,預設會使用MSVC來編譯的。但是如果Rust程式有使用到GNU相關的函式庫(例如GTK)時,就得搭配MinGW來編譯了。MSYS2是一套整合MinGW和POSIX環境的工具,可以在Windows作業系統上模擬出Linux作業系統的開發環境,且能利用MinGW直接編譯出在Windows作業系統上執行的程式。 繼續閱讀
在Windows安裝MSYS2,讓Windows也能使用GNU的軟體開發工具 2018 年 12 月 14 日 Magic Len Linux、 C & C++、 Windows、 軟體介紹 GNU是一個Unix-like的作業系統,經常與Linux核心搭配在一起(GNU/Linux即為一般我們所說的「Linux作業系統」)。有許多軟體開發的程式都是運作在GNU的環境中,無法直接在Windows作業系統中使用,就得依靠如Cygwin和MinGW(Minimalist GNU for Windows)等軟體在Windows作業系統中,建立出GNU程式的開發環境。嚴格來說,Cygwin和M... 繼續閱讀
使用 Pipe Logger 來導出Log檔,不怕佔用太多硬碟空間 2018 年 12 月 13 日 Magic Len 作品分享、 軟體介紹 在程式執行的時候,經常會需要輸出某些文字訊息來告訴系統管理員程式執行的狀況。這些訊息可能會直接輸出到螢幕上,或是寫進檔案中方便日後查閱或是處理。然而,儲存在檔案系統中的每則文字訊息雖然可能只是短短的幾行字,但累積久了也是會佔用不少硬碟空間,如果沒有定期整理的話,可能哪天系統的可用空間就被歷史紀錄塞滿,而導致當機。為了避免程式輸出的訊息塞滿硬碟空間,可以使用Pipe Logger來限制訊息被儲存下來... 繼續閱讀
如何將Markdown文件轉成HTML文件,快速做出網頁版手冊? 2018 年 12 月 11 日 Magic Len 作品分享、 軟體介紹 Markdown是近年來十分流行的輕量標記語言,它使用了人類易懂且也容易輸入的符號來編寫文件,能夠便利地撰寫出不同等級的文件標題,還能加入圖片、超連結,甚至是表格,完全符合一般文書的需求,軟體界也是大量使用Markdown來撰寫軟體文件。大多數的Markdown編輯軟體都可以將Markdown文件轉換成HTML文件,方便文件的傳播,這也是因為相同的Markdown檔案在不同的Markdown編輯軟... 繼續閱讀
擴充Rust程式語言內建的HashMap,讓它擁有階層結構 2018 年 12 月 9 日 Magic Len Rust 在開發程式時,我們常會使用HashMap來儲存key-value結構的資料。但很多時候我們的key-value資料會有不只一層,例如一個男女分班的學校,我們就需要有性別、班級、學號這三層的key-value結構,以確保各層的資料不會有重複的情況發生。或是可以分成國家、一級行政區、二級行政區等多層資料的世界地圖。 繼續閱讀
如何在Linux作業系統上免費申請Let's Encrypt的SSL憑證,並實現自動化申請和套用? 2018 年 12 月 7 日 Magic Len Linux、 作品分享、 網站應用、 軟體介紹 在西元2015年之後,我們所熟悉的HTTP網站已經被大多數人認為是不安全的網站了,許多瀏覽器甚至會直接針對沒有使用HTTPS協定的網站打上「不安全」的標籤,就連搜尋引擎也會降低HTTP網站的排名。因此讓網站支援SSL,並使用HTTPS協定進行傳輸,已經是再基本不過的事了。在過去使用公開的SSL時,通常都需要去向第三方安全認證機構購買所謂的「SSL憑證」,一直到2015年,Let's Encrypt... 繼續閱讀
XCompress─在Linux作業系統上快速壓縮/解壓縮ZIP、GZIP、BZIP2、XZ、7ZIP、TAR、RAR等常見格式 2018 年 12 月 5 日 Magic Len Linux、 作品分享、 軟體介紹 檔案文件的壓縮格式有非常多種,在使用文字介面來操作電腦時,不同的壓縮格式對應著不同的工具,每個工具的指令使用方式皆不太一樣。XCompress是一款使用Rust程式語言開發,專門使用在Linux作業系統上且開源的壓縮和解壓縮工具,整合了ZIP、Z、GZIP、BZIP2、LZ、XZ、LZMA、7ZIP、TAR、RAR和ZSTD,能夠使用相同的指令來處理這些壓縮格式的壓縮和解壓縮。 繼續閱讀
如何讓Writer能在不同執行緒下同步寫入,且能夠拿回擁有權?實作同步版本的RcWriter吧! 2018 年 12 月 3 日 Magic Len 研究分享、 Rust 在之前關於「RcWriter」的文章中,我們將Rc智慧型指標和「Writer」一同連用,讓「Writer」的擁有權在被其他套件搶走之後還可以有辦法繼續使用同樣的「Writer」。但如果是在並發與並行的程式中,「RcWriter」就無用武之地了。 繼續閱讀
Writer的擁有權被拿走後要怎麼拿回來?用Rc智慧型指標來製作RcWriter吧! 2018 年 12 月 1 日 Magic Len 研究分享、 Rust 在開發Rust程式的時候,會使用到各式各樣別人開發的套件。這些套件雖然很方便,可以替我們節省不少開發時間,但是套件提供的API,卻不一定能夠完全滿足我們的需求。「Writer」的擁有權被取走,就是一個常見的例子。 繼續閱讀
快速方便的繁體中文轉簡體中文工具─tw2s 2018 年 11 月 30 日 Magic Len 作品分享、 軟體介紹 在撰寫多國語言的程式的語言檔時,中文雖然主要分為繁體中文和簡體中文,但其實只需要寫好繁體中文的語言檔就好,因為簡體中文的部份可以利用其它程式來將繁體中文的語言檔直接轉換過去! 繼續閱讀