cygwin + mingwn + gcc 相談室 Part2 だとすれば、binutilsも実際に動かすと襤褸が出そうだな。 例えば内部でgzipを呼ぶtarとか。
>>948 のリンクにある方法を参考にするんじゃなくて、
devkitProのbuildスクリプトを参考にしたらいいんじゃないの
俺もこれからコンパイルしてみるが
Unix環境で構築しろよ
955 :
デフォルトの名無しさん :2007/04/12(木) 13:18:41
unix、mac、cygwin上でgccを使っているのですが、改行コードどうしたらよいのでしょうか?
957 :
953 :2007/04/12(木) 18:50:04
>>948 何故 Include Path から見つけられないんだろうな?
碌な解決法じゃないが、gcc-4.1.2/gcc/config/ をディレクトリ丸ごと
と gcc-4.1.2/gcc/coretypes.h defaults.h を $prefix/gcc にコピーすれば
xgcc まではコンパイル通る模様。その先は知らん。
958 :
948 :2007/04/13(金) 00:10:14
>>951 msysだと /d/directory になるようです。
cygdriveはcygwin固有の拡張?
>>953 devkitProにDCポートは無いんです。
念のため読んでみたら、フルパス聞いてくるので環境依存しない模様。
そして自分の場合は何を指定するのが正しいか判らないorz
959 :
948 :2007/04/17(火) 01:25:30
まだやってます。
最近試したこと。
1).展開したgccのディレクトリにそのまま入って./configure
別のヘッダが見つからないorz
2).可能限りコマンドをフルパスで指定
相対で書いたときと同じ結果orz
>>957 の方法に手を出すべきか・・・。
>>951 はずしてたらゴメン。
> msysだと /d/directory になるようです。
このドライブレターの表記が使えるのは msys に付属のコマンドだけだと思われ。
(そういう風に作りこまれている。)
だから例えば MinGW の gcc ではこの表記は受け付けてくれないし、
普通のCプログラムの中でファイルの読み書きに使おうと思っても下記の通りNG。
C:\>more a.c
#include <stdio.h>
int main()
{
FILE *fp;
fp = fopen("/c/a.c", "r");
if (!fp) {
perror("fopen");
exit(1);
}
fclose(fp);
return 0;
}
C:\>gcc /c/a.c
gcc: /c/a.c: No such file or directory
gcc: no input files
C:\>gcc a.c
C:\>a.exe
fopen: No such file or directory
961 :
960 :2007/04/17(火) 04:18:48
レス番号を間違えた。951宛てじゃなくて
>>958 宛てです。
このドライブレターの表記があらゆるところで使えるようになる方法があれば俺も知りたい。
962 :
948 :2007/04/18(水) 07:42:49
>>960 configureの出力を見ると、リンカとかDOS形式になってますね。
昨日は、次のことを試してみました。
1).msysとMinGWをdevkitPro配下から別の場所にインストールしなおし。
2).devkitPro(インストール先)をマウントする形に変更。
→d:\devkiProが/devkitProになる。
3).2に伴ってprefixを/devkitPro/...とする。
なんでなんで・・・なんで見つけてくれないの!?
963 :
957 :2007/04/18(水) 14:56:12
どんだけパスいじっても無駄だよ
964 :
948 :2007/04/19(木) 00:11:11
諦めました。
というか
>>957 の方法で流していたら通ったので、まぁいいかと。
# 途中つまづくところはあったけど
房のお相手ありがとうございました。勉強になりました。
>>944 a.exeと同じフォルダに古いcygwin1.dllを置いて、
更にそこへa.exe.localというファイルを置くとどうだろう。中身は空にしていい。
(Win 98SE/2000以上)
環境変数にC:/cygwin/binを追加してg++でコマンドは実行できるんですが、Makefileの中で a.out : HelloWorld.cpp g++ HelloWorld.cpp みたいに書いてmakeすると g++ HelloWorld.cpp make: g++: Command not found make: *** [a.out] Error 127 というふうにエラーになります。Makefileで/usr/bin/g++と絶対パスを指定するとエラーはでません。 なぜパスは通ってるのにMakefileでg++と書くとエラーになるのでしょうか? アドバイスお願いします。
環境の問題でしょ。which g++してみそ。
>>967 /usr/bin/g++
となります。Windowsの環境変数以外にパス通す必要があるのでしょうか?
あれcygwin上で見ると/usr/binにコマンド入って見えるのにWindowsからだと入ってない・・・ そのせいでしょうか?
すみません。解決しました。 コマンドプロンプトからmakeができなかったのはWindowsのパスの優先順位のようでした。 C:\cygwin\binをPathの先頭に追加したら動きました。
もしかして、bashからでなくmakeを動かしているのか? それだとmakeは(cygwinの設定する環境変数を引き継いでいないので)PATHを使えないよ。
あーそうか、WINDOWSのPATHは使えるのか……
ってか何故コマンドプロンプトからmakeするのかが謎なわけだが…
974 :
944 :2007/04/28(土) 00:36:38
>>965 動かなかった原因が分かりました。
cygwin1.dllのバージョンが合わなかったのはa.exeでは無かったようです。
a.exeが呼んでいる*.soのバージョンが合わなかったのが原因でした。
*.soのパスにcygwin1.dllを置いたら正常動作しました。
で、「a.exe.local」を試そうと思ったのですが、すでにその環境が無く、確認できません。
(PCごと納品しちゃったので)
どういった意図で「a.exe.local」何でしょうか?
localで検索すると、どうしても/usr/localばかりが引っかかって、中々たどり着けません。
後学のために、可能ならそれの意味が分かるサイト等紹介いただけるとありがたいです。
> (PCごと納品しちゃったので) 仕事かよw
WindowsXPSP2でCygwinを使い始めました。 Cでfork()などが使いたかったので。 で、よく使うコマンドを登録しておきたいのですが (例えばgikoと入れたらギコナビが起動するように) aliasで登録しても、一度Cygwinを落としてしまうと、残ってくれません。 忘れられています。設定を残しておくにはどうしたらいいのでしょうか。 よろしくおながいします。
.bashrc
もう|ω・´)詳しく・・・!
と思ったらできたわ。さんくすクチュクチュ。
UNIX知らずにCygwin使うとそうなる
> UNIX知らずにCygwin使うとそうなる ぼくも Linux しか使ったことなくて、UNIX なんか知りません><
まぁいいんじゃね。入門編としてcygwinやってみるのも。 いきなりsun買う必要はない。
数年前ならいざ知らず、SolarisもVMwareも無料でゲットできるこのご時世に
ポイズン
> SolarisもVMwareも無料でゲットできるこのご時世に Solaris に関しては、無料だからといって、わざわざダウンロードしてまで 使うようなものではないと思うんだ。
>>984 勉強目的の場合、わざわざ別環境にアクセスせにゃならんのは大きなマイナス。
加えて仮想環境はどうしても素で走らせている場合より重いしな。
まぁ、仮想環境なら環境をぶっ壊しちゃっても簡単にロールバックできる利点があるにはあるが。
> 加えて仮想環境はどうしても素で走らせている場合より重いしな。 どれだけクズ環境だと重いんだよw
きっとメモリーが512MBしかないんでしょう
>>988-989 最近の仮想環境ってすごいんだな。ネイティブで走らせるより軽いのかよ?
じゃぁ、仮想環境の中にさらに仮想環境作ってどんどんネストしていけば
メッチャ速くなるんじゃね?
>ネイティブで走らせるより軽い あほかおまえ?
>>990 どこに「ネイティブで走らせるより軽い」旨書いてあるのか教えてもらおうか。
次スレある?
ないけど いらないよ
梅流花
梅露
999
1000
1001 :
1001 :
Over 1000 Thread このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。