私のC++プロジェクトは、Linux上でうまく構築されて動作します。今はVS2010でコンパイルしようとしています。一見次のようなcmathライブラリから多くのエラーが出ます。これらのエラーを排除するためにどのようにLinuxでうまくいくC++プログラムのVS2010でコンパイルが失敗する
Error 1 error C3861: 'lseek': identifier not found g:\project\file.cc 274 1 MyPROJ
Error 2 error C3861: 'write': identifier not found g:\project\file.cc 275 1 MyPROJ
:
Error 1 error C2061: syntax error : identifier 'acosf' c:\program files\microsoft visual studio 10.0\vc\include\cmath 19 1 MyPROJ
はまた、私は次のようにコンパイルエラーを関連する多くのファイル操作を取得します。
私はまれにcmath/math.hで何かをすることはほとんどありませんが、ずいぶん前に、(VS以外の)コンパイラに数学ライブラリをリンクするよう明示する必要がありました。たぶんVSは似たような愚かさを持っていますか –
vc2010のacosfを使ったテストプログラムは、math.h以外の特別なライブラリやヘッダなしでコンパイルされ、うまく動作します。 – jcoder
_lseekと_writeはうまくいきました!私は文法のためにyacc(Bison)によって自動生成されたパーサーコードを使用しています(この自動生成コードのファイル名はy.tab.cです)。私はそれを編集しようとし、 "math.h"を含めましたが、それは助けにはなりません。私がlinuxで使ったMakefileでは、コマンドは "g ++ -c y.tab.c"です。 – devnull