C++がコンパイルできません
mobaxtermでC++の簡単なコードをコンパイルしたところ、このようなエラーがでました。
➤ g++ test.cpp -o test
In file included from /usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/i686-pc-cygwin/bits/gthr.h:148:0,
from /usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/ext/atomicity.h:35,
from /usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/bits/ios_base.h:39,
from /usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/ios:42,
from /usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/ostream:38,
from /usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/iostream:39,
from test.cpp:1:
/usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/i686-pc-cygwin/bits/gthr-default.h: 関数 ‘int __gthread_mutex_timedlock(__pthread_mutex_t**, const __gthread_time_t*)’ 内:
/usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/i686-pc-cygwin/bits/gthr-default.h:768:12: エラー: ‘pthread_mutex_timedlock’ was not declared in this scope
return __gthrw_(pthread_mutex_timedlock) (__mutex, __abs_timeout);
^
/usr/lib/gcc/i686-pc-cygwin/7.3.0/include/c++/i686-pc-cygwin/bits/gthr-default.h:768:12: 備考: suggested alternative: ‘__gthread_mutex_timedlock’
原因がわからないので、このエラーの解決策を知っている方がいたら教えてください。
ソースコードは以下の通りです。
#include<iostream>
using namespace std;
int main()
{
cout<<"a";
return 0;
}
ありがとうございます。
g++ -Q -vの実行結果を以下に記します。
➤ g++ -Q -v
組み込み spec を使用しています。
COLLECT_GCC=g++
COLLECT_LTO_WRAPPER=/usr/lib/gcc/i686-pc-cygwin/7.3.0/lto-wrapper.exe
ターゲット: i686-pc-cygwin
configure 設定: /cygdrive/i/szsz/tmpp/gcc/gcc-7.3.0-3.i686/src/gcc-7.3.0/configure --srcdir=/cygdrive/i/szsz/tmpp/gcc/gcc-7.3.0-3.i686/src/gcc-7.3.0 --prefix=/usr --exec-prefix=/usr --localstatedir=/var --sysconfdir=/etc --docdir=/usr/share/doc/gcc --htmldir=/usr/share/doc/gcc/html -C --build=i686-pc-cygwin --host=i686-pc-cygwin --target=i686-pc-cygwin --without-libiconv-prefix --without-libintl-prefix --libexecdir=/usr/lib --enable-shared --enable-shared-libgcc --enable-static --enable-version-specific-runtime-libs --enable-bootstrap --enable-__cxa_atexit --with-dwarf2 --with-arch=i686 --with-tune=generic --disable-sjlj-exceptions --enable-languages=ada,c,c++,fortran,lto,objc,obj-c++ --enable-graphite --enable-threads=posix --enable-libatomic --enable-libcilkrts --enable-libgomp --enable-libitm --enable-libquadmath --enable-libquadmath-support --disable-libssp --enable-libada --disable-symvers --with-gnu-ld --with-gnu-as --with-cloog-include=/usr/include/cloog-isl --without-libiconv-prefix --without-libintl-prefix --with-system-zlib --enable-linker-build-id --with-default-libstdcxx-abi=gcc4-compatible --enable-libstdcxx-filesystem-ts
スレッドモデル: posix
gcc バージョン 7.3.0 (GCC)
初心者なものでやり方があってるかはわかりませんが、やってみたところこのようなエラーがでました。(下記参照)
➤ g++ --disable-threads test.cpp -o test
cc1plus: エラー: unknown pass threads specified in -fdisable