/var/log

技術系のあれこれ。※内容は個人の発言であり、所属する組織を代表するものではありません。

OpenCOBOL

Finkを使って導入したものの...


コンパイルをしようと思うと

$ cobc copy.cob 
Abort trap


となって実行ファイルが生成されないorz

同じソースを
ubuntuコンパイルするとウマくいく.



OpenCOBOLのバージョンがfinkの方が古いから?とおも思うけど
原因はどうもそれだけでないと思う.

時間があったら調べてみる事にします.





ちなみに
こんなソースを書いてました

000010 identification division.
000020 program-id. p000nnnnn.
000030 
000040 environment division.
000050 input-output section.
000060 file-control.
000070*     select i-shain-file assign to p000in1
000071      select i-shain-file assign to "./p000in1"
000080        organization line sequential.
000090*     select o-shain-file assign to p000ot1
000091      select o-shain-file assign to "./p000ot1"
000100        organization line sequential.
000110
000120 data division.
000130 file section.
000140 fd i-shain-file.
000150 01 i-shain-rec.
000160    05 i-scode         pic x(4).
000170    05 i-namae         pic x(10).
000180    05 i-shozoku       pic x(2).
000190 01 o-shain-rec.
000200    05 o-scode         pic x(4).
000210    05 o-namae         pic x(10).
000220    05 o-shozoku       pic x(2).
000230
000240 working-storage section.
000250 01 eof-flag           pic x(1).
000260
000270 procedure division.
000280 main-rtn section.
000290    move "0" to eof-flag
000300    open input   i-shain-file
000310         output  o-shain-file
000320    read i-shain-file
000330      at end move "1" to eof-flag
000340    end-read
000350    perform until eof-flag = "1"
000360      move i-scode to o-scode
000370      move i-namae to o-namae
000380      move i-shozoku to o-shozoku
000390      write o-shain-rec
000400      read i-shain-file
000410        at end move "1" to eof-flag
000420      end-read
000430    end-perform
000440    close i-shain-file
000450          o-shain-file
000460     stop run. 


うーん...単純に

000100* Sample COBOL program
000200 IDENTIFICATION DIVISION.
000300 PROGRAM-ID. hello.
000400 PROCEDURE DIVISION.
000500 DISPLAY "Hello World!".
000600 STOP RUN.

だと問題ないのですがねー

謎です.