難得想在 ubuntu上寫c++程式,竟然compile error
error message如下:
In function `__static_initialization_and_destruction_0(int, int)':
undefined reference to `std::ios_base::Init::Init()'
查了一下,詳細原因不清楚,
但似乎 Ubuntu 7.04之後的版本都會有這個問題,
解決辦法如下:
原本的指令:
g++ -o Result Source.cpp
改成:
g++ -lstdc++ -o Result Source.cpp
後面要加上 -lstdc++ 就可以了
沒裝過g++ compiler的,請打
sudo apt-get install g++
安裝g++ compiler。
2011-05-28 update:
噢,忘了說,
要 compile C 是用gcc
要 compile CPP要用 g++
另外,如果有跟我一樣在ubuntu上安裝過ns2,
且改過裡面的 c compiler變成g++-4.3版的,
則原本打gcc/g++,要改成 gcc-4.3/g++-4.3
這樣應該就會對了。
--
參考網頁:
http://ubuntuforums.org/archive/index.php/t-85211.html
沒有留言:
張貼留言