のくす牧場
コンテンツ
牧場内検索
カウンタ
総計:127,682,977人
昨日:no data人
今日:
最近の注目
人気の最安値情報

元スレCygwin + MinGW + GCC 相談室 Part 6

gcc覧 / PC版 /
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。
←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitter

451 = :

で、もしそうならMinGWで必要なDLLはどうやって入手してもらうのがいいのかと。
(素人さんに)

452 = :

>>450
その類の記述は少しだけみつけたんだけど、staticリンクでまったく全部
リンクされた状態でOKてことでいいの?
.dllを使うための.aだけがセーフってことではなく。

455 = :

んー、MinGW/g++で-sharedで確認すると、
 LIBSTDC++-6.DLL
 LIBGCC_S_DW2-1.DLL
の2つに依存してるようなんだけど、どう配布するのがいいのか教えてくれw
(GPLにしたくない、利用者は素人さん)

457 = :

何故VC++の話をここに持ってくるんだ

458 = :

*_a.libは、staticライブラリ。
tinyxmlの方が小さくて使いやすいかもしれない。

459 = :

Windowsで使うのは骨だと思うけどなあ。
何かをするたびにエンコーディングの変換をするより、読むとき一度だけ
変換した方が効率がいいし、手間も少ないし。
BAD_CASTってあったと思ったけど、ほんとにBAD CASTだからね。
使えると思わないほうがいい。
つかたらいいなって思うのはよくわかるんだけど。

460 = :

>>456
libxml2.libはlibxml2.dllのインポートライブラリ
実行時にlibxml2.dllが必要になる

libxml2_a.libはstaticライブラリ
実行時にlibxml2.dllは不要

libxml2_a_dll.libもstaticライブラリ
実行時にlibxml2.dllは不要
libxml2_a.libとの違いはxmlDllMain(ビルド環境の際を吸収するための薄い皮)というものが含まれている
dllを作成するときにはこちらを使うのが望ましい

大したことやらないならrapidxmlがオススメ

461 = :

>>457
すみません。vc++依存の話だとすら知りませんでした。

>>459
他に使えるライブラリを探すことに疲れてしまいました。

>>458 >>460
rapidxmlは確かに使いやすかったです。tinyxmlは記憶があるので調べたか試したと思います。
どうしても、属性の値をxpathで取得する必要があって、最初に使えるようになったのがlibxmlでした。
現在は、dllを使って動いているのですが、静的リンクにしたくて調べていました。

こちらについても方法をご存知であれば教えていただきたいです。
調査に疲れてlibxmlをつかうことにしたときと同じように挫折しそうです。

462 = :

>>461
xpathかぁ
それならpugixmlがオススメ

463 = :

>dllを作成するときにはこちらを使うのが望ましい
ありがとうございます。
こちらも静的リンクだったとは…。
差分をとってみるとかなり似ていたので、最適化が面倒だったのかな?
と見当違いな妄想をしていました。
逆に、「_a.lib」が必要になる場合ってどのような場合なのでしょう?

>>462
「pugixml」しらべてみます。

なるべく、実行ファイルのみでアプリの形にしたいので、静的リンクを使いたいのですが、
「_a」付きの「iconv_a.lib」「libxml2_a.lib」を使うにはどうすればいいのでしょうか?
リンクするライブラリを「libxml2_a.lib」→「libxml2_a.lib」と変えてみて動かなかったのは、>>456に書いたとおりです。
と書き込もうと思って、もう一度ビルドして出力を眺めていると、
「MSVCRT.lib」と「LIBCMTD.lib」とが競合している、とのこと。D…?→ぐぐる。
リリースとデバッグが混じってる?いいのか?→Releaseビルド→正常終了
(  Д ) ゚ ゚ 
「pugixml」の後に調べてみます。

466 = :

だけだったね

467 = :

いつまでVC++限定の話続けてるんだよ

468 = :

↑の話ってVC++の話なの?

Eclipseでc++書いてるのだけど、boostを落としてきてビルドして使う際に、
~.a
~.dll.a
ってのを
~.lib
~.dll.lib
にしないとならないのって何で?
気にしたこともなかった。

470 = :

VC++でも
#pragma comment(lib, "~.a")とかつけとけば実行は出来るんじゃあねーかな

ていうか質問者の人は\win32フォルダ配下のMakefile.msvcを使ったのだろうか?使ってないに100ペリカ

471 = :

あー、わかった。msvc用のライブラリのバイナリじゃなくて、他のコンパイラでビルドしたバイナリを使ってんだな
そりゃー動かねーわ

472 = :

ハズレ

473 = :

てかよく見たらもう質問終わってたのね

475 = :

馬鹿には無理

476 = :

>>455
答えがあるとは限らないけど、

Licensing Terms | MinGW
http://www.mingw.org/license

MinGW-users - Conflicting libstdc++-6.dll requirements, and licensing
http://mingw-users.1079350.n2.nabble.com/Conflicting-libstdc-6-dll-requirements-and-licensing-td6160814.html

477 = :

>>475
そんな、自己紹介しなくとも。

478 = :

>>455
libstdc++とlibgccにはGCCのランタイムライブラリに関する例外規定が適用される。
http://www.gnu.org/licenses/gcc-exception.html
http://www.gnu.org/licenses/gcc-exception-3.1-faq.html

でも英語だからよくわかんね。

479 = :

英語でもよくわからないよ。
一応、ヘッダーのリンクオーケー、商用オーケーって書いてはあるんだけど、
何がオーケーなんだかいまいち説明がはっきりしない。
これ書いた本人もまだ決めてないんじゃないの?
細かい部分は、訴訟起こす時に決めますみたいな。

480 = :

dllwrap について教えてください。

windows7 64bit環境で使用したいのですが、ヘルプを見ると
--target に指定できるのは、i386-cygwin or i386-mingw32
しかないようなのですが、64bitの場合でも i386-mingw32
とすれば問題ないのでしょうか?
 それとも 64bit用の dllwrapがどこかにあるのでしょうか?

OS : windows7 64bit
MinGW :mingw-w64-bin_x86_64-mingw_20101002_4.5_sezero.zip
MSYS :MSYS-1.0.11.exe

481 = :

>>480
http://projectzero-swb.blogspot.com/2009/08/windows-7-x64mingw-x64.html

483 = :

>何がオーケー
コードの配布以外何がある?

484 = :

>>483
うん

485 = :

MinGW32でextern "C"で定義してある構造体を返す関数が
gendefでdefを作ると@4と関数のあとについていて(他の関数には付いていない)
それからlibを作るとその関数だけVC++からリンクできないのですが
なにかありますか

488 = :

gcc -shared -o test.dll test.cpp
gcc -o usegcc.exe use.cpp -L. -ltest
gendef test.dll
lib /def:test.def /machine:x86 /out:test.lib
cl /Fe"usevc.exe" use.cpp test.lib
usegcc.exe
usevc.exe

うちの環境では問題ないなぁ

490 = :

>>489
gcc -shared -o test.dll test.cpp -Wl,--output-def,test1.def
gcc -o usegcc.exe use.cpp -L. -ltest
lib /def:test.def /machine:x86 /out:test.lib
cl /Fe"usevc.exe" use.cpp test.lib

gcc -shared -o test.dll test.cpp
gcc -o usegcc.exe use.cpp -L. -ltest
impdef test.def test.dll
lib /def:test.def /machine:x86 /out:test.lib
cl /Fe"usevc.exe" use.cpp test.lib
ならいけるのでgendefの問題かもね

491 = :

かもね

492 = :

だね

495 = :

うん

496 = :

497 = :

ふう

498 = :

うんこしたいんですけど。便所どこですか

500 = :

DOSモード?


←前へ 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 次へ→ / 要望・削除依頼は掲示板へ / 管理情報はtwitterで / gcc一覧へ
スレッド評価: スレッド評価について
みんなの評価 :
タグ : 追加: タグについて ※前スレ・次スレは、スレ番号だけ登録。駄スレにはタグつけず、スレ評価を。荒らしタグにはタグで対抗せず、タグ減点を。

類似してるかもしれないスレッド


トップメニューへ / →のくす牧場書庫について