1read 100read
2012年6月プログラム409: "Code of the Nerds" Digital Mars C/C++ (344)
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▼
こんなプログラミング言語は嫌だ! (578)
文字コードの種類は何故複数あるのでしょうか? (339)
相田みつを with プログラム (330)
ふらっとVisual C#,C♯,C#(初心者用) Part95 (210)
MSX-BASICの奥義を伝授するスレ (762)
"Code of the Nerds" Digital Mars C/C++ (344)
"Code of the Nerds" Digital Mars C/C++
1 :03/02/03 〜 最終レス :12/02/20 高速かつ強力な最適化を誇るC/C++コンパイラ DMC Win32からDOS, WanderWitch用アプリまで作れる DMC でも日本ではWanderWitch関連以外の情報がほとんどない DMC そんなDMCについて語り合いましょう。 WanderWitch関係の話題も大歓迎です。 公式HP: http://www.digitalmars.com/ 関連スレ: D言語ドラフト一応読んだよ http://pc2.2ch.net/test/read.cgi/tech/1003674814/l50
2 : ∧_∧ ( ´∀`)< ぬるぽ
3 : >>2 ガッ
4 : 出勤前に上げときます。
5 : これってテスト版のみがフリーって事で合ってる?
6 : >>5 間違ってます。その言い方だと、正式版や製品版があるみたいだけど DMCは正式版がフリーです。
7 : >>6 あら、そうなんだ。 たまたま今公開されてるのがテストバージョンって事なんですな。thx!
8 : 次のバージョンのテスト版 『も』 公開されているだけで、テスト版だけが 公開されているわけじゃないですよ。 つか、以前は次バージョンのbeta版なんて公開されていなかった。
9 : 一応有料のCD版もあるけど これはフリーで配布されてるコンパイラに加えて IDEやMFC、ライブラリのソースが含まれてるもので コンパイラ自体はどちらも同じ。 以前注文したら段ボールに包まれた火星柄のCDが 手書きの宛名で送られてきた。
10 : SHELL32.DLL みたいな WINAPI (stdcall) 呼び出しのDLL に対するインポートライ ブラリはどうやって作るの? ふつーに implib で作ったら @n の部分が落ちたインポートライブラリが作られて、 リンクできなかった。
11 : >>10 普通にimplibで出来るような気がするが…。 defファイルでエクスポート名を付け間違えてない?
12 : #include <iostream> using namespace std; 以上が受け付けなかったのですが、仕様が古いコンパイラですか?
13 : >>12 STLport を入れると使えるようになります。
14 : >13 ソースをコンパイルしなさいってこと?・・・。(;;)
15 : DMCは元々入ってないぽい
16 : >>12 digitalmars.com にDMC用のSTLport 4.5.3 が置いてあります。 コンパイル済みのライブラリも入ってます。 使い方は dm\stlport\readme.txt 参照のこと。
17 : C/C++を一から勉強しようとしているので、分割コンパイルとかmakefileとか さっぱりわかりません。 ですからSTLportのバイナリを作れません (;;)
18 : お久しぶりです。裕美子です。Cの老師を目指しています。 今、インフルエンザで出校停止です。
19 : あれ、名前の隣の記号の並びがおかしい。いつものとちがう。
20 : >>12 あの〜、自分でバイナリを作らなくても使えるんですけど…。 簡単にインスト方法を説明すると、 1. ttp://www.digitalmars.com/download/freecompiler.html から DMC 8.32 本体 (dm832c.zip) と Basic Utilities (bup.zip)、 STLport 4.5.3 (stlport.zip) をダウンロード。 2. 解凍して、中身を同じディレクトリに入れる。(例えばC:\dm) 3. C:\dm\bin をPATHに追加 4. C:\dm\bin\sc.ini 内の INCLUDE 部分を↓のように書き換える。 INCLUDE="%@P%\..\stlport\stlport";"%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE% (先頭に「"%@P%\..\stlport\stlport";」を追加して「"%@P%\..\stl";」を削除) あとは C> dmc hoge.cpp とすれば(エラーが無ければ)hoge.exe ができます。 オマケ:Platform SDKの最新版やBoostを使う方法 ttp://cmeerw.org/prog/dm/
21 : >20 ありがとうございました。sc.iniの書き方がわからないので そのままコピーしてコンパイルしてみました。しっかり成功しました。 しかし。。。。 フリーのBCCコンパイラと比べると、生成された実行ファイルのサイズが 3倍ほどデカいのです。-oのオプションもつけましたが・・・。 こんなものですかね。
22 : STLPortのせいじゃない?
23 : 確かにSTLportを使うと "Hello,World" 表示させるだけでも 300KBを超えますね。 CやSTLportを使わないC++だと、かなりサイズが小さくなるんですが…。 ところで Digital Mars ってどういう団体(?)なんでしょうか? Walter Brightが個人でやってるのかな?
24 : Zortech age
25 : >>23 同人っぽいんじゃないかと勝手に予想。 で、DMC
26 : を買った>>9 さん、どんな方法でオーダーした? (途中で切れてもうたw)
27 : >>26 私はPaypalを使って注文しました。 申し込んでから2週間くらいでCDが到着したと思います。 ちなみにCDの中身はインストーラなどはなく、 \dm以下に全てのファイルがディレクトリ構造ごと入っていて まるごとHDDにコピーして使うようになってました。
28 : >>27 サンクス。 漏れもDMCのCD( ゚д゚)ホスィんだけど、Credit Card 持ってないもんで・・・。 とりあえず彼らに連絡してみる。
29 : こんな物まで売ってたのね… ttp://www.cafepress.com/digitalmars
30 : >>29 微妙にカコ(・∀・)イイw
31 : コンパイルオプションが分からん・・・。 と思って調べたら、ドキュメントはあるね。 ftp.digitalmars.com/Digital_Mars_C++/Doc/*.zip なんか古いけど・・・とりあえずここのまま使えるみたい。 Webサイトの方にはなんも書いてないのは何故?
32 : >>31 ttp://digitalmars.com/ctg/ctg.html こっちもまとめてDLできるようにしてホスィ・・・
33 : 16bitではSTLportが使えんのか…。 ちょっと残念。
34 : DMC++ 8.33.7 beta release age > Some minor fixes - internal errors, fp code generation, and a fix for FC++. ttp://www.digitalmars.com/drn-bin/wwwnews?c%2B%2B.beta/50
35 : ここのD言語に興味がある
36 : >>35 是非D言語スレを盛り上げてくれ。いやマジで。 http://pc2.2ch.net/test/read.cgi/tech/1003674814/
37 : Digital Mars C/C++ 8.33 release age 今回の変更点は細かなバグフィックスが中心。 しかし盛り上がらんなぁ。 やっぱり人気無いのかな…。
38 : coff2omfは重宝している
39 : >>38 coff2omf って既に Shareware 扱い・・・。゜д゜)鬱死・・・ まぁ、前あったやつでも十分使えるし、CD 買えば付いてくるだろうし。
40 : >>37 わしは DOS 用のバイナリ作るのに使ってるぞ。 しかし、Watcom と違って、この扱いの小ささは謎だな。 元 Symantic(Zortech) C/C++ であってるよな!
41 : obj2asmもShareware化か… ftpからダウンロードしていたので気づかなかった >>40 まあWatcomはオープンソース化ということもあるし
42 : なるほど、ftpからたどっていくと・・・。 まあ、俺はCD買ったから関係ないけど。
43 : 次のバージョンには STLSoft がバンドルされるそうだがどうよ? ていうか、STLSoft って何ですか? 日本語の情報が見つからない…。
44 : STLportの間違いじゃネーノ? と思ったけど違っターーー! ttp://synesis.com.au/stlsoft/ よくnewsgroupなんてチェキしてるね。>>43
45 : チョキってなに?
46 : じゃんけんの手のひとつだ。 パーには勝ってグーには負ける。 というか板違いだゾ(w
47 : nerdだからいーんじゃね?
48 :
49 : ∧_∧ ( ^^ )< ぬるぽ(^^)
50 :
51 : age
52 : hage
53 : obj2asmが無いってエラー出て使えネエ
54 : DMC++ 8.34.7 beta リリース age 8.33 からの主な変更点は: ・template, enum, 〜?〜:〜 の修正 ・大きなスタック・フレームに対する問題の修正 ・インライン・アセンブラの movq2dq のオペランド(?)が逆になっていたのを修正 ・swprintf/vswprintfの引数をC99の仕様に合わせて変更 ・インライン・アセンブラにfeni, fneni, fdisi, fndisiを追加 ・-A オプション(ANSI C/C++互換)使用時のstdlib.h, string.hの問題点を修正
55 : >>53 obj2asmは有料になっちゃったから、フリー版では事実上 -cod が使えないね… *.objからリストファイルを作るだけなら OpenWatcom の wdis.exe で出来るよ。
56 : ∧_∧ ピュ.ー ( ^^ ) <これからも僕を応援して下さいね(^^)。 =〔~∪ ̄ ̄〕 = ◎――◎ 山崎渉
57 : Walterタン、beta版のうp間隔短すぎ・・・
58 : ー┼── | ー─── | 、 | ー─- / | 、 / | _ |/ ̄ ー── | | | / | | / |/ \ / ー── | | | \ | | /^ヽ | ├ ー-、| | ̄ ̄| ヽ' レ  ̄ ̄ \ ヽ' / \丿 _/ O- ノ \__  ̄ ̄ ー┼── | | | ─|─ | | | | ー─ | │ |/ ̄ | \_ | | (___ _,,. -─‐- .,,_ _,,. -─‐- .,,_ |_____ ___l ┌───┐│___ │ ┌─┘ └─┐└─┐ │ │ │ └─┐ ┌─┘ l二二. │ │ │ ! ,! ┌─┘ │┌──┘ │ └─' . └───┘└────┘ ___|  ̄ |_○,○ | ̄ ̄ll ̄ ̄| |__ __|┌──┐| l.l | ,'⌒',│ │,'⌒', l_______l.l l | !_,. ィ ! l│ │! l l ,' | ,! ゝ_ノ│ │ゝ_ノ |__/. !、_,,. ‐' .  ̄
59 : 8.34
60 : DMCでWindowsプログラムのC言語ソースファイルをコンパイルするとエラーになるけど、 何かオプションの指定が必要なのかな。
61 : >>60 どんなエラーが出たのか書かないと、答えようがないぞ。 普通は > dmc hoge.c でコンパイル出来るが、実行するときにコンソールが開く。 (コンソールアプリではない)Windowsプログラムを作るときは > dmc -WA -L/SU:WIN hoge.c
62 : ここのC/C++コンパイラって 何らかの形でDbCつかえるの? int func(int a) { __in { } __out(int result) { } __body { } } こんなん。
63 : >>62 http://www.digitalmars.com/ctg/designbycontract.html int func(int a) __in { } __out(result) { } __body { }
64 : DMC++ 8.35.4 beta リリース age 今回はBug Fixのみ
65 : 最近導入してみたのですが関連リンクとかありませんか?
66 : >>65 ・Digital Mars Home Page(コンパイラ、オンラインマニュアル等) ttp://www.digitalmars.com/ ・Christof Meerwald's Some Digital Mars C++ Information (最新のPlatform SDKを使う方法等) ttp://cmeerw.org/prog/dm/ ・WonderWitch サポートWebサイト(日本ではこれ用途がほとんど?) ttp://wonderwitch.qute.co.jp/ ・無料で揃えるプログラミング環境(「第4章. C++」にDMCの解説あり) ttp://www7.plala.or.jp/hop-step-jump/prog00.html Digital MarsのHPからDLできるソフトの本家 ・Hans Boehm's GC web site ttp://www.hpl.hp.com/personal/Hans_Boehm/gc/ ・X-32 DOS Extender ttp://www.dotender.com/ ・STLport ttp://www.stlport.org/ ・STLSoft ttp://synesis.com.au/stlsoft/ ・Unofficial Digital Mars Compiler Site (非公式サイト?) ttp://pysmatic.com/digitalmars/
67 : http://life.fam.cx/a005/
68 : http://homepage.mac.com/miku24/
69 : >>66 thx あんまり日本は情報が出てないのかな。
70 : >>69 せっかくだから君がなんか日本語情報ページ書いてけれ。
71 : >>70 面白そうですね。 でも必要な情報ってなんでしょう。
72 : __∧_∧_ |( ^^ )| <寝るぽ(^^) |\⌒⌒⌒\ \ |⌒⌒⌒~| 山崎渉 ~ ̄ ̄ ̄ ̄
73 : beta 8.35.5
74 : http://homepage.mac.com/hiroyuki44/
75 : メモ帳作ってみたいんだが公式のどこを読めばいいの?
76 : (^^)
77 : (⌒V⌒) │ ^ ^ │<これからも僕を応援して下さいね(^^)。 ⊂| |つ (_)(_) 山崎パン
78 : うはぁ寂れてる(ノД`)・゚・。 Win32GUIなプログラムをコンパイルしてみたらGetStockObjectがリンク できないエラーが出た。 PlatformSDKの最新版もってきて入れないとダメなのかな?
79 : >>78 # CD版+PSDK入れてるから確認はしてないけど… Win32APIを使うときはライブラリを明示的に指示する必要があるようです。 dm\GDI32.lib にGetStocckObjectが入っているので dmc -WA -L/subsystem:windows hoge.c gdi32.lib の様にすれば、うまくいくと思います。
80 : >>79 こんな時間にレスありがとうございます。 -l gdi32.dllってしてたのが悪かったってかドキュメントちゃんと読もう…。
81 : DMCでDLLってどうやって作ればいいんだろう。 dmc -WD -L/SU:WIN hoge.cpp hoge.def とかやってもエラー出てexe作られてるし…。
82 : >>81 exeファイルができるってことは hoge.def の内容が間違っているのでは? とりあえず、「猫でもわかるプログラミング」のサンプルをコンパイルしてみると ttp://www.kumei.ne.jp/c_lang/sdk2/sdk_119.htm 1. DLLとインポートライブラリを作成 C:\hoge>dmc -WD -L/implib dll01.cpp kernel32.lib gdi32.lib * DLLを作るときは user32.lib、kernel32.lib も含めて必要なライブラリを明示する。 * OPTLINKの/IMPLIBオプションまたはimplib.exeでインポートライブラリを作成する。 2. 実行ファイルの作成 C:\hoge>dmc -WA -L/su:win test01.cpp gdi32.lib dll01.lib * -WA -L/SU[BSYSTEM]:WIN[DOWS] でWin32 ウィンドウアプリケーションを作成。 * GDI関係の関数を使っているので gdi32.lib をリンクする。 * 1.で作ったインポートライブラリをリンクする。 * user32.lib、kernel32.lib は自動的にリンクされる。 .def ファイルの書式は上の例で自動的に作成される dll01.def や オンラインマニュアルを参考にして下さい。 ttp://www.digitalmars.com/ctg/ctgDefFiles.html
83 : DirectXは?OpenGLは?
84 : >>82 ありがとうございました。 ご指摘の通りdefの書式が間違ってました。
85 : >>83 DirectX ttp://www.digitalmars.com/faq.html#directx OpenGL ftp://ftp.microsoft.com/Softlib/MSLFILES/OpenGL95.exe ただし、どちらもcoff2omf.exeが必要。
86 : >>83 DirectX7だけど ttp://fancyrara.ddo.jp/program/DMC/DMC.html
87 : coff2omfはDMのサイトだとshareware扱いになってるがBCCについて なかったっけ? DMのFTPのぞいたらあったけどさ。
88 : COFF形式が扱えるOpenWatcomのwlinkを使って MSのライブラリと直接リンクさせる方法もある。 ttp://cmeerw.org/prog/owtools/
89 : 今更だけど Version 8.35 age コンパイラ(scppn)のバージョンは 8.35.10n 今回はコンパイラドライバもVer Upして 8.35n になってる。
90 : 8.36 リリース age 主にBoostと 8.35での問題点を修正 あとwxWindows関係でnewsgroupから > C:\wx\wxWindows\samples\minimal>scppn > Digital Mars C/C++ Compiler Version 8.36.1n > Copyright (C) Digital Mars 2000-2003. All Rights Reserved > > This version compiles wxWindows library and minimal sample from CVS > (head and 2.4 branch) with no bugs
91 : 阿呆らしい質問かも知れませんが教えて下さい。 STLを使ったWin32Appを作ろうと思って #include <windows.h> #include <string> としたのですがコンパイルできません。 同一のソースをBCCでコンパイルしてみると通るのですが何か間違ってる部分 がありますでしょうか? 8.36にSTLPortを使うようにしてあります。
92 : >>91 どこで、どのようなエラーが出てコンパイルできないのか 具体的に書いてもらわないと答えようがないのですが・・・。
93 : は、そうでした申し訳ありません。 例えば #include <windows.h> #include <iostream> int main(void){ std::cout << "test" << std::endl; return 0; } をコンパイルしようとすると _STLP_IMPORT_DECLSPEC long _STLP_STDCALL InterlockedIncrement(long*); ^ d:\dm\bin\..\stlport\stlport\stl/_threads.h(122) : Error: 'InterlockedIncrement' previously declared as something else It was declared as: long __import (__import std func)(long volatile *) It is now declared: long __import (__import std func)(long *) _STLP_IMPORT_DECLSPEC long _STLP_STDCALL InterlockedDecrement(long*); ^ d:\dm\bin\..\stlport\stlport\stl/_threads.h(123) : Error: 'InterlockedDecrement' previously declared as something else It was declared as: long __import (__import std func)(long volatile *) It is now declared: long __import (__import std func)(long *) _STLP_IMPORT_DECLSPEC long _STLP_STDCALL InterlockedExchange(long*, long); ^ d:\dm\bin\..\stlport\stlport\stl/_threads.h(124) : Error: 'InterlockedExchange' previously declared as something else It was declared as: long __import (__import std func)(long volatile *,long ) It is now declared: long __import (__import std func)(long *,long ) --- errorlevel 1 となります。
94 : >>93 DMCでSTLportを使うときは C> dmc -IC:\dm\stlport\stlport test.cpp のように-I オプションでSTLportをインストールしたディレクトリを指定するか、 sc.ini の「INCLUDE=」にSTLportをインストールしたディレクトリを "%@P%..\include", "%@P%\..\stl"よりも前に 追加してください。 (この場合 -IC:\dm\stlport\stlport は不要) また、標準でついてくるSGIのSTLを使わないのであれば "%@P%\..\stl" の部分は削除してもかまわないでしょう。 INCLUDE="%@P%\..\include";"%@P%\..\mfc\include";"%@P%\..\stl";%INCLUDE% ↓ INCLUDE="%@P%\..\stlport\stlport";"%@P%\..\include";"%@P%\..\mfc\include";%INCLUDE%
95 : >>94 sc.iniのINCLUDEはこうなっているのですが…。 INCLUDE="%@P%\..\stlport\stlport";"%@P%\..\include";"c:\Program Files\Microsoft SDK\include";%INCLUDE%
96 : >>95 Platform SDKを使っているのなら stlport\stlport\stl_user_config.hの184行目辺りにある // #define STL_NEW_PLATFORM_SDK 1 の前にあるコメントを外して STL_NEW_PLATFORM_SDK の定義を有効にしてみて下さい。
97 : >>96 あああ、いけました(ノД`)・゚・。 ありがとうございました。
98 : wxWindowsを使ってみようとインストールしたら ..\..\lib\wx_sc.lib(dataobj) Error 42: Symbol Undefined _IID_IDataObject とか言われてコンパイルできない…。 8.37.3 beta入れたらwxライブラリのコンパイル中にエラーが出るようになっちゃったし……。 wxVariant variant( wxString( (wxChar*) (data->GetValue().Nth(idx)->Data()) )); ^ ..\..\src\common\variant.cpp(1866) : エラー: ')' でなければならない ってどういうことなの? (つД`)
99 : DMCでWin32アプリを作っていたのですが、ダイアログボックスの色が 真っ白になってしまうのはなんとかならないのでしょうか? 試しにBCCでやってみたらきちんとダイアログの色になってたので、DMC 特有だと思うのですが…。 環境はbeta8.37+PlatformSDKです。
100read 1read 1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼 ▲
【ヤパーリ】XMLをS式に置換えていくスレ【LISP最強】 (240)
【License】ライセンス総合【利用許諾】 (415)
こんなプログラミング言語は嫌だ! (578)
自動巡回ソフトを作りたい。 (376)
初心者向け新言語 Small Basic スレ (241)
理系しねよ (201)
--log9.info------------------
RB・SOUL板の名無しを決めるスレ (718)
★ James Brown 死亡 ★ (937)
【美メロ】 Keith Sweat 【粘着vo】 (284)
お気にの批評サイトは? (214)
【ICONIQ】アイコニック (208)
ソウルのライブ名盤を熱く語るスレッド (221)
【ジョン】JOHN LEGEND【伝説】 (365)
【Ready】Trey Songz【Songbook】 (227)
m−floどう? (317)
ピーター・バラカン (327)
【筋肉】田中ロウマ【澄んだ声】 (221)
うまいぐあいにR&BとRapがMixされた曲を語るスレ (210)
アン・ヴォーグ (320)
UK SOULを語ってもいいんジャマイカ? (212)
何でRBって打ち込み(機械演奏?)なんだろうね。 (261)
インコグニート Incognito (676)
--log55.com------------------
ゴスヲタヲチスレ
【浪人界隈】浪人生あれこれ
痛い音ゲーマーのTwitterをヲチするスレ36
硝子=ゆうと周辺をヲチするスレ Part2
鮒 愚痴スレ32
【牛丼一発屋】えみりお2【医者の胃袋掴みます】
翠川しんスレ
岩男同人Twitterヲチ愚痴 3