Linuxプログラミング

このエントリーをはてなブックマークに追加
301login:Penguin
>>295
「どんなエラーが起こったかは、config.logを読め」ってかいてあるでしょ。
読んでみた?意味がわかんなかったら、config.logの内容かきな。
# つーか、すれ違いだし、板違いだけど...
302292:02/02/25 00:08 ID:GwZlFUMG
Vackerタンもうちょっと聞きたよー、つづきをキボンヌ(マジ
303295:02/02/25 13:40 ID:LEc6DJSN
>>301
長くなってしまって申し訳ないのですが、config.log の途中から書きます。
README.Win32 には cross-configure.sh , cross-make.sh を使うように書い
てあったのですが、そのせいでしょうか? でもこれだと SDL 自体がインストー
ルできなかったので...違うかな。

configure:2159: checking for SDL - version >= 1.2.3
configure:2244: gcc -o conftest -g -O2 -I/usr/local/include -I/usr/local/include/SDL -Dmain=SDL_main -I/usr/include/mingw -DWIN32 -Uunix conftest.c -L/usr/local/lib -lmingw32 -lSDLmain -lSDL -mwindows -mno-cygwin 1>&5
/usr/local/lib/libSDLmain.a(SDL_main.o.b): In function `ParseCommandLine':
/usr/include/mingw/ctype.h:141: undefined reference to `_imp____mb_cur_max_dll'
/usr/include/mingw/ctype.h:141: undefined reference to `_imp___pctype_dll'
/usr/include/mingw/ctype.h:141: undefined reference to `_imp____mb_cur_max_dll'
/usr/include/mingw/ctype.h:141: undefined reference to `_imp___pctype_dll'
collect2: ld returned 1 exit status
configure: failed program was:
#line 2183 "configure"
#include "confdefs.h"

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include "SDL.h"

char*
my_strdup (char *str)
{
char *new_str;

if (str)
{
new_str = (char *)malloc ((strlen (str) + 1) * sizeof(char));
strcpy (new_str, str);
}
else
new_str = NULL;

return new_str;
}
304295:02/02/25 13:41 ID:LEc6DJSN
続きです。

int main (int argc, char *argv[])
{
int major, minor, micro;
char *tmp_version;

/* This hangs on some systems (?)
system ("touch conf.sdltest");
*/
{ FILE *fp = fopen("conf.sdltest", "a"); if ( fp ) fclose(fp); }

/* HP/UX 9 (%@#!) writes to sscanf strings */
tmp_version = my_strdup("1.2.3");
if (sscanf(tmp_version, "%d.%d.%d", &major, &minor, µ) != 3) {
printf("%s, bad version string\n", "1.2.3");
exit(1);
}

if ((1 > major) ||
((1 == major) && (2 > minor)) ||
((1 == major) && (2 == minor) && (3 >= micro)))
{
return 0;
}
else
{
printf("\n*** 'sdl-config --version' returned %d.%d.%d, but the minimum version\n", 1, 2, 3);
printf("*** of SDL required is %d.%d.%d. If sdl-config is correct, then it is\n", major, minor, micro);
printf("*** best to upgrade to the required version.\n");
printf("*** If sdl-config was wrong, set the environment variable SDL_CONFIG\n");
printf("*** to point to the correct copy of sdl-config, and remove the file\n");
printf("*** config.cache before re-running configure\n");
return 1;
}
}


configure:2293: gcc -o conftest -g -O2 -I/usr/local/include -I/usr/local/include/SDL -Dmain=SDL_main -I/usr/include/mingw -DWIN32 -Uunix conftest.c -L/usr/local/lib -lmingw32 -lSDLmain -lSDL -mwindows -mno-cygwin 1>&5
/usr/local/lib/libSDLmain.a(SDL_main.o.b): In function `ParseCommandLine':
/usr/include/mingw/ctype.h:141: undefined reference to `_imp____mb_cur_max_dll'
/usr/include/mingw/ctype.h:141: undefined reference to `_imp___pctype_dll'
/usr/include/mingw/ctype.h:141: undefined reference to `_imp____mb_cur_max_dll'
/usr/include/mingw/ctype.h:141: undefined reference to `_imp___pctype_dll'
collect2: ld returned 1 exit status
configure: failed program was:
#line 2278 "configure"
#include "confdefs.h"

#include <stdio.h>
#include "SDL.h"

int main(int argc, char *argv[])
{ return 0; }
#undef main
#define main K_and_R_C_main

int main() {
return 0;
; return 0; }
305295:02/02/25 13:43 ID:LEc6DJSN
長すぎてうざいですね。。。。
ごめんなさい。
306login:Penguin:02/02/25 20:14 ID:yeNNgtGX
>>303
つーか、なめらかに板違いだなぉぃ。
UNIX板のcygwinスレかwindows板か
ム板の範疇だと思うが……

それよりか、winのコンパイル済のSDL32.dllじゃだめなんか?
307login:Penguin:02/02/25 22:11 ID:bMbnSl5L
>>304
> /usr/include/mingw/ctype.h:141: undefined reference to `_imp____mb_cur_max_dll'
> /usr/include/mingw/ctype.h:141: undefined reference to `_imp___pctype_dll'
> /usr/include/mingw/ctype.h:141: undefined reference to `_imp____mb_cur_max_dll'
> /usr/include/mingw/ctype.h:141: undefined reference to `_imp___pctype_dll'

どう見てもcygwin固有の問題なんですが、、、
どうしてもLinux板でつづけたいですか?

308login:Penguin:02/02/25 22:26 ID:r8cdj1bz
>>306-307
こらこら、せっかく来てくれたんだぞ。

>>304
Linuxをインストールすると解決するYo!

# いや、まぢで。
# Windows領域にインストールできるデストリビューションも増えてきたしさ
309login:Penguin:02/02/26 00:58 ID:UwxM9YJu
シェルスクリプト内でパイプ処理をしている最中に
条件式を埋め込みたいんだけど、どうもうまくいきません。

#!/bin/sh
grep hoge hoge.log | ここで$1が数字なら tail -n 数字、$1が数字以外なら cat | ・・・

というようなのをずらずらと書きたいんですけど
どうすればいいでしょうか?
310309:02/02/26 00:59 ID:UwxM9YJu
シェルはbashです
311login:Penguin:02/02/26 01:09 ID:kWRylkzw
hoge.logのサイズにもよるけど、
for i in `grep hoge hoge.log`
do
if $i...
....
fi
done

じゃダメなのか?
312331:02/02/26 01:16 ID:kWRylkzw
あ、そういう問題じゃないのか。
grep hoge hoge.log | (if .... fi) | .....
ではどーですか?
313309:02/02/26 01:21 ID:UwxM9YJu
例が悪すぎました。すみません。具体的にやりたい処理を書きます。

$1 がgzファイルなら zcat、普通のテキストなら cat で表示し
$2 でgrepして
$3 が数字で指定してあればtail -n 数字、そうでなければそのまま

というフィルタリングを行いたいのです。
zcat $1 または cat $1 | grep $2 | tail -n $3 または cat
という処理を書きたいのですが・・・

なるべくtmpファイルは途中で生成したくないと考えてます。
314login:Penguin:02/02/26 01:44 ID:HpGR26aj
>>313 最初っからそういってくりぃ(;´д`)
echo $1|grep -e 'gz$' > /dev/null
if [ $? -eq 0 ]; then
CAT=zcat
else
CAT=cat
fi

if [ "$3" = "" ] ; then
TAIL="tail -n $3"
else
TAIL='cat'
fi

$CAT $1 | grep $2 | $TAIL
315309:02/02/26 02:18 ID:UwxM9YJu
>>314
おお!
変数もコマンドになる・・・

目からうろこです。なるほど!
316login:Penguin:02/03/02 17:23 ID:252oT5b1
ターボから出てるiアプリ作成ツールって使えますか?
503is買おうか迷ってるんですが・・。
317login:Penguin:02/03/02 17:56 ID:aAidBm2I
OSXのプログラミングしろ、ほげ
318キタ:02/03/03 18:48 ID:TIN10b/M
#include <stdio.h>

int main(int a, char *b[])
{
int i;
char *kita[7] = {
"(゚∀゚)",
"( ゚∀)",
"(  ゚)",
"(  )",
"(  )",
"(゚  )",
"(∀゚ )"
};

while (1) {
for (i = 0; i < 7; i++) {
printf(" キタ━━━%s━━━!!!!!\n%cM", kita[i], 27);
usleep(200000);
}
}
}
319login:Penguin :02/03/03 18:53 ID:zGw1I9Gs
#!/usr/bin/perl -w        
use strict;
                      $_='ev
                    al("seek\040D
      ATA,0,         0;");foreach(1..2)
    {<DATA>;}my        @camel1hump;my$camel;
 my$Camel ;while(       <DATA>){$_=sprintf("%-6
9s",$_);my@dromedary      1=split(//);if(defined($
_=<DATA>)){@camel1hum    p=split(//);}while(@dromeda
ry1){my$camel1hump=0   ;my$CAMEL=3;if(defined($_=shif
    t(@dromedary1  ))&&/\S/){$camel1hump+=1<<$CAMEL;}
    $CAMEL--;if(d  efined($_=shift(@dromedary1))&&/\S/){
   $camel1hump+=1 <<$CAMEL;}$CAMEL--;if(defined($_=shift(
   @camel1hump))&&/\S/){$camel1hump+=1<<$CAMEL;}$CAMEL--;if(
   defined($_=shift(@camel1hump))&&/\S/){$camel1hump+=1<<$CAME
   L;;}$camel.=(split(//,"\040..m`{/J\047\134}L^7FX"))[$camel1h
   ump];}$camel.="\n";}@camel1hump=split(/\n/,$camel);foreach(@
   camel1hump){chomp;$Camel=$_;tr/LJF7\173\175`\047/\061\062\063
   45678/;tr/12345678/JL7F\175\173\047`/;$_=reverse;print"$_\040
    $Camel\n";}foreach(@camel1hump){chomp;$Camel=$_;y/LJF7\173\17
    5`\047/12345678/;tr/12345678/JL7F\175\173\047`/;$_=reverse;p
     rint"\040$_$Camel\n";}#japh-Erudil';;s;\s*;;g;;eval;  eval
      ("seek\040DATA,0,0;");undef$/;$_=<DATA>;s$\s*$$g;(  );;s
       ;^.*_;;;map{eval"print\"$_\"";}/.{4}/g; __DATA__  \124
        \1  50\145\040\165\163\145\040\157\1 46\040\1 41\0
          40\143\141 \155\145\1 54\040\1  51\155\ 141
          \147\145\0 40\151\156 \040\141  \163\16 3\
           157\143\  151\141\16 4\151\1   57\156
           \040\167 \151\164\1  50\040\   120\1
           45\162\  154\040\15  1\163\   040\14
           1\040\1  64\162\1   41\144    \145\
           155\14  1\162\    153\04    0\157
           \146\   040\11   7\047\     122\1
           45\15   1\154\1 54\171     \040
           \046\     012\101\16      3\16
           3\15      7\143\15       1\14
           1\16      4\145\163      \054
           \040      \111\156\14     3\056
          \040\     125\163\145\14     4\040\
          167\1    51\164\1 50\0     40\160\
         145\162               \155\151
        \163\163                \151\1
       57\156\056

# camel code, copyright 2000 by Stephen B. Jenkins
# The use of a camel image with the topic of Perl
# is a trademark of O'Reilly & Associates, Inc.
# Used with permission.
320login:Penguin:02/03/03 22:24 ID:9bkrojNd
>>318
ワロタ

>>319
すげ〜
321Vacker:02/03/09 00:58 ID:pgqd7Ztz
今日はクワータになっちゃうからな

「せいなるかねのねが〜ひび〜くこおろおにぃ〜
さぁいはてぇ〜のまぁちぃなぁみぃを〜ゆめ〜にみるぅ〜
てぇんしぃ〜がそぅらかぁら〜お〜りてきぃて
はぁるかぁくぅるぅまぁえにぃ〜ほほぅえみぃぅをくぅれぇたぁ〜
ここころおれないようにまぁけないように
ろぉんりぃね〜
しぃろぉいこぉいびぃとぉが〜まぁっている〜
ぅだかぁらぁゆぅ
めときぼうをむねにいだぃて

322login:Penguin:02/03/09 01:03 ID:vpqi9f9X
>>321
悪いが板ちがい。
プログラミングねたにしてくれ
323 :02/03/09 05:06 ID:4+C7ROZ+
板違いと思うのですが質問です。
1〜9、a〜zの文字を使って
4文字の英数字をランダムに生成するのは
どのようにすればよいのでしょうか?
324login:Penguin:02/03/09 09:55 ID:4PDxIO92
宿題は、自分でやるか、じっくり質問できる友達を作っとくかするモンだぞー

1: 1〜9、a〜zを格納した配列を用意
2: 9+26=35なので0〜34の乱数を発生
3: これを配列のインデックスににして、文字を決定
4: 2-3を4回繰り返し、文字列として結合
include <stdio.h>
char table[35]="123456789abcdefghijklmnopqrstuvwxyz";
char randstr[5];
FILE *fp;
int i;
int tmp;

if((fp=fopen("/dev/random","r"))==NULL){perror("/dev/random");exit(1);}
for(i=0;i<4;i++){
 tmp = fgetc(fp);
 randstr[i] = table[tmp%35];
}
randstr[4]=0;
fclose(fp);
325login:Penguin:02/03/09 09:56 ID:4PDxIO92
あ。includeの前に#ぬけた。
あと、全角スペースいれてるから注意して。
326login:Penguin:02/03/09 11:39 ID:3VUFTEsN
>318
ウケタ。
二次元配列使ってモナーの「ワケワカランワケデモナイ」
とかもできそうだね。
327login:Penguin:02/03/09 12:52 ID:2F0vZ9RW
2chAAlibでもつくろーかと思ったけど、
用途が鬱なものしか思い浮かばないから、やめた...
UNIX/Linux板がAAの嵐になるのもアレだし。
328 :02/03/09 23:51 ID:4+C7ROZ+
>>324
お手数お掛けしました。
有難う御座います。
329login:Penguin:02/03/16 07:01 ID:8WW1ZYNb
ふう、半年かかってやっとcursesで色指定できるようになったぜ。(`_';)
330login:Penguin:02/03/16 16:36 ID:DzswhZiE
>>329
赤飯炊いてください
331login:Penguin:02/03/17 00:58 ID:oL8hr3lg
>>326
作っても良いが固定ピッチ端末じゃAAがきれいに見えないのが辛い。
332Vacker:02/03/17 02:32 ID:+a/Oz7wR
きみたち!君たちも一緒にホームレスハッカーしようぜ!

ホームレスハッカー「ラモー」
http://www.hotwired.co.jp/news/news/culture/story/20020308204.html
333デフォルトの名無しさん:02/03/17 06:38 ID:rKqNVMk6
334Vacker:02/03/17 07:16 ID:Ve6CaAn4
さぁ、きみたちもラモーに続いてyunyunとかvladimirになってくれ。
335login:Penguin:02/03/17 07:52 ID:V4P8Ci8U
TurboLinux7のFTP版でJavaの開発されているかたいますか?

フォントの設定を行ったにもかかわらず
Cannot convert string "-ryobi-minchol-...." to type FontStruct
と、コンソールにエラーが出てGUIでは文字化けしてしまいます
どうしたら良いでしょうか?
FTP版だとダメなんでしょうか?
ちなみに、JustSystemのHPに載っている設定方法を試しました
お願いします助けてください
336 :02/03/17 09:44 ID:gOZA0UlR
そのフォントTurboLinux7製品版にしか入ってねーだろ。
337login:Penguin:02/03/17 09:47 ID:K5wvpRZW
>>336
ええ、ですからフォントの参照先を変えたいんですけど
どうすればよいのかわからなくって・・・
338329:02/03/18 18:12 ID:hViV/2q5
更にcursesでファンクションキー使えるようになったよ。 viのクローンでも作るわ。
339login:Penguin:02/03/18 21:22 ID:YVsKkvN6
>>338
残念だけど外出
http://pc.2ch.net/test/read.cgi/unix/1008261818/

対抗馬になるか改良するかどっちかですね。
がんばって下さい。
340login:Penguin:02/03/19 00:50 ID:zxZSSbSP
なぜviクローンでファンクションキー?
341login:Penguin:02/03/19 01:33 ID:3nGAD5if
Vim で使えるからじゃない?
342login:Penguin:02/03/19 03:47 ID:zxZSSbSP
世界時計

usage: wclock [-12〜+12]

日本の場合-9


% cat wclock
#!/bin/sh

if [ "$1" != "" ]; then
TZ=XXX$1
export TZ
echo " TZ=$TZ"
fi

echo " +=====================+"
while :
do
date +" | %Y/%m/%d %H:%M:%S |"
echo " +=====================+"
sleep 1
echo -e "\033M\033M\033M"
done
343329:02/03/19 04:29 ID:1mJ1+9mb
ttp://www.maid3.ne.jp/~namiii/cgi-bin/image/iiup927.jpg cursesでお絵書きするの作ったんだけど誰かいる?
344名無しさん@Emacs:02/03/19 08:47 ID:vx5jf9AK
>>343
キボ-ン
345329:02/03/19 16:03 ID:1mJ1+9mb
http://mushoku.tripod.co.jp/ccc.c
要らないと思うけどアップします。
$ gcc ccc.c -o ccc -lcurses
でコンパイルして、操作法は
方向キーで移動、F1〜F8キーで色を変えて、
その他の普通のキーで文字を書きます。
そして'Q'で終了します。
みんなでお絵書きしましょう。
346login:Penguin:02/03/19 16:16 ID:ezuzc5ri
>>329
rxvt はうまくいくけど kterm, Mlterm では
ファンクションキーの取得が出来ていない模様。
347344:02/03/19 22:13 ID:vx5jf9AK
>>345=329
確かにktermだとF1〜F4が効かないみたいっす。
# ^Oとそれぞれ P,Q,R,S が入力されちゃう
F5〜F8は効くみたいだけど。
rxvtは入れてないから分かんないっす。
348329:02/03/20 02:54 ID:17hsvpxp
あ、おふたりとも試していただいてありがとうございます。 かくいう俺はKONの環境でやっています。 ぬー、まだまだ修行が足りないようですね。 これを応用してcursesでゲーム作ろうと思っています。(噸座しなければいいな・・
349login:Penguin:02/03/20 05:28 ID:14QD3U3P
TurboLinux7のFTP版でJavaの開発されているかたいますか?

フォントの設定を行ったにもかかわらず
Cannot convert string "-ryobi-minchol-...." to type FontStruct
と、コンソールにエラーが出てGUIでは文字化けしてしまいます
どうしたら良いでしょうか?
FTP版だとダメなんでしょうか?
ちなみに、JustSystemのHPに載っている設定方法を試しました
お願いします助けてください
フォントの参照先を変えたいんですけど
どうすればよいのかわからなくって・・・
350login:Penguin:02/03/20 16:36 ID:ZXZH8grQ
>349
とりあえずローマ字ですれ。あとはWinでswingプログラミンゴすれ。
351login:Penguin:02/03/20 18:27 ID:FC6U4/jB
>>349
まあ、それでもいいんですけどね
352login:Penguin:02/03/20 18:30 ID:hEleuR04
こんなの見つけた。
マルチプラットホームらしい。

ttp://www.widestudio.org/

ガイシュツ?
353login:Penguin:02/03/20 19:43 ID:RZu+6gFB
>>352 ゆーめーです
354login:Penguin:02/03/20 23:28 ID:qC/inkUP
>>348
cursesつかってアクションゲームはやめとけ。
俺は、音ゲーつくろうとして、悲しい思いをした(w
355login:Penguin:02/03/21 02:45 ID:5/+xRgx9
とりあえずインストールしてみたが、何が出来るのかさっぱりわからん
356login:Penguin:02/03/21 02:58 ID:9pmYpm5X
>>355 何をインストしたの?
357login:Penguin:02/03/21 03:14 ID:AiXx6DVL
>>356
widestudioじゃない?

>>355
漏れもインストールしてみた。
Win版だけど…

とりあえず。helpでも読むかね…
ってこれg++やん。。。
コンパイラとリンカをgccに換えれば良いのかな…(ドキドキ
358348:02/03/27 15:54 ID:kfhea9b4
>>354
音ゲーってことはタイミングよくキーを押させるんですよね?
自分はgetch()関数しか知らないのですが、これでは
キーを押すまで全てが待ってしまいます。
なんかいい方法ないでしょうか?
359login:Penguin:02/03/27 18:42 ID:qRMua0io
そういうのは普通 select で見張るんじゃないか。
360login:Penguin:02/03/27 23:40 ID:Md2CuLe+
しかし、都度都度入力バッファをクリアしないと
先行入力が効いてしまいそうな感じ...(BASICのINKEY$みたく)
実行速度が速いならだいじょうぶか(でもキーリピートが...)

INPにあたるものは無理かな(curses組んだことないので、なんとも)
361login:Penguin:02/03/28 20:45 ID:a7UA/nCo
>360
先行入力なんて全然恐くないと思うが。
キーリピートくらいかかっても全然キーバッファには
たまらないと思う。どうしても必要なら2回目以降の
入力は単にread()して捨てればいいし。
362login:Penguin:02/03/30 01:51 ID:mpZbUyZ2
>>361
curses使ってるときは、selectはダメでわ?

>>360
おとげーもどき作ったときのソースは、消しちゃってた。
当時のとは別だけど、「たしかこんな感じだったよなー」っての書いたYO!
363login:Penguin:02/03/30 01:59 ID:mpZbUyZ2
http://members.tripod.co.jp/kt_i/inputdemo.c.gz
はい。
inputdemo.cは、コメントが多めに入ってる。
そんかわり、cursesによる表示内容は少なめ、これ。

'q'の入力で終了っす。
364362:02/03/30 02:03 ID:92twwQN2
なんか>>362のレスがヘンなとこへ向きまくりでスマソ。
s/361/359/
s/360/358/っす。
365login:Penguin:02/03/30 19:36 ID:dcJw2Jul
inputdemo.c.gzが解凍できません。ネタじゃないです ヘタレですみません。
366login:Penguin:02/03/30 19:58 ID:bTREfqd2
ありゃ、まぢすか?
gunzip inputdemo.c.gz

inputdemo.c
ができませんか?

それでダメなら、とりあえず、
less inputdemo.c.gz
してみて下さい。(ブラウザが、勝手に展開してるのかも)
もし、htmlヘッダみたいなの見えちゃったら、教えて下さいな。
対策考えるです。
これから出かけるんで、失礼。


367login:Penguin:02/03/30 22:36 ID:dcJw2Jul
あ、できました。ちょっと時間かけて読んでみます。 ありがとう!kt_iさん
368366:02/03/30 23:36 ID:JPI70+38
ただいま。
>>367
よかったよかった。
んで、コメント多めに入れたつもりですけど、わかりにくいと思うんで、
誰でも何でも聞いて下さい。
あと、あまり普通のやり方じゃないかもしれないですし、問題とか
気づいた人、教えてください。煽りも歓迎。勉強させてくださいな。
369login:Penguin:02/04/05 18:42 ID:rMAy0SP7
開発環境も充実してきたけど皆どんなの使ってる?
自分は未だにviだけどもっと良い環境にしたい..
emacsの方が良いのかな.
370おむこさん志望 ◆GqCwfDSA :02/04/05 19:02 ID:BMn9N6Vz
>>369
エディタじゃないけど、devhelp(http://www.devhelp.net)はいいよ。
glibcとかgtk+のリファレンスマニュアルとして重宝してます。
371369:02/04/06 01:28 ID:carhLpBJ
今,sdldoc.csn.ul.ieとマニュアル見ながら勉強してるけどSDL結構良いね.
しかも簡単だし.
ビデオ関連とタイマー覚えたら簡単なゲーム作れそうだね.
基本ライブラリでbmp形式しか使えないのは痛いけど.(スプライト作れない?)

他にimlib使って端末上で2dでグラフィカルなゲームとかも作れそうだ.
372login:Penguin:02/04/06 01:33 ID:mH55Z1Cz
>>369
開発環境はSAMBA+TELNET使ってWINDOWS2000からエディット
コンパイルするのが一番効率的かと。
373login:Penguin:02/04/06 01:34 ID:uf9JfT1u
【コピペ1周年】同時多発オーダーIN吉野家【祭り】
(1)馴れ合い禁止。(一人で来る事。同伴禁止:いても知らぬ顔)
(2)「大盛りねぎだくギョク」を頼むこと。(並盛りねぎだくギョクも可)
(3)各会場ごとに指定時間厳守で現地集合。
(4)食ったら即帰る。
注)吉野家は家に帰るまでが吉野家です。
http://ex.2ch.net/test/read.cgi/entrance/1017935504/l50
http://www2.mnx.jp/carvancle/yoshigyu/ スレよりぬき等
374login:Penguin:02/04/06 02:19 ID:UVKoCCB3
>371
SDL_image ライブラリを使うと、各種画像ファイルを扱えるYO!
http://www.libsdl.org/projects/SDL_image/index.html

Windows だと、これが依存するライブラリも入れなきゃならんので大変っぽいっけど。
他にも SDL には便利なライブラリがあるから、チェックするといいと思われ。
375login:Penguin:02/04/06 08:59 ID:9GH2Tjkf
>>371

サーフェスに透過色指定できるから、透過色を決めておけばBMP
のピクセル列からスプライトも作れるよ。
376login:Penguin:02/04/06 10:00 ID:Zy9CkOgp
>>371
折れは、>>375に加えて、スプライト管理関数みたいなの
つくって管理してる。

put_sprite(surface1,x1,y1);
put_sprite(surface2,x2,y2);
.
.
.
flush_sprite();
こんな感じ。

put_sprite()でSDL_Surface *sp[]に並べていく。
flush_sprite()で実際にscreenに背景と重ねてから
SDL_BlitSurface()してSDL_Flip()する。
377login:Penguin:02/04/07 00:14 ID:YTBbGOwM
>>374
最初にそれはチェックしてましたがWinだと依存問題もあると辛い..
当分は基本ライブラリでなんとかやってみます.でもサンクスコ.

>>375,376
お陰でアニメーションも作れそうです,サンクス!

SDL_Flip使ってるって事はSDL_DOUBLEBUFとSDL_HWSURFACEをSDL_SetVideoModeでフラグ
で入れてるんだよね?
うちのはそれセットしてもSDL_VideoInfo()->hw_availableが1にならんからセットせず
にSDL_UpdateRect使ってるんだけど...


378login:Penguin:02/04/07 00:19 ID:iVBGD2/e
>>377
そういう状態ならSDL_Flip()は、
SDL_UpdateRect(screen,0,0,0,0);
と同じように振舞うはず。# とバカ一代の記事にかいてあった。

HWSURFACEとかがダメなのは、XFreeとSDLのコンパイル時の問題かな?
それとも、rootで実行するとOnになったりしない?
379login:Penguin:02/04/07 00:23 ID:iVBGD2/e
あと、SDL_Imageは、本当にラクだよ。
ImageMagickのconvertコマンドとかでフォーマット変えてからでも
いいけど、やっぱPNGとか直で使えるのはラク。
a_surface = Image_Load("filename.png");
だけで、フォーマット自動認識だし。
380login:Penguin:02/04/07 03:51 ID:cLABCWjB
荒らしに屈服しつつある格闘技板のバナー作ってくださる方募集中です。。
http://sports.2ch.net/test/read.cgi/k1/1017934497/l50
381login:Penguin:02/04/10 11:30 ID:Ps++pzgz
linuxにDelphi入れて使ってる奴いる?
すごく簡単らしいんだが..
382login:Penguin:02/04/10 13:06 ID:Ce64lgBn
Linux に Delphi?
ネタですか?マヂですか?
383login:Penguin:02/04/10 13:22 ID:1o5n4Lts
>>381
kylic?
384381:02/04/10 15:36 ID:Z/tOe28B
間違えた,s/Delphi/Kylix/で.

385login:Penguin:02/04/10 17:48 ID:h8Vq7GPe
Delphi とおんなじだよ〜ん。
Glade より20倍楽! Qt より(以下略
Object Pascal 覚えなくちゃいけんけどねぇ。
386login:Penguin:02/04/10 18:03 ID:Ce64lgBn
Kylix 新規プロジェクト作成かなんかでアドレス違反とか逝ってくるから消し
ちゃった。。。インストール失敗してたのかなぁ。。。
387login:Penguin:02/04/10 18:41 ID:h8Vq7GPe
まだまだ不安定だよね。 > Kylix
Ver3 くらいで安定するかな?
Ver1 をだましながら使ってた。RH7.1
388login:Penguin:02/04/11 00:20 ID:rg7n5KP/
>>387
そーなのかな?
Kylix2だけど、とりあえず変な落ちかたとかしたことないよ。
まだ使い込んでないけど。
389login:Penguin:02/04/11 00:21 ID:rg7n5KP/
ちなみに、Plamoで使ってる。
setup.shが変なとこで止まるから、ちょこっと手を加えて
インストールした。
390login:Penguin:02/04/13 05:49 ID:6ipwzKQ/
SDL_mixer.hに逃げてやっとWavを再生でけた.
SDL.hだけで音再生はサウンドプログラム未経験の自分には敷居が高すぎた.
391login:Penguin:02/04/13 12:25 ID:5DTUvdcX
>>390

SDLのサウンドは、バッファを自分で埋めたり初期設定が少し面倒そう
だけど実際にやってみると「waveのメモリイメージを鳴らす」程度なら
意外に簡単でした。「リアルタイムにサウンドバッファを埋めバッファ
を再生する」仕組みが最初から準備されている分、サウンドプログラミ
ングの入門にも適しているかも。
392login:Penguin:02/04/13 13:27 ID:5dKKtM8/
>>391
最初はSDL_LoadWAV使ってやろうと試みたが鳴らなかったよ.
その後,Mixerの存在を知り
Ada氏のページやhttp://www.kekkai.org/roger/sdlに行ってやっとできた.
原因を調べた所,イベントで音が鳴るようにしてたんだが
SDL_QUITイベントの所で処理しようとしたのが駄目だったよう.
SDL_KEYUPイベントの所で処理したならMixerライブラリ使って成功したから.
とりあえずもう一回やってみるよ.
393login:Penguin:02/04/14 12:11 ID:q7gMr4rA
>>391
うーん、単音ならいいんだけど、複数音をまぜようとすると、
やはり自前で音つくらないといけないし...
効果音として、A.wav を再生中、A.wavが再発声するときは
mixせずに再生バッファクリアしてA.wav再生、B.wavが
発声するときは、再生中のA.wavにB.wavをmixするようなときって、
どうやる?
ALSA直叩きしていたときは、再生バッファの明示的なクリアや
バッファ残り量を得ることができたらから、

1 A.wav再生中のバッファ残り量をはかる
2 A.wavの残り部分とB.wavをmix
3 再生中のバッファクリア
4 mix.wavを再生
みたいにやってたんだけど、SDLだけできるかな。
やっぱり、サウンド管理用のスレッドをわけないと厳しい?

# SDL_Mixer使って、
# 同じチャンネルで発声→バッファクリア
# 別チャンネルで発声→自動mix
# で幸せ状態なんだけどね。
394login:Penguin:02/04/17 17:26 ID:AZ3pwp4s
(n)cursesの質問

printw()系の関数って横幅がウインドウに納まらなかったときは右端で
折り返すけど,日本語(2バイト文字と呼ぶのが正しい?)の1バイト目が
丁度右端に来たときも,何も考えずに2バイト目を次行に送って文字化け
する.なにか回避方法ってある?

printw()以外にもnewwin()で作ったウインドウが日本語に重なると
文字化けするよな…….

Laser5 Linux7.2使ってます.関係ないと思うけど…….
395login:Penguin:02/04/17 23:34 ID:Jy3zu4ia
うちのncursesのmanには、
The following EXTENDED XSI Curses
calls in support of wide (multibyte) characters are not
yet implemented:
とかかいてあるけど...
現状だと、単に2byte文字が通るだけであって、いろんな面倒は
自前でみてあげないといけなさそうだねぇ。
396394:02/04/23 20:57 ID:Gza+0AGc
>395 しょぼーん.やっぱそうなのか・・・

ところで日本男児Linuxer諸兄は,コンソール指向(ってなんだ)の
プログラム組むとき,どんなライブラリ使ってるの? 教えてちょ.

できれば
・ダイアログ
・メニュー
・ボタン
とかのありがちな処理ができるライブラリがあればいいんだけど・・・
394の質問も,ダイアログを実装するためのものです・・・
397login:Penguin:02/04/23 22:19 ID:2oWGHR/n
うーん、コンソールでダイアログ使わないなぁ。
dialog系のコマンド使ってshellscriptってのはダメ?
いろいろ派生物があるみたい>dialog。
中には、日本語通るのもきっとあるだろ。

折れは、bashでread 使ったものにするか、Xdialog使うなぁ。
# ruby使ってるときも、Xdialogは便利。
398login:Penguin:02/04/23 23:35 ID:zzZ2k7Bu
あげとこう。
399login:Penguin:02/04/24 06:41 ID:xMehvO0d
X windowで半透明の窓はつくれますか?
400login:Penguin:02/04/24 09:52 ID:VsqRyC8Y
>>339
「つくれるかどうか」でいったら、「つくれる」。
でもX11の機能としては、無い。自前で実装か、ライブラリさがさないと
だめだと思う。

Etermのソースでも漁ってください。