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

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

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

    301 = :

    たぶんこのスレにそんなマニアックなケース答えられる人はいないんじゃないかと。

    303 = :

    go32.exeが組込まれるんだっけ

    306 = :

    >>298
    そんな過去の鈍足PCを今のPCと較べても、全く意味がありません。
    それとも、クロック周波数の20MHzという意味が理解できませんか?
    いずれにしても、鼬害です。レトロPC板にでもお帰りください。

    307 = :

    298 みたいな時空を超えた書き込みを
    太鼓腹のオッサンがシコシコ打ちこんでると思うとキモイな

    308 = :

    同族嫌悪というやつですか?

    310 = :

    あんまり虐めてやるなよ

    311 = :

    古いものを好き好んで触るのは人の自由だと思うが
    騒ぎ方がどうにもキチガイじみてキモいな

    312 = :

    その3つを比べることに何の意味があるんだか…
    #とりあえず「DJGPPってまだあったんだ」とか思った

    313 = :

    レトロPCを使ってる時点で処理効率など問題外なのだから
    32bitコードなど中途半端にひよったものを使わずに
    堂々と16bit縛りでいくべき

    315 = :

    >>300 7000円あるなら中古でWindows98の入ったPC買えるだろww

    316 = :

    そうかなあ

    317 = :

    >>315
    その後、BCC v3.1J+TASMとか、NASM 2.06rc1で楽しくプログラミングしてます。

    先日、皆さんのご指摘通り、32Bit Cコンパイラと16Bit時代のコンパイラを
    比較する浅学さを自己批判しました。GCCはWinXPのPC/ATマシンで活躍してます。
    自分は普通にCygwinのバイナリパッケージを使ってます。

    あと、Borland C++ Development Suite 5.0Jというのを、CDだけ入手しました。
    オクで\2,000でした。印刷物のマニュアルがないのがイタいですが、
    Win95/NT3.51/DOS/OS/2対応の総括的位置付けのバージョンっぽいので、
    おいおい試したいです…って、GCCと関係なさ過ぎたwすいませんww

    318 = :

    すいません 質問下手かもしれないけどよろしいでしょうか?
    Cygwinのインストール時、boostも一緒にインストールすることができますよね?
    私の場合はver(?)1_33_1なので/usr/include/boost-1_33_1/boost に主なファイルが展開されました。

    次はcppファイルのコンパイルなんですが

    #include <boost/thread.hpp>

    ↑を含んだa.cppファイルをコンパイルする場合、
    $ g++ a.cpp -I"/usr/include/boost-1_33_1/" -lboost_thread-gcc-mt

    といったコマンドで通りました。んで、
    $ ./a.exe

    で一応exeファイルは実行できるんですが、生成したexeファイルはコマンドによる実行は有効のようで、
    winからのダブルクリック起動だと
    「cygboost_thread_gcc_mt-1_33_1.dllが見つかりません」といったメッセージがでます。。。
    どうすれば改善できるでしょうか?多分boostの参照あたりも間違っていると思うんですが・・・
    あんまりUNIXコマンドは詳しくないのでちんぷんかんぷんですw

    319 = :

    >>318
    $ cygcheck ./a.exe を実行してcygboost_thread_gcc_mt-1_33_1.dllの存在するディレクトリを調べて、
    Windowsの環境変数PATHに追加する。

    320 = :

    >>319
    実行してみたけど無理でした・・・
    そもそもboostを導入する方法はこれでよかったのでしょうか・・・

    321 = :

    正確に書いてくれ。「実行してみたけど無理でした・・・」はどうなったのかわからん。
    1)cygcheckが実行できなかった。
    1-1)cygcheckが見つからなかった
    1-2)cygcheckが見つかったが、cygcheckの実行時にエラーが出た。
    1-3)cygcheckが見つかり、cygcheckの実効でもエラーが出なかったが、cygboost_thread_gcc_mt-1_33_1.dllが見あたらなかった。
    2)cygcheckが見つかり、cygboost_thread_gcc_mt-1_33_1.dllが存在するディレクトリも判明したが、Windowsの環境変数PATHの設定で
    2-1) Windowsの環境変数PATHを設定する方法がわからない
    2-2) Windowsの環境変数PATHを設定する場所はわかったが、PATHの書式を知らない。
    2-3) Windowsの環境変数PATHをユーザ環境変数とシステム環境変数のどちらに設定すればよいかわからない。
    2-4) Windowsの環境変数PATHをユーザ環境変数に追加したが、改善しなかった。
    2-5) Windowsの環境変数PATHをシステムザ環境変数に追加したが、改善しなかった。
    3) 他にもあるかもしれんが、エスパーするのに疲れたのでここまで。

    323 = :

    $ cygcheck -cd | grep boost
    boost                1.33.1-4
    boost-devel          1.33.1-4
    libboost             1.33.1-4

    $ g++ -Wall -Wextra boost_exam.cpp -I"/usr/include/boost-1_33_1/" -lboost_thread-gcc-mt

    $ ls a.exe
    a.exe*

    $ cygcheck ./a.exe
    .\a.exe
      C:\cygwin\bin\cygboost_thread-gcc-mt-1_33_1.dll
        C:\cygwin\bin\cygwin1.dll
          C:\WINDOWS\system32\ADVAPI32.DLL
            C:\WINDOWS\system32\KERNEL32.dll
              C:\WINDOWS\system32\ntdll.dll
            C:\WINDOWS\system32\RPCRT4.dll
              C:\WINDOWS\system32\Secur32.dll

    325 = :

    確認できました

    326 = :

    >>326
    じゃあ、次に、そのコマンドプロントで「ls --version」を実行してみる。
    d:\cygwin\binにパスが通っていれば(= PATHの設定が正しいなら)、
    下のようにlsコマンドのバージョン情報が表示されるはず。

    ls (GNU coreutils) 6.10
    Copyright (C) 2008 Free Software Foundation, Inc.
    License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
    This is free software: you are free to change and redistribute it.
    There is NO WARRANTY, to the extent permitted by law.

    Written by Richard Stallman and David MacKenzie.

    で、この状態でエクスプローラーから、さっきのa.exeを実行してみる。
    もし「cygboost-thread-gcc-mt-1_33_1.dllが見つかりません。……」のエラーが出るようなら、
    「Windowsをログアウト」「再ログイン」する(= explorerにユーザー環境変数を反映させる)
    ちなみに、「システム環境変数PATH」の方を変更したら、Windowsを再起動してから試すこと。

    327 = :

    ええ!?再起動しないと駄目なのかい!?

    328 = :

    Explorerに環境変数を反映させるには、Explorerプロセスの再起動が必要。
    Windowsの環境変数はExplorerの親プロセスに設定される。しかし、それを子プロセスに反映するには、子プロセスを再起動する必要がある。
    (これはWindowsだろうと、UNIXだろうと、MS-DOSだろうと、同じ)。

    もっとも、今回はExplorerだからログアウト→ログオンで、行けそうな気がする。(面倒なので試してない)

    なお、Windowsサービス (ApacheとかPostgreSQLとか)に環境変数の変更を反映させるなら、Windowsサービスの親プロセスの再起動、つまりWindowsの再起動が必要。

    329 = :

    やった!!できました!!
    長い時間ありがとうございました

    330 = :

    おめでとう。これで肩の荷が下りたよ。

    331 = :

    MinGW(gcc3.4.5)でSTLport5.2.1のビルドができない理由がやっとわかりました

    STLport5.2.0でMinGWのサポートは一旦打ち切りになっているようです
    従ってSTLport5.1.7以前を使う必要があります

    それから少しファイルの修正が必要です

    1. Open the file "stlport\stl\config\user_config.h" to uncomment the macro _STLP_NEW_PLATFORM_SDK.
    2. Locate the following lines in file "stlport/stl/config/_gcc.h":

    # if defined (_STLP_NEW_PLATFORM_SDK)
    /* For the moment the Windows SDK coming with Mingw still mimik the old platform SDK. */
    # undef _STLP_NEW_PLATFORM_SDK
    # endif

    then comment all these lines or replace them with:

    # include <w32api.h>

    # if (__W32API_MAJOR_VERSION > 3) || ((__W32API_MAJOR_VERSION = 3) && (__W32API_MINOR_VERSION >= 12))
    # if !defined(_STLP_NEW_PLATFORM_SDK)
    # define _STLP_NEW_PLATFORM_SDK 1
    # endif
    # endif

    以上の修正でコンパイルできます
    std::mapを使うと__tmpが初期化前に使われているとか警告が出ますが
    無視していますけどいいのでしょうか?

    333 = :

    エラーメッセージの日本語化って進んでますか?

    334 = :

    日本語化されたエラーメッセージ見ても、分からないという落ち?

    335 = :

    >>333
    1.7でLANG=ja_JP.UTF-8なら、日本語のメッセージカタログ持ってるやつは、日本語でメッセージを出す模様。
    メインの環境を1.7に切り替えたんだが、localeまわりはまだ微妙だな……。まぁ、壊滅状態の生1.5よりはマシだけど。
    しかし、ちゃんと動くようにする意志はあるんだろうか。

    338 = :

    gccでC言語のプログラムをコンパイルしたら、
    そのライセンスって制限付く?
    標準Cライブラリはgccのものを使うとして。

    339 = :

    GPL/LGPLでは。

    340 = :

    確かgccを改変してMy_Compilerとかいうソフトを作るんならGPLだが、
    産物に関してはGPLが及ばないのではなかったかな?
    libstdc++とかも例外条項付きGPLだから大丈夫とか聞いた気がするけど。
    どなたか有識者plz!

    342 = :

    >>339-341
    なるほど、産物にも影響するのね。
    どんなにヌルくてもLGPLが要求されるなら到底 仕事じゃ使えないわな。。。

    343 = :

    そこらの家電には結構入っているがな。
    どんな仕事だよ。

    344 = :

    >340
    GCC については
    http://www.gnu.org/licenses/gpl-faq.html#CanIUseGPLToolsForNF
    で、libstdc++ については
    http://gcc.gnu.org/onlinedocs/libstdc++/faq.html#faq.license.what_restrictions
    で、コンパイル対象のコードのライセンスに対しては制約なしとなってる。

    345 = :

    >>343
    リバースエンジニアリングされると困る仕事。
    まあどうせされるんだろうが、それにしたってLGPLだと明示的に禁止出来ないじゃない。

    346 = :

    >>344
    おお、決定打ありがとう。
    libstdc++はつまり
    「オープンソースにしてくれるとうれしいけど、
    まあそうじゃなくても良いよ。特に制約は科しません」
    という事だよね。
    ここは理解出来たのだがGCCについては今ひとつだ。
    よろしければ教えていただけませんでしょうか?
    「GCC(や他のGPLでライセンスされたエディタなど)を使って
    開発されたソフトウェアには何ら制約はありません。」
    「しかしBisonは自身のコードの一部をコピーするのでGPL強制です。」
    BisonとやらはGCCの一部なのかい?
    だとするとやっぱりGCCを使うと結果的に産物もGPL強制?

    347 = :

    >>346
    ソースをベースにしたらGPL
    ライブラリ/バイナリを使ったらLGPL
    と覚えておけばいい。

    明示的な禁止に意味があるとは思えないが。

    348 = :

    >>347
    LGPLだとライブラリをstaticリンクした時が致命的じゃね。
    ソースコードまたはオブジェクトコードの配布を拒否してはならない
    だと!?

    349 = :

    >>348
    心配すんな、ダイナミックリンクも対象だ。
    今時何言ってるんだ、おまえは。

    350 = :

    >>349
    え?ダイナミックリンクでもソース開示強制なの?


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

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


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