用erlang寫出的程式,如果使用依賴某一作業系統的專有技術,會在其他系統上跑不起來。
最近,學用mochiweb過程中,在windows的cygwin中遇到了這個問題。
開啟瀏覽器,http://localhost:8000 ,出現網頁,程式執行正常。
但是,由於mochiweb是在linux上開發的,使用了檔案系統專門的link技術,windows不予支援,在make時就會出現問題,當然也就無法啟動。
問題的根源是erlang函式 file:make_symlink/2
在eshell中試驗:
1> file:make_symlink("1","2").
2>
意思是:「error: erlang not support」
解決的辦法:
一切正常了。
在mochiweb之上安裝的nitrogen也有相同問題,解決方法同上。
跨平台路徑問題
在windows下的路徑分隔符和linux下的路徑分隔符是不一樣的,當直接使用絕對路徑時,跨平台會暴出 no such file or diretory 的異常。比如說要在temp目錄下建立乙個test.txt檔案,在windows下應該這麼寫 file file1 new file c tmp t...
跨平台路徑問題
在windows下的路徑分隔符和linux下的路徑分隔符是不一樣的,當直接使用絕對路徑時,跨平台會暴出 no such file or diretory 的異常。比如說要在temp目錄下建立乙個test.txt檔案,在windows下應該這麼寫 file file1 new file c tmp t...
一次跨平台程式崩潰問題
最近接手乙個程式移植的專案。原專案是執行在vxworks下的c 同時還提供了windows平台的工程。現在需要將其改造成arm版linux下和windows下跨平台的程式。原 中也包含windows和linux兩個平台程式。改造過程只是對arm版進行適應性修改,對部分功能進行補充。但是在除錯過程中卻...