問題タブ [gnucobol]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
cobol - 非常に単純な COBOL プログラムで OCCURS を使用するとエラーが発生する
これは、OCCURS を使用して変数を宣言している私のコードです。
エラー:
arrayex.cbl:12: エラー: レベル 77 アイテム 'WS-FIRSTARR' には OCCURS 句を含めることはできません
コンパイルが失敗する理由はありますか?
cobol - OpenCOBOLを始めよう!("こんにちは世界!")
非常に単純な COBOL プログラムを作成しようとしています。ディレクトリ、構成などをすべてセットアップしましたが、コンパイルしようとすると次のエラーが発生します。
(「sampleCOBOL.cbl」は私のファイル名です)
これは私のファイルに含まれるものです:
行番号 9 ("Stop Run.") でエラーが発生していることはわかっています。しかし、なぜですか?
unix - configure: エラー: gmp.h (GMP) が必要です
open-cobol をインストールしようとすると、./configure を実行すると、最後に次のエラーが表示されます。
それから私はこれをします:
しかし、私はこれを得ました:
ubuntu - 最近のUbuntuでのみ、GnuCOBOLが動的シンボルを見つけることができません
最近、何かが変わったと思います。
GnuCOBOL は動的リンクに依存しており、シンボルは実行時に dlsym で検索されます。この CALL ランタイム サポート コードは、OpenCOBOL で約 7 年間使用されています。Ubuntu 14.04 では動作しなくなりましたが、Fedora 19/20 では動作します。
ldd は、-l を使用してリストされたライブラリを表示しなくなりました
たとえば、テストとして、Ubuntu 14.04.1
次の COBOL プログラム
バイナリには、libgtk-3.so が混在しているという兆候はありません。
次に、Fedora 20、同じバージョンのコンパイラー (ncurses の代わりに ncursesw を見つける、わずかに異なるビルド - これが当面の問題の一部ではないことを前提としています)
Ubuntu で生成された C コード (GnuCOBOL は C 中間体を使用)
そしてFedora
gtk_init が cob_resolve に渡される文字列としてではなく、C から呼び出されると、Ubuntu (完全な ELF リンケージ ヒント) で良い結果が得られます。gcc -o simple simple-gtk.c -lgtk-3 でテスト済み
では、-llibname を取り巻く前提で何が変わったのでしょうか? わざわざ libgtk-3.so を探しても dlopen の ELF データには含まれていないようです。
詳細情報: Ubuntu で誤ったコンパイル行があると、これが機能しているように見えます。(スペルミスgtk)
それでも、正しいコンパイル行では、ELF は gtk-3 へのリンケージのヒントを示していません。
私はこれについてしばらくの間、頭を悩ませてきました。Ubuntu と gcc および/または ld および/または dlopen dlsym でどのような仮定が変更されたかについてのヒントを探しています。
open-cobol パッケージは、Debian および Ubuntu のリポジトリで数年前から機能しています。Ubuntu 上の GnuCOBOL (GNU Cobol または OpenCOBOL) の古いバージョンでさえ、すべて失敗します。何かが変わって、メモを取得できませんでした。コンパイラのソースを変更したいと思っていますが、最初にフレンドリーな StackOverflow の洞察を探しています。
この Ubuntu の問題は他の環境でも発生しているため、これはローカル環境の問題ではないようです。これも DOH の 1 つのように感じます。問題を簡単に修正できます。
コンパイル ログ、LD_DEBUG=all ダンプ、または strace などを追加したいと思っています。
cobol - COBOL で文字列内の部分文字列を検索する
私の問題は、ファイルから読み取った変数が与えられた場合、それが別の文字列を含むか一致するかどうかを確認することです。
言い換えれば、変数が
ブラッドピック X(30)
キーボードによって導入された文字列に一致するか、それを含みます。
この問題は INSPECT 命令によって解決されると確信しており、コードで次のようなことを試しました。
CITY は、キーボードから導入する変数です。
「文字列」から「部分文字列」を見つける方法を知っている人はいますか?
たとえば、"Zaragoza" を導入した場合、プログラムは、変数 BBRADD に "Zaragoza" が含まれるファイル内のすべてのレコードを出力する必要があります。
cobol - Mac Yosemite 10.10.2 で COBOL プログラムをコンパイルする
COBOL コードを実行している間:
エラーが発生します:
(今日、)GnuCOBOLをrootとしてインストールしました