問題タブ [m4]
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.
macos - OSX autotools: `aclocal.m4' が `autom4te' によって出力されない
freetype2
数週間、OSX Mavericks でライブラリを構築しようとしましたが、成功しませんでした。
問題は、ビルド スクリプトGNU Autotools
の作成に使用することです。configure
、、、およびmacportsコマンドを使用してインストールautomake
しました。autoconf
libtoolize
m4
perl5
port
を実行すると、 Autotools マクロを含むディレクトリにaclocal
ファイルが作成されるはずです: . ただし、このファイルは出力されておらず、後続のおよびコマンドは偽のスクリプトを生成しています。configure
aclocal.m4
glibtoolize
autoconf
configure
結果は次のとおりです。ファイルはなく、生成されたファイルの先頭にaclocal.m4
通常の内容./autom4te.cache/traces.*
がダンプされconfigure
ます (traces.*
ファイルは空です)。
例えば:
どんな助けでも大歓迎です。
unix - m4 テンプレートを使用してファイル名をテンプレート化する
m4 テンプレートを使用して物事をテンプレート化するプロジェクトがあります。私がする必要があるのは、m4 ファイルのパラメーターに基づいて実際にファイルを作成することです。ファイルの内容は変わりません。
だから、私はこれを持っているとしましょう:
DEV.m4
フィルター.テンプレート
ファイルを作成する必要があります:
filter_%%A_NODE%%_%%A_NODE_PORT%%.cfg と filter.template のデータ
m4内で可能ですか、それともスクリプトコードを書く必要がありますか?
assembly - ARM Cortex-M4、UART_DR および FIFO を使用した読み取り/書き込み
だから私は ASM を学んでいて、LM4F120XL ARM Cortex-M4 MCU を持っています。Keil uVision V4.54 を使用しています。
ポートの設定など、GPIO と UART の初期化に精通しています。
私が行き詰まっているのは、たとえば、シリアル経由で TeraTerm/Putty に読み書きすることです。
RxFE = 0、FIFO が空ではないことを理解しています - そこから読み取ります。および TxFF = 0、FIFO がフルではない - 書き込みます。
しかし、これらの条件を比較して満たした後、実際にUART_DR、データレジスタに書き込むデータは何ですか..? それは単にデータレジスタをレジスタにロードし、このアドレスの値を別のレジスタにロードするだけの問題ですか?新しいデータを追加しているビットを変更していないため、失われます。このレジスタはデータ レジスタ レジスタに戻されます。
したがって、データレジスタにデータが存在する場合、やがてそれは渡されます..? 正しい COM ポートを使用して TeraTerm に接続し、BAUD と PARITY の設定を調整できます..しかし、データ レジスタにデータが存在する場合は、適切なサイクルの後、自動的に送信されます..?
また、キーボードから文字を読み取るのはどうですか..?または他のコンピュータ周辺機器..それは問題ですか-アドレスを知って、値をレジスタにロードしてから、データレジスタに格納しますか? Data-Register がデータを保持している場合、これは非破壊的に行う必要があります。
MCU コーディングに関するすべての記事が ASM ではなく C++ で書かれているのはなぜですか? 私はC++も学んでいますが、アセンブリ/マシンコードを誰も使用しない理由がわかりません..
;------
ReadChar
inloop LDR R0, =UART_FR LDR R1, [R0] AND R1, #0x10 CMP R1, #0x0 BNE インループ
;------
OutputChar
outloop LDR R0, =UART_FR LDR R1, [R0] AND R1, #0x20 CMP R1, #0x0 BNE outloop
;------
autotools - 「configure --help」の「Help」文字列変数置換
の出力に複数回使用したい文字列がありますconfigure --help
。だから私はこのようなことをやってみますconfigure.ac
:
ただし、展開や置換は行われないため、出力は$foobar_help_str
.
linux - autoconf および sysvinit/systemd など
私が遭遇する絶え間ない問題autoconf
は、init スクリプトです。の全体的なポイントautoconf
はもちろん移植性であり、さまざまなinitシステム(sysvinit、systemd、upstart)-異なるディストリビューション上の同じinitシステム間のさまざまな違いは言うまでもありません(/etc/init.d
vs /etc/rc.d/
vsなど/etc/rc.d/init.d
)-移植可能な開始/停止を求めていますスクリプト ソリューション。
誰かがこれを処理する素敵な m4 マクロを作成したのではないかと思いましたが、見つかりません。
これはよくある問題のように思われるため奇妙です。また、C++11 の互換性やその他の問題など、より新しい問題を検出するための m4 マクロも用意されています。
したがって、袖をまくり上げて、使用する init システムを決定しようとする (できれば) 適切な m4 マクロを作成する前に、他の誰かが既にそれをより適切に行っているかどうかを知りたいと思います。Google で何も見つからないようです。また、init スクリプトのインストールに実際に使用することを思いとどまらせる投稿を読んだこともあります。autoconf
個人的には、感情は単純に非現実的だと思います。最近のユーザーは、init スクリプトを自動的にインストールするパッケージ マネージャーに慣れているため、ソースからコンパイルするときに同じ結果が得られない理由はありません。
それで、これを処理する優れた m4 マクロが既にありますか、それとも時間をかけて自分で作成する必要がありますか?
m4 - マクロに渡された空でない引数の数
GNU M4 で、渡された空でない ( と等しくない引数) の数を決定する関数を作成しようとしまし`'
た。
次のように呼び出し可能であるはずです:
最初の引数は常に であることに注意してください0
。
これまでに得たコードは次のとおりです。
そして、これがその擬似コードです:
の定義で何が間違っているのかわかりませんne_nargs
。マクロの一部を抽象化するいくつかの異なる方法を試した後、あきらめる準備ができています。
latex - GNU m4 マクロ自動生成ファイル
いくつかの変更を加えたいラテックスパッケージをダウンロードしましたが、このパッケージには include.m4 ファイルが存在し、それが何をするのか、どのように生成されたのかわかりません。ここにその行があります:
どのツールで生成されたか説明できますか?
なるほど。このファイルは自動生成されませんか? Aそして、Makefile からのこれらの行を理解するのを手伝ってくれませんか:
そしてルール:
私が見ることができるように、GNU m4 オプション '-D' は .sty .cls ファイルのマクロ m4_ESKDX_INIT を m4_include(../include.m4) に置き換え、オプション '-P' は最初にファイル include.m4 を展開し、さらにインクルード内のマクロを展開します。 m4。
bash - configure.ac ファイルのバシズムを理解する
プロジェクトの configure.ac ファイルの一般的なパターンを理解しようとしています。これは、解析に苦労しているバシズムであることは間違いありません。次に例を示します。
その意図は、OTHERFLAG の内容によって LDFLAGS の現在の値を拡張することであると思われます。どちらかを書く方が簡単なようです:
bash マニュアルの関連セクションには、次のように記載されています。
ここで何か防御的なことが起こっていると思いますが、正確にはわかりません。
php - Windows で PHP をビルドし、bison を発行する
さて、私は Windows で PHP をビルドしようとしています。これまでのところ、このガイドにほぼ完全に従っていますが、修正方法がわからない奇妙なエラーに遭遇するまで: https://wiki.php.net/internals/windows /stepbystepbuild
エラー: ファイル c:/progra~1/bison/share/bison/m4sugar/m4sugar.m4 を開けません: そのようなファイルまたはディレクトリはありません nmake: 致命的なエラー U1077: D:\Development\Microsoft Visual Studio\VC\Bin\amd64\ bison.exe: リターン コード '0x1'
エラーメッセージの意味は何ですか? どうすれば修正できますか?ありがとう。