「Visual Studio」を含む日記 RSS

はてなキーワード: Visual Studioとは

2009-05-17

Visual Studioでのsnes9x-1.5.1のビルドのコツ

・snes9x-1.5.1-srcフォルダを入れるまとめフォルダを作る(ここにzliblibpngとfmodとnasmのフォルダを突っ込むため)。


・zlibソースDLして解凍する。できたフォルダをzlibリネームしてまとめフォルダに突っ込む。zlibフォルダ内のcrc32.cをemucrc32.cにリネームする。


libpngはコンパイル済みバイナリDLして解凍する。できたフォルダlibpngにリネームしてまとめフォルダに突っ込む。ソリューションエクスプローラlibPNGフォルダ内の*.cをプロジェクトから除外する。プロジェクトプロパティで追加の依存ファイル一覧にあるlibpngmt.liblibpng.libリネームする。


・fmodはver.3系(ver.4系でのビルドは未確認)のコンパイル済みバイナリDLして解凍する。できたフォルダの中のフォルダをfmodにリネームしてまとめフォルダに突っ込む。


・nasmはコンパイル済みバイナリDLして解凍する。できたフォルダの中のフォルダをnasmにリネームしてまとめフォルダに突っ込む。nasmはプロジェクト中の*.asmのビルドに必要になる。後の*.asmのビルド設定との整合性のためこの通りに配置すること。


プロジェクトプロパティDirectX SDKのIncludeとLibフォルダパスを通す。


プロジェクトプロパティで、「リンク前のイベント」に次のコマンドを追加する。

pushd "$(SolutionDir)..\"

del "i386\*.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\2xsaimmx.asm" "-oi386\2xsaimmx.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\bilinear.asm" "-oi386\bilinear.obj"

rem "$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\c4.asm" "-oi386\c4.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\fxemu2.asm" "-oi386\fxemu2.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\fxemu2b.asm" "-oi386\fxemu2b.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\fxemu2c.asm" "-oi386\fxemu2c.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\fxtable.asm" "-oi386\fxtable.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\sfxproc.asm" "-oi386\sfxproc.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\spc.asm" "-oi386\spc.obj"

"$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\zsnes.asm" "-oi386\zsnes.obj"

rem "$(SolutionDir)..\..\nasm\nasm.exe" -f coff "i386\zsnesc4.asm" "-oi386\zsnesc4.obj"

popd

上記のコマンドに出てくる11個の*.objファイルプロジェクトに追加する。ただしコマンドコメントアウトされている2つ(c4.objとzsnesc4.obj)はビルドから除外しておくこと。


・SARマクロ(sar.h)が原因でコンパイラが死ぬので、このマクロを不使用にするためにport.hの277行のRIGHTSHIFT_IS_SARマクロ定義を未定義にする。


ここまでの手順でビルドが通る。


TODO:

プリプロセッサZSNES_C4を有効にする時の設定

2009-05-14

IIS+ASP.NET+SQLite

自分のための覚え書き。知ってる人からすれば全然当たり前のことかも…

IIS上で、Visual Studio 2008で開発したASP.NETWebサイトを動かす時に、SQLiteを使う方法

IISの動作しているマシンに「SQLite for ADO.NET 2.0」をインストール

それだけで良いと思ったけれど、以下のエラーが発生。

ArgumentException: 要求された .Net Framework データ プロバイダが見つかりません。これは、インストールされていない可能性があります。

いろいろ調べたら、手動でmachine.configを書き換える必要があるみたい。

そこで、machine.configに以下の行を追加。

	<system.data&gt;
		<DbProviderFactories&gt;
			<add name="SQLite Data Provider" invariant="System.Data.SQLite" description=".Net Framework Data Provider for SQLite" type="System.Data.SQLite.SQLiteFactory, System.Data.SQLite, Version=1.0.61.0, Culture=neutral, PublicKeyToken=db937bc2d44ff139" /&gt;
		</DbProviderFactories&gt;
	</system.data&gt;

無事に動くようになりました。

2009-03-05

http://anond.hatelabo.jp/20090305105248

日常的に使っているwin専用ソフトだと

vistaですら互換性が気になって移行できないのにmacなんてありえない。

webにしかPC使わないんだったらubuntu使うし

2009-02-23

http://anond.hatelabo.jp/20090223195921

丁度,同じようなこと書こうとしていたところだ.

昔,IT系の学校に行って,情報技術プログラミングなど勉強していたんだけど,

それで何が出来るのか分からなくて,卒業はしたが今は全く別の仕事をしている.

最近,それが懐かしくなって,頭もあまり使ってないし,日曜プログラマにでもなろうかと思っていたところ.

# 以下,何年も前の話で,うろ覚えなので些細な間違いは見逃してほしい.

学生時分は,プログラミングだったら C, Java, はとりあえず一通り勉強した.

C だと手続き型で.変数の宣言の話から配列ポインタ構造体と進む.

Java ならオブジェクト指向で,手続き型と違って,汎用的なクラスを作成すれば

再利用できて…とか,それを継承できて…とかで開発効率・生産性が高い云々とか,

そういう話から,で実際それをプログラムにするとこうなりますよ.という流れ.

これで一通り言語自体の知識は身に付くのだけれど,で?っていう状況になったのは,

元記事の増田と同じだ.結局,それらの言語にどういう特徴があるのかは,

仕事などで本格的に開発をする人たちにとっては重要なことかもしれないけれど,

初心者にとっては,とりあえず,そんなことはどうでもよくて,何が出来るのかが分からない.

逆に言えば何を作りたいかが分からなければ勉強しても何の意味もない(これが昔の私かも)

でも,とにかく何か作りたい.何故だかよく覚えていないけれど,

C でテトリス作りたいと思っていたのは今でも記憶に鮮明に残っていて,

当時も試みたのだけれど,コマンドプロンプトでしか動かせないようなプログラムしか書けなくて

どうしてウィンドウを作って表示するようなプログラムが書けるのか分からなかったし,今でも分からない.

(今もあるのか知らないけれど)VB とか Visual Studio とか Eclipse みたいな統合開発環境を使えば

そんなこと知らなくても,ウィンドウは作れたし,ボタン配置したり,その他色々簡単にできるんだろう.

でも,先に言ったように,開発効率などどうでもいいし,出来ればいいということでもない.

どうしてウィンドウが出来るのかが,分からないのが気持悪くて統合開発環境使う気になれなかった.

仕事ではないのだから,ただひたすらキーボード叩いて全部一から手打ちでプログラム書きたい.

タイプカウントするプログラム常駐させて今日は何千何万打も叩いたぜ!!というただの自己満足だけ.

とにかく,ソース汚くてもいいから「これを作りたい」ってのがないと続かないんだろうなと思う.

別にプログラムだけでなく,何に関しても言えることかもしれないけどね.

全然質問の解答になってないな.長文失礼.

2008-12-12

プログラマーへの道

3Kだの7Kだの言われるプログラマー1年目のオレが

どうしようもなくIT業界に進むことになった学生に寝ぼける。

まずはひとつの言語をとことんやれ

プログラミング言語の種類にはC、VBJAVADelphiPHPPerlとか無数にあるが

どれでもいいからひとつ好きなの選んで学べ。

どれにしようかと迷うぐらいならCかJAVAやっとけ。

あまりマイナー言語プログラミグ嫌いになるからやめとけ。

まずは基礎だ

いきなり難しいことしようとは考えず、入門書通りに文字を表示したり

掛け算したりそういうのを確実にやれ。

FizzBuzzっていう基礎さえできてれば屁をこく方が難しいプログラミングがある。

1からどんどん数を増やしていくプログラミングだ。

3の倍数になった場合は数字の変わりに「Fizz」と表示させて

5の倍数になった場合は数字の変わりに「Buzz」と表示させる。

3と5の公倍数になった場合は数字の変わりに「FizzBuzz」と表示させるシンプルプログラムだ。

プログラミングできるって言っておいてこれもできない奴が結構いるわけだ。

学習の仕方

とりあえず入門書買って順々に進んで行け。

大抵のサイトはやり方と簡単な説明だけで詳細な説明が載ってないから本は買え。

そして一気にやろうとするな。先週やったことを30分でもいいから今週にもしろ。

ソースコピペじゃなくて自分の手で打ち込め。足でもいいぞ。

ミスすることはとてもステップアップに繋がるからな。

IDEや補完機能がついたエディタなんて使わないで

メモ帳で作って、コマンドプロンプトからコンパイルすること。

あと、目標を立てろ。1日10ページとか1章とかそんなんでいいから

そして最後の5分は今日やったことをノートでもブログにでも書け。

本とかの練習問題では目標タイムとか書いてあるからそれを守るように解いていけ。

時間を多めにとってある入門書の練習問題程度で目標タイムに届かなかったら前の章からやり直せ。

仕事生産性が非常に大切だ。 仕事遅いのにできる人より残業して給料貰ってる汚い大人にはなるなよ。

とりあえず基礎だ基礎。

基礎を学び終わったら

普通なら応用に進むのが普通だろうと思うが、これからプログラマになるわけだから

環境を変えてやってみるのもいいと思う。基礎さえ確実にマスターしておけば

応用的なものはその都度調べることの繰り返しで結構覚えれるもの。

ここからはメモ帳からサクラエディタ秀丸エディタに変えてプログラミングしてみたり

EclipseVisual Studioを使ってこういったツールが非常に便利であることを体験しろ。

仕事はこういったツールがないとやっていけない。

そして意外とこういったツールを使いこなせていないプログラマが沢山いる。

使いこなすことによって仕事量が増えるだけでなく、ミスも減らすことができる。

まだ余裕があるなら

英語できないならプロラミング関係英語を最低限覚えろ。

英語エラー吐き出されただけでため息出すようじゃ話にならん。

ネットで調べても英語サイトがよく引っかかるわけだ。

あと、エラーメモ帳作れ。これ以外と人にもつかえる。

2008-11-18

http://anond.hatelabo.jp/20081118153234

Emacsだって、きもぉーい。

Visual StudioXcode でしょー、まぁじ、きもいんですけどぉー。

2008-09-04

GPGPU 開発環境

いろいろ間違ってるかもしれないが、力尽きた

分類開発環境開発言語メーカーGPUOSAPI備考URL
シェーダ言語_CgNVIDIAGeForceLinux
Windows
Mac OS X
XBOX
OpenGL
DirectX 8/9
C言語ライクな言語
グラフィック用途向け
シェーダプログラム最適化
http://developer.nvidia.com/page/cg_main.html
シェーダ言語_HLSLMicrosoftGeForce
RADEON
WindowsDirectXグラフィック用途向け
シェーダプログラム最適化
シェーダ言語_GLSLOpenGL ARB__OpenGLC言語ライクな言語
グラフィック用途向け
シェーダプログラム最適化
GPGPU言語CUDAC言語NVIDIAGeForce
GeForce 8100 mGPU以上
Linux
Windows XP/Vista
Mac OS X
_標準C言語http://www.nvidia.com/object/cuda_home.html
GPGPU言語Stream SDKBrook+AMDRADEON
R600世代以降
(=RADEON HD2400以降)
Linux
Windows
OpenCL(対応予定)
DirectX 11(対応予定)
C言語ライクな言語http://ati.amd.com/technology/streamcomputing/index.html
GPGPU言語Brook for GPUBrookスタンフォード大学GeForce
RADEON
Linux
Windows
OpenGL
DirectX 9
C++ライクな言語
GPGPU言語Close to Metal(CTM)アセンブリ言語AMDRADEON_Stream SDKのCALに移行
GPGPU言語_Sh____C++ライクな言語
GPGPU言語RapidMindC++_GPU
マルチコアCPU
Cell
__Shの商用化版

参考文献

CUDAを使う:tech.ckme.co.jp

http://tech.ckme.co.jp/cuda.shtml

【特集】超並列プロセサ - GeForceアーキテクチャとCUDAプログラミング

http://journal.mycom.co.jp/special/2008/cuda/menu.html

Windows環境は、Visual Studioを用いてmakeを行うようになっている

CUDA SDKでは、通常実行用のGPUバイナリを生成する以外に、(中略)

GPUのない環境CPUで実行するエミュレーションバイナリを生成したりする機能があり

2008-07-11

iPhoneの開発環境は苦笑せざるを得ないような代物らしい

ゲームソフト会社から見たiPhoneの魅力

http://japan.cnet.com/interview/story/0,2000055954,20376901,00.htm

ブクマより。

http://b.hatena.ne.jp/entry/http://japan.cnet.com/interview/story/0,2000055954,20376901,00.htm

2008年07月11日 nicht-sein apple, game "「ここまで整ったプラットフォーム世界初」"プラットフォーム、の前に「携帯電話では」が抜けとる。

あとは開発環境がVSに比べちゃうとどうしてもねぇ(苦笑)

(「VS」はVisual Studioでしょうか。)

2008-03-21

[]Python 2.5のdistutilsで、Visual Studio 2005を使いたい!

目的

Visual Studio 2005しかインストールしてない場合、Python 2.5だとdistutilsが正しく動かないっぽいので、どうにかしたいYO!

なんでVisual Studio 2005だと、distutilsが動かないんかな?

distutilsでVisual Studioを使うときのコンパイル環境は、sysモジュールのversionプロパティを参照して環境を選択をしているようです。Pythonインタプリタを起動して、以下のような命令を実行してみると、sys.versionプロパティが確認できます。

import sys;print sys.version

Python 2.5.2だと、以下のようになっています。Visual Studio 2003の環境が使われるようです。

2.5.2 (r252:60911, Feb 21 2008, 13:11:45) [MSC v.1310 32 bit (Intel)]

Python 2.6a1だと、以下のようになっています。Visual Studio 2008の環境が使われるようです。

2.6a1 (r26a1:61155, Mar  1 2008, 12:11:56) [MSC v.1500 32 bit (Intel)]

以上から察するに、Python 2.5.2とPython 2.6のどちらでも、Visual Studio 2005の環境が選択されることはないっぽいです。うーん、困った!

解決策

Python 2.6とVisual Studio 2008をインストールしよう!」というのを真っ先に思いつきましたが、あんまり環境を変えたくないんだよなー。というわけで、環境の変更を最低限に抑えてどうにかしてみました。簡単に言うと、distutilsだけの置き換えをしました。

Python 2.6 をインストールする

Python 2.6の公式ダウンロードページから、Windows版のインストーラーをダウンロードして、適当な場所にインストールしてください。

distutilsだけ置き換える

"Python-2.5.2/Lib/distutils"を別の場所に移動し、"Python-2.6a1/Lib/distutils"を"Python-2.5.2/Lib"以下にコピーしてください。以降はPython 2.6は必要ないので、アンインストールして構いません。

ファイルの修正
  • 例外をPython 2.5.2で許されている形式に変更。
  • get_build_version()関数で強制的に8を返すように変更。

上記の2点の変更を行います。distutilsディレクトリに、以下のパッチをあててください。

Index: msvccompiler.py
===================================================================
--- msvccompiler.py
+++ msvccompiler.py
@@ -170,6 +170,7 @@
     if majorVersion == 6:
         minorVersion = 0
     if majorVersion >= 6:
+        return 8
         return majorVersion + minorVersion
     # else we don't know what version of the compiler this is
     return None
Index: msvc9compiler.py
===================================================================
--- msvc9compiler.py
+++ msvc9compiler.py
@@ -128,7 +128,7 @@
                                "sdkinstallrootv2.0")
             else:
                 raise KeyError("sdkinstallrootv2.0")
-        except KeyError as exc: #
+        except KeyError, exc: #
             raise DistutilsPlatformError(
             """Python was built with Visual Studio 2008;
 extensions must be built with a compiler than can generate compatible binaries.
@@ -172,6 +172,7 @@
     if majorVersion == 6:
         minorVersion = 0
     if majorVersion >= 6:
+        return 8
         return majorVersion + minorVersion
     # else we don't know what version of the compiler this is
     return None
@@ -455,7 +456,7 @@
                 try:
                     self.spawn([self.rc] + pp_opts +
                                [output_opt] + [input_opt])
-                except DistutilsExecError as msg:
+                except DistutilsExecError, msg:
                     raise CompileError(msg)
                 continue
             elif ext in self._mc_extensions:
@@ -482,7 +483,7 @@
                     self.spawn([self.rc] +
                                ["/fo" + obj] + [rc_file])
 
-                except DistutilsExecError as msg:
+                except DistutilsExecError, msg:
                     raise CompileError(msg)
                 continue
             else:
@@ -495,7 +496,7 @@
                 self.spawn([self.cc] + compile_opts + pp_opts +
                            [input_opt, output_opt] +
                            extra_postargs)
-            except DistutilsExecError as msg:
+            except DistutilsExecError, msg:
                 raise CompileError(msg)
 
         return objects
@@ -520,7 +521,7 @@
                 pass # XXX what goes here?
             try:
                 self.spawn([self.lib] + lib_args)
-            except DistutilsExecError as msg:
+            except DistutilsExecError, msg:
                 raise LibError(msg)
         else:
             log.debug("skipping %s (up-to-date)", output_filename)
@@ -598,7 +599,7 @@
             self.mkpath(os.path.dirname(output_filename))
             try:
                 self.spawn([self.linker] + ld_args)
-            except DistutilsExecError as msg:
+            except DistutilsExecError, msg:
                 raise LinkError(msg)
 
         else:
manifestファイルを作る

python.exeと同じディレクトリに、以下のXMLを"python.exe.manifest"として保存してください。

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity
        type='win32'
        name='Microsoft.VC80.CRT'
        version='8.0.50608.0'
        processorArchitecture='x86'
        publicKeyToken='1fc8b3b9a1e18e3b'
        />
    </dependentAssembly>
  </dependency>
</assembly>

これで終わりです。

2008-03-20

[]gcc-xmlVisual Studio 2005を使いたい!

gcc-xmlって何?

gccの構文解析の結果(構文木)を、XMLとして出力してくれるツールです。C++の構文解析はやたらと面倒らしいので、こういうのがあるとうれしいみたいよ。

何でわざわざビルドするの?

Py++」というC++のPytyonバインディングで使われていたので、必要になりました。gcc-xml 0.6はバイナリで配布されてるんだけど、MSVC7.1までしか対応してないようで、Visual Studio 2005だと使えませんでした。うーん、困った。というわけで、最新版のソース一式を取得してビルドしてみます。

CMakeをインストールしよう

gcc-xmlビルドには、CMakeというツールが必要になります。CMakeは、オープンソースクロスプラットフォームビルドシステムなんだとか。CMakeの公式サイトから、Windows版のインストーラーをダウンロードしてインストールしよう。

実は最初は、ここでcygwinのsetup.exe経由でのインストールをしてたんですけど、これだとgcc-xmlビルドの段階でエラーが発生しちゃいました。この原因がどうしてもわかんなかったので、あきらめて公式サイトインストーラーを使うことにした次第です。

gcc-xmlソース一式を取得しよう

ソース一式はCVSから取得できます。CVSクライアントはいろんなのがあるので、好きなクライアントを使って取得しよう。ここではcygwinCVSを使って、シェルから以下の命令を実行して取得しました。40MBくらいあるみたい。

$ cvs -d :pserver:anoncvs@www.gccxml.org:/cvsroot/GCC_XML co gccxml

gcc-xmlビルドしよう その1

Visual Studio 2005 コマンドプロンプト」を起動してください。起動したら、さきほど取得したソース一式が格納されているディレクトリに移動して、以下の命令を実行します。

$ cmake .

cmake.exeにはあらかじめパスを通しておくか、パスを直接指定するのを忘れずにね。

gcc-xmlビルドしよう その2

gcc-xmlビルドはまだ終了してなかった! 一度ビルドが終了しても、第二第三のビルドが必要となって…。などと恐れおののきましたが、二段階でいいみたい。

さきほどの処理が終了すると、同じディレクトリに"gccxml.sln"というソリューションファイルが新しくできあがっているかと思います。これをVisual Studio 2005から開いて、Releaseビルドしよう。ビルドが終了したら、以下の5つの実行ファイルができあがっているはずです。

  • bin/release/gccxml.exe
  • bin/release/gccxml_cc1plus.exe
  • bin/release/gccxml_vcconfig.exe
  • bin/release/gxsysEncodeExecutable.exe
  • bin/release/gxsysProcessFwd9x.exe

gcc-xmlVisual Studio 2005を使えるように設定しよう

まずは環境変数の設定です。Visual Studio 2005を使っていることを、gcc-xmlに高らかに宣言しておこう。

$ set GCCXML_COMPILER=msvc8

つぎに、gccからVisual Studio 2005のインクルードファイルを使えるよう、パッチをあてます。ありがたいことに、"GCC_XML/VcInstall"ディレクトリ以下にVisual Studioバージョンによってパッチが用意されています。そのディレクトリと、パッチを当てたファイルを出力するディレクトリ("gccxml.exe"が置いてあるディレクトリ)を指定して、"gccxml_vcconfig.exe"を実行してください。

$ bin/release/gccxml_vcconfig GCC_XML/VcInstall/ bin/release

gcc-xmlを使ってみよう

あとはbin/releaseにパスを通せば、gcc-xmlが使えるようになったはずです。bin/release以下をどこか適当ディレクトリコピーして、そこにパスを通してもオッケイです。やったね! というわけで、さっそく試してみましょう。

$ gccxml eample1.cpp -fxml=example1.xml

ここでは、解析するC++ソースファイルとしてeample1.cpp入力し、eample1.xmlを出力しています。ちゃんと出力できたかな? できたー! やったー!

以上で終わりです。

2008-03-15

[][]PythonからSWIG経由でVisual Studio 2005を使って困ったこと

以上のような組み合わせで出くわした困ったことと、その解決策をメモしておきます。

setup.py を実行するとエラーが表示された!

Python was built with Visual Studio 2003;

extensions must be built with a compiler than can generate compatible binaries.

Visual Studio 2003 was not found on this system. If you have Cygwin installed,

you can try compiling with MingW32, by passing "-c mingw32" to setup.py.

setup.pyに.iファイルとか.cppファイルを記述して実行すると、こんな感じのエラーメッセージが表示されました。うーん、困った!

http://labs.cybozu.co.jp/blog/mitsunari/2007/08/vc2005boostpython.html

上記のページを参考にして、"%Pythonインストールしたフォルダ%/Lib/distutils/msvcompiler.py"を以下のように修正してみたら解決できました。ありがとうありがとう

--- msvccompiler.py    2007-04-04 17:17:12.000000000 +0900
+++ 
@@ -126,7 +126,7 @@
         self.set_macro("FrameworkDir", net, "installroot")
         try:
             if version > 7.0:
-                self.set_macro("FrameworkSDKDir", net, "sdkinstallrootv1.1")
+                self.set_macro("FrameworkSDKDir", net, "sdkinstallrootv2.0")
             else:
                 self.set_macro("FrameworkSDKDir", net, "sdkinstallroot")
         except KeyError, exc: #
@@ -252,7 +252,10 @@

     def initialize(self):
         self.__paths = []
-        if os.environ.has_key("DISTUTILS_USE_SDK") and os.environ.has_key("MSSdk") and self.find_exe("cl.exe"):
+        if self.__version >= 7.1 or (
+            os.environ.has_key("DISTUTILS_USE_SDK") and
+            os.environ.has_key("MSSdk") and
+            self.find_exe("cl.exe")):
             # Assume that the SDK set up everything alright; don't try to be
             # smarter
             self.cc = "cl.exe"
@@ -288,10 +291,16 @@

         self.preprocess_options = None
         if self.__arch == "Intel":
-            self.compile_options = [ '/nologo', '/Ox', '/MD', '/W3', '/GX' ,
-                                     '/DNDEBUG']
-            self.compile_options_debug = ['/nologo', '/Od', '/MDd', '/W3', '/GX',
-                                          '/Z7', '/D_DEBUG']
+            if self.__version >= 7.1:
+                self.compile_options = [
+                    '/nologo', '/Ox', '/MD',  '/W3', '/EHsc', '/DNDEBUG']
+                self.compile_options_debug = [
+                    '/nologo', '/Od', '/MDd', '/W3', '/EHsc', '/Z7', '/D_DEBUG']
+            else:
+                self.compile_options = [
+                    '/nologo', '/Ox', '/MD',  '/W3', '/GX',  '/DNDEBUG']
+                self.compile_options_debug = [
+                    '/nologo', '/Od', '/MDd', '/W3', '/GX', '/Z7', '/D_DEBUG']
         else:
             # Win64

cl.exeが見つからないと言われた!

setup.pyを実行するとcl.exeが見つからないみたいなエラーが表示されました。これは、アレだ。「パス通せ!」ということですね。bashを起動するときのバッチファイル(たぶん"cygwin.bat"とか)で、以下のような行を入れてやれば解決しました。

call "%VS80COMNTOOLS%vsvars32.bat"

setup.pyを実行したときに"basetsd.h"が開けないと言われた!

d:\python25\include\pyconfig.h(189) : fatal error C1083: include ファイルを開けません。'basetsd.h': No such file or directory

error: command 'cl.exe' failed with exit status 2

setup.pyを実行すると、上のようなエラーが表示されました。

http://d.hatena.ne.jp/ousttrue/20070531/1180556273

上記のサイトを見るとインクルードパスが通っていない場所に"basetsd.h"があるのが原因なので、"cygwin.bat"にインクルードパスの設定をしておきました。

call "%VS80COMNTOOLS%vsvars32.bat"
set INCLUDE=C:\Program Files\Microsoft Platform SDK\Include;%INCLUDE%

setup.pyを実行したときのリンク時にエラーが発生した!

link: extra operand `/INCREMENTAL:NO'

詳しくは `link --help' を実行して下さい.

error: command 'link.exe' failed with exit status 1

これは、cygwinのほうのlink.exeが実行されてるのが原因でした。スマートな解決策ではありませんが、cygwinのほうのlink.exeをリネームして解決。パスの設定順序とかでどうにかできるといいんだけど、どうすればいいんかな。

MSVCR80.dllが見つからないと言われた!

MSVCR80.dllが見つからなかったため、このアプリケーションを開始できませんでした。アプリケーションインストールし直すとこの問題は解決される場合があります。

SWIGが生成した.pyファイルをimportしたら、こんな感じのエラーダイアログが表示されたよ。うーん、困った!

http://d.hatena.ne.jp/moriyoshi/20070525

上記のページを参考にして、"%Pythonインストールしたフォルダ%/python.exe.manifest"として以下のようなファイルを新しく作ったら、解決できました。ありがとうありがとう

あとこれ、bashから実行したらエラーダイアログが表示されず、importするモジュールが見つからないみたいなエラーメッセージが出力されるだけだったよ。

<?xml version='1.0' encoding='UTF-8' standalone='yes'?>
<assembly xmlns='urn:schemas-microsoft-com:asm.v1' manifestVersion='1.0'>
  <dependency>
    <dependentAssembly>
      <assemblyIdentity type='win32' name='Microsoft.VC80.CRT' version='8.0.50608.0' processorArchitecture='x86' publicKeyToken='1fc8b3b9a1e18e3b' />
    </dependentAssembly>
  </dependency>
</assembly>

2008-03-05

http://anond.hatelabo.jp/20080304133755

だいぶ前にTurbo Delphi Explorerを試してみたが、添付ファイルは送られてきたよ。メーラーとかファイアーウォールが添付ファイルを剥ぎ取ってない?

もともとTurbo Pascal 2.xあたりからのユーザーなんだが、Delphi 5.xくらいでアップデートを止めてしまった。久しぶりにDelphi無料版をインストールしてみた時には悲しくなったよ。

ヘルプアップデートされていないので、あちこちつじつまが合わないんだよ。おまけに、ヘルプのトップに堂々と昔の日付が書いてあったりして、「もうわれわれにはこれを続ける余力はありません」って無言のメッセージが伝わってくる。

Delphiに触った連中が、あきらめ切れず今でも愛し続ける理由はわかるんだよ。でも、これからはじめるなら俺はC#を薦めるね。Delphiチーフエンジニアが開発を率いたので、Delphiの良いところがいろいろ盛り込まれているし、悪いところも改善されている。

Visual Studio無料版がある。

2008-02-29

http://anond.hatelabo.jp/20080229124417

開発環境Linux

だけどオレは win にも emacs (NTemacs) を入れる。

オレは vi はあまり使いこなしていないから、vi はちょっと設定ファイルCUI編集するときだけ使う。

よーし、プログラミングやるぞー、というときは emacs を使う。

emacs (vi) を使う理由はいちいち言語ごと、プラットフォームごとに開発環境を変えたくないから。

php → Zend IDE とか C++Visual Studio とか Python → ? とか Ruby → ? とかやってらんない。

そもそも win でしか動かない IDE 多いし。

2008-02-24

C#がいいよ

Cはお勧めしない。なぜかと言うと、Cは言語使用があまりにいい加減だから。特に型関係がひどいのだが、型の概念をきちんとつかめないと、問題をプログラムに落とすのが下手になるので、俺はCはお勧めしない。

C#Javaがいいよ。どちらもC言語に似ているといわれるが、とっつきやすいように字面を似せているだけで、どちらもCとはまったく違う言語になっている。Cの悪いところはばっさり切り落としているので、その分勉強やすい。これはC++を薦めない理由でもある。C++はCと互換性を維持しているので、ぐちゃぐちゃになってしまった。CとC++は本当にそれじゃないとダメな局面にきたときに勉強すればいい。

C#Javaも入門コンテンツネットに転がっているので、好きな奴を読めばいい。

C#Javaを薦める別の理由は、そのライブラリが極端に充実していることがある。Cでプログラムを書いていると、たまに、何で俺がこんなことをやらないといけないんだ?世の中で何万人が同じことを回転だよ?、と思うようなことがある。言葉を変えると、非常に基本的な機能が無かったりする。C#Javaは、基本的な機能の膨大なライブラリを含むのでそれを利用できる。

C#Javaも良質の統合開発環境がある。C#にはVisual Stuido .Net Express for C#が、JavaにはEclipse無料で提供されている。Javaには.net版もあるが、もうサポート停止だし互換性もよくないのでお勧めしない。

C#Javaも型に厳しい。世の中には型に寛容な言語というものもあって、そういう言語が活躍する局面もあるが最初にきちんとした型を覚えておくというのは、スポーツや他の勉強と同じく他の言語と同じ。

Visual Studio express for C#には膨大な日本語オンラインヘルプが付いてくる。これは心強い。言語の基本からライブラリまでカバーしているので、旅先に本を持っていかなくてもPCがあればプログラミングには事足りる。

http://anond.hatelabo.jp/20080224122041

2007-11-02

Visual C# Express Editionのダウンロード時の質問項目がひどすぎる

バカすぎる。俺は学生なんだが、

こんな質問に答えられるわけがないだろ。「お客様の主な役割について最も適したものをお聞かせください。」という質問に「学生」って答え作ってるんだから、学生にしたら上の質問を無効にしろよ。「システムを導入するにあたっての、あなたの立場を教えてください。」は確実に答えが選択肢にないんですが。学生は不可なのかと思って対象ユーザーをしらべたけど、ちゃんと学生も対象に入っている。

Visual C# 2005 Express Edition は、学生や、プロフェッショナルではない開発者を対象ユーザーと想定して作成されています。Visual C# 2005 Express Edition には、Visual Studio 2005 Professional Edition と同じ機能が多数用意されていますが、アプリケーション開発を簡単に始めることができるようにシンプル化されてもいます。

http://www.microsoft.com/japan/msdn/vstudio/express/faq/default.aspx#vcsharp学生向けを意識してるなら、質問もそれ向けに作ってくれよ。あれか製品自体は学生向けだけど、無料ダウンロード学生禁止なのか?もうどうでもいいや。

あ、あと

どのプログラミング言語の話題に興味がありますか。
HTMLXMLが入ってるのもアレHTMLプログラミング言語って言うのは意外とマイクロソフトが広めてるのかもしれない。

2007-07-11

gtkmmのチュートリアルを訳してみた(半分ほど)

http://book.geocities.jp/gtkmm_ja/docs/tutorial/html/index.html

Gtk+C++バインディングチュートリアルを訳してみた。まだ、全部じゃないけど。

まあ、最初だけあれば、あとは本家の英語にあたれば十分だしね。残りはまた今度やります。

無料Visual Studio 2005 EEでgtkmmを使うところは結構、役に立つ人多いんじゃないかな。まあ、Winで使うとわりかしもっさりしてるんだけどね。

そいじゃ。

2007-03-04

http://anond.hatelabo.jp/20070304154248

なにをいってやがるんだか。まあお説はもっともなんだけど。比べるもんじゃないでしょ。両方覚えて、適所で使え。

(書いてるうちに他人とかぶった…)

特集 私がJavaからC#に乗り換えたくない10の理由

ログイン ユーザー登録
ようこそ ゲスト さん