Saya mencoba untuk memodifikasi beberapa file Autotool karena proyek tidak menghormati saya CFLAGS
, CXXFLAGS
dan LDFLAGS
. Saya menemukan beberapa area di mana saya bisa melakukan perubahan dengan grep
for libtool: link
. Ketika saya men-tweak file Autotool:
$ sed -i "" 's|$CC -dynamiclib|$CC -dynamiclib -force_cpusubtype_ALL|g' configure configure.ac
Hasilnya:
WARNING: 'aclocal-1.14' is missing on your system.
You should only need it if you modified 'acinclude.m4' or
'configure.ac' or m4 files included by 'configure.ac'.
The 'aclocal' program is part of the GNU Automake package:
<http://www.gnu.org/software/automake>
It also requires GNU Autoconf, GNU m4 and Perl in order to run:
<http://www.gnu.org/software/autoconf>
<http://www.gnu.org/software/m4/>
<http://www.perl.org/>
make: *** [aclocal.m4] Error 127
touch -t 19700101 configure.ac
tidak menyelesaikan masalah.
Saya menggunakan sistem OS X lama, dan tidak memiliki alat yang diinginkan oleh alat. Saya membuka sed(1)
halaman manual , tetapi saya tidak melihat opsi untuk menghemat waktu file.
Bagaimana cara saya menginstruksikan sed
untuk menghemat waktu file?
sed -i '.bak'
saya pikir tidak menyimpan file tetapi mendukungnya. Tetapi bagaimana dengan sed tanpa -i dan menggunakan redirectsed "s/a/b/" >file.b
atau hanyacat file1|sed "s/a/b/"
ataused "s/a/b/" file.a
Mereka membuang ke layar. Hanya sed -i yang akan menimpa file asli.Jawaban:
sed
tidak mungkin melakukan itu dalam implementasi apa pun. Perintahmemberitahu
touch
untuk mengatur cap waktu ke tanggal palsu (karena hanya 8 digit yang diberikan) menggunakanAnda mungkin berniat
(8 digit untuk 19700101, ditambah 4 digit lebih banyak untuk 0000), meskipun Anda dapat mengalami masalah zona waktu dengan itu. Bagaimanapun, tidak mungkin mengatur ulang stempel waktu file sejauh ini diperlukan. Saya hanya akan mengatur ulang ke nilai asli.
Sebagai contoh (saya biasanya melakukan ini dengan cpd ), orang dapat menulis skrip untuk menyalin stempel waktu dari file asli ke file yang diedit. Berikut ini contoh skrip yang berfungsi untuk OSX:
Cukup menarik (baris-perintah
stat
yang tidak standar), versi OSX daristat
lebih cocok untuk aplikasi tertentu daripada Linuxstat
. Untuk Linux, satu mungkin melakukan sesuatu yang mirip dengan mendapatkan cap dari sebuahls -l
daftar, dan menggunakan non-standar-d
pilihantouch
untuk menerapkan cap waktu.sumber
touch [-A [-][[hh]mm]SS] [-acfhm] [-r file] [-t [[CC]YY]MMDDhhmm[.SS]]
. I (pikir) saya memberikanCC
,YY
,MM
danDD
.