• ベストアンサー

warning D4029

Microsoft Visual C++ .net を会社で購入。 早速VC++ V6.0 SP5でコンパイルの通っていたソースを コンパイルしてみたところ下記warningが出ています。 「cl : コマンド ライン warning D4029 : 標準の編集コンパイラでは最適化は使用できません。」 色々と探ってみたもの皆さん「無視」しているようです。 しかし、お客さんに納品するモジュール。無視する事が出来ずに悩んでいます。 原因など教えて下さい。明日納品なのに・・・・

質問者が選んだベストアンサー

  • ベストアンサー
noname#9119
noname#9119
回答No.2

単体の Visual C++.net はStandard版で、コンパイラの最適化機能は利用できません。 単体のものではなく Visual Studio .NET の Visual C++.net では最適化機能が使えます。 無償で利用できる Visual C++.net のコンパイラ部分のツール Microsoft Visual C++ Toolkit 2003 http://msdn.microsoft.com/visualc/vctoolkit2003/ では何故か最適化機能が有効になっているのでこれを合わせて使うと Visual Studio .NET の Visual C++.net 相当になります。 明日納品ならそのまま最適化無しで済ませるのがいいと思いますが。

参考URL:
http://msdn.microsoft.com/visualc/vctoolkit2003/
全文を見る
すると、全ての回答が全文表示されます。

その他の回答 (2)

noname#30727
noname#30727
回答No.3

#1です。 >もちろん買い換えが必要ですよね 仕事で使用するなら、VS.net Professional はあった方がいいと思います。 新規で購入するよりも、ステップアップグレードか、MSDN Deluxe アップグレードを購入した方が安いので、今のVC++ .netは無駄では無いです。 Visual Studio 2005 Express が控えているので、タイミング的に悩ましい所です。 >皆さんと同様「無視」した場合はやはり動作に多少なり影響がでるのでしょうか? このwarningは作成されるコードとは関係ないので無視しても問題ないと思います。 逆に、最適化できてしまうと新たなバグが発生する事があるので、コンパイラを購入したとしても、リビルドして終了とはいかないでしょう。 もうすぐ朝ですが、納品して、あとは責任者が判断するしかありません。 頑張って下さい。

全文を見る
すると、全ての回答が全文表示されます。
noname#30727
noname#30727
回答No.1

Visual C++ .NET Standardですか? Visual Studio .NET Professional以上でないと、VC++6.0と同様の最適化はできません。 ウォーニング消すなら、最適化オプションの /O* を見直すしかないですね。

mo_aries
質問者

お礼

こんな早朝に有り難うございます。 購入等は別途検討します。今回は「無視」してオブジェクトだけの納品で交渉してみます。

mo_aries
質問者

補足

Visual CLL .Net Standard Version 2003 です。 Professional以上とのことですが。 もちろん買い換えが必要ですよね、やはり /O*を見直すしかないみたいですね。 質問が変わってしまうかもしれませんが 皆さんと同様「無視」した場合はやはり動作に多少なり影響がでるのでしょうか?

全文を見る
すると、全ての回答が全文表示されます。

関連するQ&A

  • VC Express ユーザー権限での使用方法

    Microsoft Visual C++ 2010 Express を、Administrator 権限のない(インストールできない)状態で使う方法を、ご存知の方がいらっしゃいましたら教えていただきたくお願いします。 推奨される条件ではないかもしれませんが、そこを可能にする方法をお願いします。 レジストリを編集すれば使えるのでしょうか・・ cl.exe やその他関連ファイルへのパスを一通り通しても、 「cl : コマンド ライン error D8027 : 'C:\My Program Files(自作フォルダ)\Microsoft Visual Studio 10.0\VC\BIN\c1xx.dll' を実行できません」というエラーが出て、コンパイルもできませんでした。 OS : Windows XP 用途 : コマンドラインベースの実行ファイルを、 cl, link, nmake などコマンドラインツールを使って(GUIのウィザード類を使わず)ビルドしたいと考えております。

  • C++, strcpy の warning.

    VC2005 Express Edition を使ってます。 #include <iostream> #include <string> using namespace std; int main() {   char str[10] = "hello";   strcpy(str, "HELLO"); } ↑ こちらをコンパイルすると hello.cpp .\hello.cpp(8) : warning C4996: 'strcpy' was declared deprecated C:\Program Files\Microsoft Visual Studio 8\VC\include\string.h(73) : see declaration of 'strcpy' という警告が出るのはどうしてでしょうか? #include <string.h> も試したのですが同じ警告でした。

  • VC6.0からVC7.0への移植

    VisualStudioでプログラムしています。 このたび、VC6.0で作ったプログラムをVC7.0(.NET?)に移植しようとしたところ、 「MSVCIRTD.LIBがありません」とエラーが出たので、 Microsoft Visual Studio\VC98\LibにあったMSVCIRTD.LIBをコピーしてコンパイルを通したのですが、 今度はvc60.pdbが見つからないというwarningが出てしまいます。 warningなので無視して実行しようとすると、 強制終了してしまいます。 VC6.0で作ったプログラムのファイル構成と比べると、 確かにvc70.pdbはあるのですが、vc60.pdbはありません。 ご存知の方がいましたら、問題の解決方法をご教授くださいよろしくお願いします。

  • iPhone開発でwarningがでます

    いつもお世話になっております。 先日、iPhoneアプリを外部委託で開発依頼をしていたものが納品されてきました。 弊社の環境でリリース版としてコンパイルしてみたところ、いくつかwarningが表示されました。 修正の依頼をしたいと思うのですが、委託先の回答としては「warningは問題ないので修正しない」という ような内容でした。 ここで質問ですが、iPhoneアプリの開発において、実機能に影響の無いwarningについては、 無視する(修正しない)のは、当たり前のことなのでしょうか。 現在のコンパイル環境ではwarningかもしれませんが、将来、これがerrorになる可能性も あると思っています。 現時点でwarningが無く、将来的に開発環境の変更によりwarningが出たりすることは 承知していることなのですが、現時点でwarningを認識していながら修正しなくても良しとする ことは、どうなのでしょうか。 当方、iPhoneアプリ開発経験が浅いため、詳しい方から情報をご提供いただけましたら ありがたいです。 宜しくお願いいたします。

  • Visual C++では問題があるのにgccではうまくいく理由

    Visual C++(2005)付属のコマンドラインのコンパイラを使って(cl)コンパイルしたプログラムでは、出力したい値を格納するdouble型の変数の値が、-1.#IND00となってしまうのに対して、 まったく同じソースをgccでコンパイルした場合には、普通の数値が正常に出力され、その値は事前の予想どおりの傾向を持っていることから、まちがってはいないようです。 clではうまくいかず、gccではうまくいくのはなぜなのでしょうか。 関係があるかどうかわかりませんが、値の算出の過程でrand()を使っています。

  • c++の関数をfortranから呼びたい

    c++の関数をfortranから呼びたい windowsXPのコマンドプロンプト上で VC2005でコンパイルしたc++の関数を fortranから呼びたいと思います。 fortranのソースはg77でコンパイルします。 (g77とclコマンドは動作することが 確認出来ています。) 簡単なソースとコンパイル方法を教えて 頂きたくお願いします。

  • C言語初心者です。コマンドプロンプトのコンパイルが出来ません。

    C言語初心者です。コマンドプロンプトのコンパイルが出来ません。 教習所ではVisual studio 2008を用いてたので"cl"で出来たのですが、 自宅のパソコンのコマンドプロンプトでsoccer.cというファイルを作り、コンパイラしても「'cl'は、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチ ファイルとして認識されていません」というエラーがでてしまいます。 Visual studioではありません。ノートPCに元から入ってた既存のコマンドプロンプトを使ってます。 なのでソフト名は分かりません。使ってるパソコンはwindowsです。 どなたかコンパイルの方法を教えてください!

  • windows10でVC6.0++のclを使いたい

    cl.exeの場所:C:\Program Files\Microsoft Visual Studio\VC98\Bin 環境変数INCLUDE設定:C:\Program Files\Microsoft Visual Studio\VC98\Include 環境変数LIB設定:C:\Program Files\Microsoft Visual Studio\VC98\Lib を登録したのですが、mspdb60.dllがないといわれました。 検索したらあるのですが、 どうすれば、Windows10でvc6.0++のCコンパイラを使えますか? 教えてくださいよろしくお願いします。

  • C言語でのコンパイラの作成方法

    C言語初心者のため、稚拙な文章になる可能性があることを最初にお詫びします。 現在Microsoft社のMicrosoft Visual C++ 6.0を用いてCドライブのルートにある「temp.c」というソースファイルをコンパイルするアプリケーションを作ろうと思っているのですが、ネット上で「C言語 コンパイラ 作成」等と検索しても、既にコンパイラがあることを前提としたホームページしか見つけることができず、肝心のコンパイラをどのように作ったらよいのかということが載ったホームページが見つかりません。 というわけで、今回はコンパイラをどのように作ったらよいのかというヒントだけでもいいので教えて頂けないかと思い投稿させて頂きました。 ちなみに「temp.c」はそこまで複雑なソースではなく、DOS上のアプリで、リソースやアイコンなどは用いないものです。 そもそも「コンパイラを作る」ということ自体が愚かな行為なのかと思ったりもします。 私が所持しているBcpadやMicrosoft Visual C++ 6.0に付属している既存のコンパイラを利用するということも考えたのですが、BcpadやMicrosoft Visual C++ 6.0の本体以外からコンパイラをどのように利用していいのかもわかりません。 どうぞ忌憚の無い意見をよろしくお願いします。 ちなみにOSはXPのSP3です。

  • コンパイルできない・・

    Microsoft Visual Studio 10.0を使ってwindows7上でC原語ソースをコンパイルできません。 オススメのコンパイラー、設定方法など教えて欲しいです。 プログラミングの勉強をしたいのでお願いします。

このQ&Aのポイント
  • 現在使用しているIdeaPad S540 15.6型にマルチモニターを接続し、2枚目と3枚目のモニターを独立して表示する方法を教えてください。
  • ディスプレイ設定の画面で1枚目と2枚目のモニターが検出されるが、3枚目が表示されず、2枚目と3枚目が同じ画面になってしまう問題が発生しています。
  • どのモニターを購入すれば、3台目のモニターを独立して表示することができるでしょうか。
回答を見る