質問

Windows 7(32ビット)で最新のCygwinを実行しており、オープンソースプロジェクトを構築しようとしています。 rtaudio (現在、このプラットフォーム上には構築されていません)。

私が回った問題の1つは、行のエラーです#include <tchar.h>.

私のビルドラインは次のとおりです。

g++ -O2 -Wall -Iinclude -DHAVE_GETTIMEOFDAY -D__WINDOWS_DS__ -c RtAudio.cpp -o RtAudio.o

エラーは次のとおりです。

tchar.h: No such file or directory

インクルードパスのリストに/usr/include/include/mingw(tchar.hを含む)を追加すると、より多くのエラーが得られます。

私はLPCTSTRを使用しないことで問題を回避し、それを必要とする1つの関数を過負荷にしています const char*const wchar_t* それで、私はtchar.hを含めることを避けることができますが、これを行うためのより良い方法はありますか?

役に立ちましたか?

解決

tchar.h Windowsヘッダーです。ソフトウェアは、基本だけではない場合は、libiconvまたはICUに移植する必要があります。

他のヒント

Cygwin用にこれを構築する場合は、WindowsのパスではなくUnix/Linuxコードパスを使用することを確認する必要があります。特に、 Win32 マクロはWindowsコードを守るためによく使用されますが、それはCygwinでも定義されているため、そのような警備員を変更する必要があるかもしれません #if defined(__WIN32__) && !defined(__CYGWIN__).

もちろん、もう1つの方法は、ネイティブウィンドウ用にこれを構築することです。 Cygwin内では、これを使用できます gcc-3 -mno-cygwin または、最近Cygwinディストリビューションに追加されたMINGW-W64クロスコンパイラ。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top