[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 2chのread.cgiへ]
Update time : 01/06 13:57 / Filesize : 237 KB / Number-of Response : 832
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

Cygwin + MinGW + GCC 相談室 Part 3



1 名前:デフォルトの名無しさん [2007/04/30(月) 23:52:47 ]
Windows上で動作するフリーの開発環境 CygwinとMinGWに関する相談スレッドです。

過去スレ:
cygwin + mingwn + gcc 相談室 Part2
pc11.2ch.net/test/read.cgi/tech/1126103347/
cygwin + mingwn + gcc 相談室
pc8.2ch.net/test/read.cgi/tech/1058134693/

関連サイト:
Cygwin www.cygwin.com/
MinGW www.mingw.org/

関連スレッド:
GCCについて part7
pc11.2ch.net/test/read.cgi/tech/1145357824/
【激遅】AppleGCC【絶望】
pc11.2ch.net/test/read.cgi/tech/1173267844/


331 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 00:48:57 ]
realpathでいいじゃん

332 名前:328 mailto:sage [2007/12/14(金) 01:38:32 ]
>>331
おおおお まさしくこれです
ありがとうございます

333 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 17:12:16 ]
これでx−window動かしたいんですけど
手順教えてください。

334 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 17:18:36 ]
板違いになるから
Windows板のCygwinスレか
pc11.2ch.net/test/read.cgi/win/1175419995/l50
Unix板のCygwinスレでやってくれ
pc11.2ch.net/test/read.cgi/unix/1184677144/l50

335 名前:デフォルトの名無しさん mailto:sage [2007/12/14(金) 17:36:12 ]
すみませんでした

336 名前:デフォルトの名無しさん [2007/12/18(火) 13:44:38 ]
www.mingw.org/MinGWiki/index.php/mingw%20hosted%20cross%20compiler
を参考にしてクロスコンパイラを生成しようとしていますが、問題が2つ出てきました。

環境はbuild-system = host-system = i386-pc-mingw32でtarget-system = arm-unknwon-elf (arm7tdmi)です。

1.本当に成功したのかわからない(Build and installing the c compiler)
サイトにはmkfixinc.shをi?86-*-mingw32*からi?86-*-armにしろと書いてありましたが、
fixincでmakeエラーになったのでarm-*-elf*に変更してやったらmake installまで成功しました。
しかし、インストール先のフォルダを見ると直下のincludeフォルダが空になっています。
fixincはどうやら、includeファイルを生成するもののようなのですが、これは成功なのでしょうか?

以下スクリプトを一部書き換えたところです。
$SRCDIR/configure \
--with-gcc --with-gnu-ld --with-gnu-as --host=mingw32 --target=arm-elf --with-cpu=arm7tdmi
-with-newlib --prefix=$prefix --enable-threads --disable-nls --enable-languages=c,c++
--disable-win32-registry --disable-shared --enable-sjlj-exceptions --enable-libgcj
--disable-java-awt --without-x --disable-libgcj-debug --enable-interpreter
--enable-hash-synchronization --enable-libstdcxx-debug 2>&1 | tee
gcc_configure.log

make all-gcc CFLAGS="-O2 -pipe" CXXFLAGS="-O2 -pipe" LDFLAGS=-s | tee
make-c-only.log 2>&1

成功するがインストール先フォルダ直下のincludeフォルダは空になっている。

2は次をご覧ください。

337 名前:デフォルトの名無しさん [2007/12/18(火) 13:49:41 ]
2.newlibのmakeが失敗する
これも>>336で言ったサイト(Building and installing newlib)を参考にしています。
そのシェルスクリプトをそのまま実行しました。
しかしmakeでエラーになってしまいます。
make[3]: Entering directory
`/home/(UserName)/build/arm-elf/ARM7TDMI/newlib/etc'
/C/msys/1.0/home/(UserName)/newlib-1.15.0/missing
makeinfo --split-size=5000000 --split-size=5000000 --no-split -I/C/msys/1.0/home/(UserName)/newlib-1.15.0/etc
-o standards.info
/C/msys/1.0/home/(UserName)/newlib-1.15.0/etc/standards.texi
WARNING: `makeinfo' is missing on your system. You should only need it if
you modified a `.texi' or `.texinfo' file, or any other file
indirectly affecting the aspect of the manual. The spurious
call might also be the consequence of using a buggy `make' (AIX,
DU, IRIX). You might want to install the `Texinfo' package or
the `GNU make' package. Grab either from any GNU archive site.
make[3]: *** [standards.info] Error 1
make[3]: Leaving directory
`/home/(UserName)/build/arm-elf/ARM7TDMI/newlib/etc'
make[2]: *** [info] Error 1
make[2]: Leaving directory
`/home/(UserName)/build/arm-elf/ARM7TDMI/newlib/etc'
make[1]: *** [all-etc] Error 2
make[1]: Leaving directory `/home/(UserName)/build/arm-elf/ARM7TDMI/newlib'
make: *** [all] Error 2

WARNINGに書かれているようにTexInfoを
sourceforge.net/project/showfiles.php?group_id=2435
からダウンロードしてインストールしても変わりませんでした。どうかよろしくお願いします。

338 名前:デフォルトの名無しさん mailto:sage [2007/12/18(火) 15:25:46 ]
sourceforge.net/project/showfiles.php?group_id=114505&package_id=124206&release_id=434286
DS用のビルドスクリプトだけど
多分、いや確実に参考に出来る

339 名前:sage [2007/12/18(火) 16:43:26 ]
>>328さん、ありがとうございます。早速試してみたいと思います。



340 名前:sage [2007/12/18(火) 16:43:54 ]
>>338さんでした。。。

341 名前:337 [2007/12/19(水) 11:41:12 ]
>>338さんから教えていただいたシェルスクリプトで、c compilerのインストールまでは
完了したのですが、newlibのmakeで>>337と同じくエラーになってしまいました。
newlibをMinGW(WinXP)のmakeの方法を知ってらっしゃる方、よろしくお願いします。

342 名前:デフォルトの名無しさん [2007/12/19(水) 17:18:00 ]
dllからのC++例外をexe側で捕捉できないでしかもhangupするのは仕様ですか?
dllとexeはともにcygwinのg++で作ったものです

ちなみに例外のthrowとcatchがexeで完結してるならちゃんと捕捉できます

343 名前:デフォルトの名無しさん mailto:sage [2007/12/21(金) 22:46:12 ]
>342
これが Cygwin にも適用されるかどうかはわからないけど
ttp://gcc.gnu.org/faq.html#dso

344 名前:デフォルトの名無しさん [2007/12/22(土) 10:35:01 ]
MinGW使ったんだけどsys/ioctl.hとかのヘッダーがないけど、
これってMinGWがまだ不完全だからってこと?
それともどっかに落ちてるのを適当に拾って入れればいいの?

345 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 11:49:24 ]
wikiから
>MinGWの名称はMinimalist GNU for Windows(Windowsのための最小限度の
>GNUの意)を表わす。
>CygwinはLinuxや他のUNIXシステムに見られるような、Windows上に完全な
>POSIX層を提供することを目標にしており、互換性のために必要であれば性能も
>犠牲にしている。一方でMinGWはフリーのコンパイラと各種ツールのみを行い、
>性能を重視している。
>MinGWはPOSIX APIを提供していないので、Cygwinでコンパイル可能だが
>MinGWでは可能で無いUnixアプリケーションが存在する。

346 名前:デフォルトの名無しさん mailto:sage [2007/12/22(土) 20:06:51 ]
つまり、ioctl使いたかったらcygwin使っとけってこと。

347 名前:デフォルトの名無しさん [2007/12/24(月) 11:04:13 ]
sourceforge.net/project/showfiles.php?group_id=2435
SourceForgeのMinGWダウンロードのところのソースファイルをダウンロードして自分でmake installしようとしたんだけど、
makeで必ず失敗する。
WinXPでMinGW環境だとだめってこと?
なんでMinGWのダウンロードのところにあるのにmakeができないの?俺だけ?
i386用のバイナリがあるからそれ使えっていうのもわかるけど、
ちょっとバージョンの新しいのを入れたいからmakeしようとしたら全然だめ。
確認のため、今すでにMinGW版としてあるやつのソースもmakeしたら全然だめ。具体的にはTexInfoね。
これどうゆうこと?

348 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 11:31:14 ]
エラーメッセージが理解できるようになってから来てください

349 名前:デフォルトの名無しさん [2007/12/24(月) 11:51:51 ]
エラーメッセージくらいわかってるよ。
でもMinGWにはないヘッダーとか使ってるソースがMinGWにあるんだぜ?
しかもバイナリ形式もあるんだぜ?
おかしくない?
それとも俺が何か入れ忘れてるの?



350 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 11:58:02 ]
入れ忘れてんじゃネーの?
makeに必要な環境がなかったらmakeは通らんだろ。

351 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 12:25:24 ]
> でもMinGWにはないヘッダーとか使ってるソースがMinGWにあるんだぜ?

なにも不自然な点は見受けられないんだが

352 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 12:58:36 ]
「環境を構築するための資源」と、「環境を利用するための資源」は違うんだぜ。

353 名前:デフォルトの名無しさん [2007/12/24(月) 13:07:03 ]
それってどっかからライブラリなりヘッダーなりを調達する必要があるときはあるってこと?
それってMinGW用とかじゃなくて適当なところから持ってきて適当に追加すんの?
具体例とかあるとわかりやすくてうれしいんだが。

354 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 14:34:58 ]
適当ってなんだよ適当って。
MinGW側でパッチが必要なものはMinGW側に置いてあるだろうし、
置いてないものはGNUサイトとかミラーからでも拾って来ればいいだろう常識的に考えて。

355 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 14:52:57 ]
README.devとINSTALL.genericは読んだのか?
configureはちゃんと通ってるのか?
根本的に、スキルが足りないんじゃないのか?

356 名前:デフォルトの名無しさん [2007/12/24(月) 15:13:53 ]
すまん。もしかしてmsysDVLPRを入れてなかったからなのか?
とりあえずやってみるが、うまくいかなかったらフォローしてくれ。

357 名前:デフォルトの名無しさん [2007/12/24(月) 17:24:42 ]
www.mingw.org/MinGWiki/index.php/MSYSBuildEnvironment
とか読んでみたんだが、よくわからん。
とりあえずmsys直下にmsysDVLPRを解凍していれてやればいいみたいなんだが。
このmsysDVLPRもgcc-libの中にexeがあったりして、これでいいのかとよくわかんない。
それと.profileを編集するようなんだが、これもよくわからん。
くれくれ君ですまないが、誰か知ってる人正しいmsysDVLPRの入れ方とかmsysBuild環境の作り方教えテルミー。

358 名前:デフォルトの名無しさん [2007/12/24(月) 17:26:34 ]
それと適当に入れてbashのmakeをINSTALL.MSYSにならってしてみたんだが、cc1.exeが-fnative-structというオプションがわからんとか言ってエラーになった。
やっぱり環境構築がおかしいんだろうか。詳しい人たのむ。

359 名前:デフォルトの名無しさん mailto:sage [2007/12/24(月) 19:17:58 ]
あのさ、一々アゲて「俺、ソースmake初挑戦日記」書くの止めてくんないかな。
そういうのは、mixiでやってくれ。冬休みに入ったのはわかったから。



360 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 11:09:03 ]
>>347

TexInfoのロケールの問題で引っかかってるんじゃない?
以前俺がBuildしたときは、それでエラーになってた。

そんときは LC_ALL=C でBuildしたら通った。


361 名前:デフォルトの名無しさん [2007/12/25(火) 12:12:18 ]
>>360
すまん。今MinGW/MSYS環境を作り直してるところでそのレベルに行ってない。
昨日適当な環境でTexInfo4.9をmakeしてみたんだがinclude/pwd.hの65行目がおかしいとかいって終了した。
今は正しい環境づくりのため、>>357であげたサイトを調べてる。
正直英語は辛い。訳も半分ぐらいしたが、なんかあやしげ。
msysDVLPRってmsysとmsysDTKをインストールしたあとにそのインストールしたフォルダに入れればいいんだろうか?
それともmsysDVLPRだけでいいんだろうか?
訳してみるとmsysDVLPRだけっぽいんだが、実際としてはmsysインストールしてから追加インストールするものだと思う。
TexInfoとかのビルドが成功した人はどんな風にMSYS環境を作ったのか教えてほしい。

362 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 12:52:23 ]
>>361

基本的にはMSYSとmsysDTK入れただけだな。
あとは msys用bisonとflex入れた程度

mingwはlibiconv入れた



363 名前:デフォルトの名無しさん [2007/12/25(火) 13:06:24 ]
>>362
環境はWinXP?
俺はMinGW Download pageにあるTexInfo4.11すらビルド失敗。

364 名前:デフォルトの名無しさん [2007/12/25(火) 14:48:20 ]
mingwのgccのmingw-local patchesって何処にあるの?

365 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 15:40:08 ]
>>363

うん。 WinXP

TexInfoのBuildは、いろいろ入れないとできなかった気がするんで、
うちはバイナリをダウンロードしてきて入れた。

TexInfo入れずに configureしてBuildできなかったっけ?
このTexInfo関係はドキュメント作成するのに必要なだけなんでスキップしても
問題ないんだけどね。


366 名前:デフォルトの名無しさん [2007/12/25(火) 16:04:10 ]
>>365
うん。俺もドキュメントだから関係ないと思ったけど、
やっぱりみんなが(外人とか)当たり前にビルドしてるのに
できないのが、なんか納得いかなくてな。
それにTexInfoのバージョンあげないと、他のツールをビルドするときにMakefileとかを
強制的に書き換えないといけないのが、なんか嫌だったんだ。
とりあえず今はbashのMinGW Download pageにおいてあるやつをビルドしようと思ってるんだが、
INSTALL.MSYSとか読むと
www.mingw.org/MinGWiki/index.php/MSYSBuildEnvironment
が必要らしんだな。でも英語得意じゃないからそれっぽくやってみてもうまくいかないし。
正直もうお手上げ状態だ。英語をちゃんと理解できればいいんだがな。愚痴っぽくなってすまん。

367 名前:デフォルトの名無しさん mailto:sage [2007/12/25(火) 16:21:08 ]
mingwにあるtexinfo-4.11は
adaのgnat_ugn__unw.texiでエラーでるんでtexinfo-4.8使ってるんだが
これは正常なの?

368 名前:デフォルトの名無しさん [2007/12/26(水) 14:17:32 ]
誰か頼むからWinXPでMinGW5.13とMSYS1.0.10とmsysDTK-1.0.1入れてbash3.1のソースとか
をビルドできるか試してくれ。
俺はできないと思う。
msysDVLPRも入れてみたがだめだった。えろい人たのむ。

369 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 14:41:02 ]
とりあえずあきらめて悟りを開くかCygwinに乗り換えるかしれ。
立てよ国民!gcc -mno-cygwin!!



370 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 14:59:08 ]
いや俺はあきらめたくない。
mingw-usersとかのメーリングリスト見てるとみんな当たり前にやってんだぜ。
英語が苦手なだけでMinGWを利用できないなんて悔しくてやだ。
でも解決策はわからん。

371 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:16:57 ]
どこの中二病患者?

372 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:27:33 ]
英語もダメ。スキルもない。出来ないと暴れる。最悪だな。

373 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:38:52 ]
>>370
そろそろウザイって言われてることにさっさと気づけよ、邪魔なんだよ。

374 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:54:43 ]
お前らだってできねーんだろ?

375 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 15:55:15 ]
煽っても無駄なのにね

376 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 16:02:33 ]
>>368

なんでUNIX系シェルとか依存性の強い物をBuildしようとするかな・・・
たぶんMingw用のglibcヘッダとかライブラリが必要だと思うよ。

たしかどっかにあったはず。

あと binutilとかバグがあるバージョンもあるから、そのあたりも変えてみたら。
binutilは上記のものとかなくてもbuildできるはず。


377 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 17:04:33 ]
ごめんな。感情的になってしまった。
確かに俺は頭悪いが、>>368みたいに親切なやつもいるから
またがんばるよ。

378 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 17:33:01 ]
いみふめい

379 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 17:47:15 ]
>>368
暇だからビルドしてみた。
msysDVLPRとbisonとflexを追加。
www.mingw.org/MinGWiki/index.php/bug-termios_h
このバグでちょっとハマった。
おしまい。



380 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 17:51:13 ]
っていうかここに全部書いてあった。
www.mingw.org/MinGWiki/index.php/Build%20bash
このページすら読めないようならまず英語の勉強した方がいい。

381 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 18:10:50 ]
おお、みんなありがd。
>>379
俺もこれはやった。msys/includeじゃなくてmsys/lib/gcc-lib/...の方をこれで直して少し進んだんだが、
そのあとやっぱり失敗した。
>>380
俺もそれは読んだよ。gnuwin32のflexとbisonいれてtermiosも>>379のように修正。
だがだめだった。
www.mingw.org/MinGWiki/index.php/MSYSBuildEnvironment
ここがちゃんと理解できてないからなのかだめだ。

>>376
glibcのmingwバージョン探してるが、みつからない。


382 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 18:27:51 ]
>>379
どのツールのビルドした?
あとmsysDVLPRだが、以下に書く手順であってるか知りたい。
MinGW5.13、msys1.10.11、msysDTKをインストーラからインストール。
msysDVLPRをtar -zxvf msysDVLPR-1.0.0-alpha-1.tar.gzでmsys/1.0直下から展開。
それと.profileを
if [ $MSYSTEM == MINGW32 ]; then
export PATH=".:/usr/local/bin:/bin:$PATH"
else
export PATH=".:/msys/bin:/usr/local/bin:/bin:$PATH"
fi
といじって、そのごmsysdvlprシェルを起動して白いmsysコンソールからビルド。
違うところがあったら教えてくれ。

383 名前:デフォルトの名無しさん mailto:sage [2007/12/26(水) 19:05:38 ]
はっきり言ってチョーウザイ。
日記はmixiでやれって言ってんの。
おまいには無理、それでいいだろ。

384 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 09:57:36 ]
>>382

念のために書いておくけど、ちゃんと

./configure

してからmakeしてるよな?
まぁ基本的なことだから大丈夫だとは思うが。

それから msysDVLPRを MinGW5.13の上に上書きするのはちとマズいかもな。
msysDVLPRにも gcc及びライブラリが入ってるから。

385 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 10:16:22 ]
もちコース。./configure、make、make installぐらいは知ってるぜ。
msysDVLPRはmsysの方に入れてるんだがこれって間違い?
MinGWiki読むとmsysの方に解凍してるみたいだが。

386 名前:デフォルトの名無しさん mailto:sage [2007/12/27(木) 10:18:12 ]
でもbashのビルドはINSTALL.MSYSにしたがって、一応msysrlsbldっていうスクリプトやってるけどな。
中身は結局configure、makeみたいな感じだ。

387 名前:デフォルトの名無しさん [2007/12/28(金) 23:45:45 ]
Mingwでソケットを使おうとしたら使えない!
インクルードファイルがみあたらないのですがなんででしょう・・・。

388 名前:デフォルトの名無しさん mailto:sage [2007/12/29(土) 01:14:53 ]
MinGWなんだからwinsock使えよ…

389 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 02:43:17 ]
基本的過ぎる質問だと思うのですが
検索してもわからなかったので書き込ませて頂きます

cygwinのgccを使ってC,やC++の開発を行うときのライブラリは
やはりcygwinのそれっぽいのをとってくるんでしょうか?

それとも別のIDEからライブラリ部分を持ってきたりするんでしょうか?

windows.h 関係が欲しいのですが
通常はどこで手に入れるものなんでしょう?



390 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 02:53:46 ]
w32api

391 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 08:17:47 ]
>>390
ありがとうございます。適当に必要なものとどこからでも良いので
とってくればOKなんでしょうか?

とりあえずcppunitとw32api(3.9-1)をcygwinのsetup.exeからインストールしたんですが
cygwin\lib\w32api 配下に windows.h が存在せず
どこから手に入れればよいのか困っています

「普通はここから持ってくる」そんな場所はありますか?

392 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 08:27:55 ]
どんなオプションを選んだかなんて覚えていないけど、
特に何もしなくても<windows.h>をインクルードできるし、
特にライブラリ指定しなくてもWin32 API使えている。

393 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 10:50:40 ]
$ find /usr/include -name windows.h
/usr/include/w32api/windows.h


394 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 11:05:03 ]
>>391はなんでヘッダファイルをlib配下でのみ探したのだろう

395 名前:389 mailto:sage [2007/12/30(日) 17:38:53 ]
>>392
何が違うんでしょうか…? 俺にはさっぱりです
>>393-394
それは>>389がアホだからに他ならないわけで…。
…ありがとうございました
わからなかったのでPSDK入れようとしてました。


結局こんな感じでコンパイルしたら動きました
g++ test.cpp -I/usr/include -I/usr/include/mingw -v

includeされているパスが色々出てきて
それらがどこで設定されてるのかがイマイチわかっていませんが
おいおい調べていくことにします

396 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 17:57:30 ]
>>395
/usr/include と /usr/include/mingw を一緒に使うのはどうかと思う…
ってかこの辺は解り難いとこなんだけど cygwin の gcc には使うlibcに応じて
2つモードがあるんよ.
- cygwinの提供するPOSIX APIを使う通常の cygwin のモード
- POSIX の API を使わずに Win32 API だけを使ってプログラムを書くための MinGW モード
gcc に -mno-cygwin オプションを付けると後者のモードになって /usr/include/mingw
ってのはその場合に使われるヘッダが入ってるのね。なので両方参照する必要はないはずなのよ?
それぞれのメリットやデメリットは…まぁ適当にぐぐってくださいね。

397 名前:389 mailto:sage [2007/12/30(日) 19:07:24 ]
>>396
なるほど解説ありがとうございます。

初めに /usr/include だけを使った所 windows.h が読み込めて
その後に #include <tchar.h> する必要があったので /usr/include/mingw を読み込んでました。
/usr/include/mingw のみ -I すればコンパイルできました。

-mno-cygwin をつけるだけでもOKなのも確認しました。
クロスコンパイルやらなんやらの問題みたいですね。
とりあえず色々眺めてみることにします


398 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 20:04:19 ]
>397
POSIX API を使うつもりがなくいなら -mno-cygwin を付けた方が
cygwin1.dll をリンクしないでいい分ライセンスとかいろいろ楽。
作りたいアプリケーションに応じて選んでくれ。

399 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 20:20:31 ]
POSIX APIを使わないつもりがなくいときはどうしたらいいでしょう。



400 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 20:43:54 ]
gccでデバッグオプション(-g -O0)を付けてコンパイルしたいのですが、
いったいどうやればいいのでしょうか?
いまのところはMakefile.amのINCLUDE変数に'-g -O0'を追加しているのですが、
明らかにおかしいので正しいやりかたを教えていただきたいのです。
環境はubuntu + gcc + autotoolsです。

(Linux板も探したのですが、適当なスレが見つけられなかったため
こちらに質問させていただきます)

401 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 21:02:09 ]
大抵のMakefileなら、CFLAGS辺りに書けばよさそうだが。

402 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 21:35:22 ]
autotool なら環境変数から引っ張ってきてるよね
CFLAGS="$CFLAGS -g -O0" ./configure
俺はこうして使ってるけど

403 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 21:35:26 ]
>>400
この場合 Autoconf/Automake/Libtool スレあたりが適切かな…?

404 名前:デフォルトの名無しさん mailto:sage [2007/12/30(日) 21:49:40 ]
>>401
そうですよね

>>402
CFLAGS="$CFLAGS -g -O0" ./configure
のやりかたでできました。
ありがとうございました。

>>403
すいません。次から気を付けたいと思います。

405 名前:デフォルトの名無しさん mailto:sage [2007/12/31(月) 02:00:32 ]
よくあるのは configure に --enable-debug 付けると
デバッグオプションが付くように作ってあるとかかなぁ

406 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 20:05:29 ]
wxWidgetsをリンクするために
'wx-config --cppflags'の出力されたものを
作成ファイルのMakefile.am内オプションに追加したいのですが
いったいどうやればいいのですか?

何度か同じことをする必要があるので
共通の変数か何かに設定できるとうれしいのですが。
(他のスレでも聞いたのですが、全く反応が無いのでマルポしています)

407 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 20:42:20 ]
>>406
wc-config の出力結果を Makefile.am に書いたら意味ないだろw
configure.in を書いて configure 実行時に wc-config を実行してその結果
がMakefileの変数CXXFLAGSやLIBSに展開されるようにしてやればいいんじゃね?
あと autotools の使い方を基本から勉強しなおしてくれ。
そもそも autotoolize する必要があるのかってところから見直すといいかもしれん。

408 名前:407 mailto:sage [2008/01/01(火) 20:43:27 ]
wc-configってなんだ… wx-config ね

409 名前:デフォルトの名無しさん mailto:sage [2008/01/01(火) 23:42:35 ]
>407
ありがとうございます。

> Makefileの変数CXXFLAGSやLIBSに展開されるようにして
これはいったいどうやればいいのでしょうか?
configure.inに
 WXCXXFLAGS = 'wx-config --cppflags'
 AC_SUBST(WXCXXFLAGS)
とやってもなしのつぶてで全く効果がありません。

あとautotoolsに関してなのですが、自分はもともとVCを使っていて
linuxでコンパイルする必要が出てきたので最近になってautotoolsを使い始めました。
なので残念ながらautotoolsをほとんど知りません。

これを使っているのは、いろいろなプロジェクトで
configureファイルを見かけるからなのですが
これを使わないとしたら他にどのようなツールが考えられますか?
自分はmakeをそのまま使うかbjamなどが思いつくのですが、
どれを選ぶにしろ大変そうで困っています。
ある程度ポータブルで分かり易いツールであればなんでもいいのですが、
良さそうなものがあれば紹介して頂きたいくらいです。

ちなみに、このプロジェクトのコンパイルに必要な手順は
1、プロジェクトに添付された(小さめの)外部ライブラリのソースからスタティックライブラリを生成
  (この際、wxWidgetsが必要になるものもあります)
2、それらとライブラリのソースから一つのダイナミックライブラリを生成
3、最後に、メインプログラム(というかテストプログラム)をDLLをリンクして生成
と少し複雑です。



410 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 01:29:31 ]
他のスレでもって、wxスレでもautoconfスレでも見かけなかったなぁ
まぁ別にどこでもいいんだけど

411 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 09:11:52 ]
探したら pc11.2ch.net/test/read.cgi/tech/1148393695/ にいた…
>>409
基本的に広い範囲で移植性を確保しようと思ったら大変なのはどのツール使っても同じなの
はその通りなんだけど、どの程度の移植性が欲しいのかってところかな?
autotools使うなら本でも読んでじっくり取り組んでくれ。
- www.amazon.co.jp/Autoconf-Automake-Libtool-Gary-Vaughan/dp/4274064115/
あまり出来のいい本でもないけど…

412 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 09:30:35 ]
>>411
基本的には
Windows(cygwin), Linux, FreeBSD, Mac
あたりで使えれば嬉しいのですが。
あまりマイナーな環境に対応するのは大変ですしね。
いい環境が見つかるまでは、マニュアルと本でがんばりたいと思います。

413 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 10:20:29 ]
WXCXXFLAGS="`wx-config --cppflags`"
・・・ではないのかな 試してないけど
俺なら AC_PATH_PROG で wx-config あるかチェックするかな

414 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 15:12:07 ]
>>413
ありがとうございます。ただ、それでもダメでした。
(>>409のWXCXXFLAGSはWXCPPFLAGSの間違いでした。すみません)

Makefile.inを見ると変数自体はちゃんと出力されているのですが
その中身がどうも空のようです。
Makefile.amではどちらか分からないので
一応@WXCPPFLAGS@と$(WXCPPFLAGS)の両方の形式で出力させています。

415 名前:414 mailto:sage [2008/01/02(水) 16:27:37 ]
テストプログラムを作成しました。
原因の分かる方いましたら、是非教えてください。

www.uploda.org/uporg1184897.tar.html

416 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 17:00:06 ]
>>415
configure.ac の中身
WXCPPFLAGS=`wx-config --cppflags`
- 変数と'='の間にスペースは入れない
- 展開はバッククォート
普段UNIXライクOS使ってないならアレだがシェルスクリプトの基本を勉強する必要があるかも

417 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 17:02:34 ]
>>415
そうそう Makefile.am の方は @WXCPPFLAGS@ でよくて $(WXCPPFLAGS) はいらない

418 名前:デフォルトの名無しさん mailto:sage [2008/01/02(水) 22:37:44 ]
>>416-417
できました!
やっとコンパイルに取りかかれそうです。
ありがとうございました。

419 名前:デフォルトの名無しさん [2008/01/04(金) 07:52:12 ]
>>418
Net BeansIDE V6 R3を実装し、C/C++コンポーネントのアドイン指定をし、
Cygwin言語処系gmake,g++,gcc等をインストールし、 Net BeansIDEを起動
することにより、自動でビルド環境が出来るじゃん。
まあ、autoconf automake の勉強するつもりならこんなやり方は為にならんが。
まあ、学生さんだったら時間あって勉強がてらハンドでやるのも良いんだろうけどw
よく考えたら、正月だったのか。じゃあ時間作れそうだな。






420 名前:419 [2008/01/04(金) 07:58:25 ]
こっちの方が正確だったな
ja.netbeans.org/
Net BeansIDE V6 R3→表記ミス

組込系なら制約が有るかもしれんな。
ま、その辺り臨機応変にな。

人間がやるより早いぞ。

421 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 09:54:43 ]
>>419
本人はVC使ってて他の環境(LinuxやFreeBSD)で容易にコンパイルできるように
autotoolize してるって書いてあるだろ…
そこで Cygwin + NetBeans 勧めても…

422 名前:デフォルトの名無しさん [2008/01/04(金) 21:04:54 ]
>>421
奨めないとPGままだろ?
ソフトウェア開発技術者とPGは違うぞ。
コンポーネントプログラミングの妙技も味わって貰わないとなw

423 名前:デフォルトの名無しさん [2008/01/04(金) 21:21:17 ]
>>421
autotoolizeって何?

スペルミスするくらいならオーソライズって書けよw


424 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 21:25:18 ]
>>423
autoconf/automake 使って
./configure && make all && make install
って, やればインストール出来るようになってる
という意味ではないのか?


425 名前:デフォルトの名無しさん [2008/01/04(金) 21:45:50 ]
>>424
個人の造語を空想で断定しては恥かくだろう?
俺はレスの文脈からオーソライズと認識したまで。
何ならそのスペルで英和辞典なりコンピュータ用語事典を
探して見たら良い。
一生掛かっても見っからないことは断言できる。
ま、そんなチンケな話で揉めても仕方ないのでここで
ペンを置く。


426 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 22:07:03 ]
うるせーよググれカス

427 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 22:08:42 ]
>>425
レスの文脈からautotool-izeとしか認識できなかったがな。
オーソライズってのはauthorizeのことか?だとしても意味が通らんな
もっと文脈読まないと恥かくぞ?

428 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 22:11:01 ]
>>417
その情報は古い。
Makefile.amでは、$(WXCPPFLAGS)と書くのが今風です。
Makefile.inでよきに計らってくれるので。

そうすると、$ make WXCPPFLAGS="-I/anotherdir/include"
なんかが使えます。

429 名前:デフォルトの名無しさん [2008/01/04(金) 22:13:26 ]
>>427
ふふ、暇なオジンやな?
本件にレスして道ズレにしようちゅう魂胆かなw
まあ、おまえが口べただと言うことは良く解った。ググった上でのレスだw>>426




430 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 22:22:17 ]
冬休み学生のへたくそな煽りにわざわざ釣られるなよ…

431 名前:デフォルトの名無しさん mailto:sage [2008/01/04(金) 23:13:08 ]
>>423
これほど「プギャー(AAry」を貼りたくなったレスは初めて見た希ガス。






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<237KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef