bismon (นี่คือชื่อ ชั่วคราว ) เป็น จอภาพแบบถาวร ซึ่ง (ในอนาคต) จะโต้ตอบกับปลั๊กอินคอมไพเลอร์ GCC มันเป็น (หรือจะกลายเป็น) ผู้สืบทอดโครงการ GCC Melt เก่าของฉัน เป้าหมายระยะกลางคือการวิเคราะห์ซอร์สโค้ดโปรแกรมแบบคงที่ด้วยความช่วยเหลือของ GCC ที่เก็บซอร์สโค้ด (gplv3+ ใบอนุญาต) อยู่ที่ https://github.com/bstarynk/bismon .. ของฉัน (Basile starynkevevitch, จ้างงานที่ CEA, รายการในฝรั่งเศส) ทำงานกับ bismon ของซอฟต์แวร์ IoT บางชนิดที่เข้ารหัสใน C หรือ C ++ และ (ข้าม) รวบรวมโดย GCC บนเดสก์ท็อป Linux บางแห่ง ในปี 2562 - 2564 การพัฒนา bismon ได้รับทุนบางส่วนจากโครงการถอดรหัส H2020 ภายใต้ข้อตกลงการให้สิทธิ์ 824231 (เกี่ยวข้องกับ การตรวจสอบความรู้ถาวร WP1)
ปัจจุบัน (เริ่มต้นของปี 2021) bismon ยังคงอยู่ในขั้นตอน เบต้า และเป็น ซอฟต์แวร์ฟรี ภายใต้ใบอนุญาต GPLV3+ มันมีไว้สำหรับเวิร์กสเตชันของนักพัฒนาเดสก์ท็อป Linux x86-64 (จะไม่ทำงานบน Windows หรือ MacOSX หรือ Android)
เอกสารบางอย่าง ยังไม่สมบูรณ์ (เป็นรายงานทางเทคนิค doc/bismon-doc.pdf ใน PDF) สามารถสร้างขึ้นได้ (ด้วย make แล้ว make doc ; คำสั่งนั้นต้องการให้คุณมี $HOME/tmp/ ไดเรกทอรีที่เขียนได้) ฉบับร่าง (ไม่เป็นทางการ) ของรายงานนั้นอาจมีอยู่ใน http://starynkevitch.net/basile/bismon-doc.pdf
ในขณะที่ Bismon ได้รับการสนับสนุนจากโครงการ H2020 ที่มี เป้าหมาย การวิเคราะห์แบบคงที่โปรด สังเกตว่า Bismon อาจจะเป็น ผู้ใหญ่มากขึ้นหลังจากปี 2024- อาจใช้งานได้เป็น กรอบ ทั่วไป ที่ มี การอ่านเพิ่มเติม จิตสำนึกของเครื่องจักรที่มีสติ , ISBN: 978-1848211018), สภาพแวดล้อมกราฟิกที่มีลักษณะคล้ายเดสก์ท็อปที่ซับซ้อน, เครื่องมือซอฟต์แวร์การทำงานร่วมกันบนเว็บแบบอินเทอร์แอคทีฟจำนวนมากที่ใช้กันโดยทีมงานหรือฐานข้อมูลวัตถุหรือปัญหาที่เกี่ยวข้อง เนื่องจาก Bismon เป็น GPLV3+ ที่ได้รับใบอนุญาตซอฟต์แวร์ในอนาคตใด ๆ ที่ใช้มันควรจะเป็น IMHO ซึ่งเป็น GPLV3+ (แต่แผนการออกใบอนุญาตอื่น ๆ อาจเป็นไปได้โปรดติดต่อฉันที่ [email protected] ต่อไป
[Strike Strike Fighter Air Vehicule C ++ มาตรฐานการเข้ารหัส] (https://www.stroustrup.com/jsf-av-rules.pdf)
[ข้อยกเว้นการกำหนดค่าศูนย์การปกครอง: ค่าการโยน] (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2019/p0709r4.pdf)
[C ++ มาตรฐาน, เอกสาร 2021] (http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2021/)
พัฒนา ภาษาเฉพาะโดเมน ระดับสูง (แสดงออกมากขึ้นและมีการประกาศมากขึ้น) เพื่ออำนวยความสะดวกในการวิเคราะห์รหัสแหล่งที่มาของโปรแกรมแบบสแตติกเหนือ GCC และ สร้าง ปลั๊กอิน GCC สำหรับมันแรงจูงใจเดียวกันกับ GCC ละลาย (และที่เกี่ยวข้องกับแรงจูงใจในวงกว้าง
คุณสมบัติและเป้าหมายที่สำคัญของภาษาเฉพาะโดเมนและการใช้งานรวมถึง:
การคงอยู่ของมุมฉาก; นี่เป็นคุณลักษณะ ที่สำคัญ (มีประโยชน์สำหรับการวิเคราะห์ซอร์สโค้ดของ โปรแกรมทั้งหมด ของโปรแกรมที่วิเคราะห์ซึ่งทำจากหน่วยการแปล หลาย หน่วยซึ่งรวบรวมอย่างอิสระ) ซึ่งไม่สามารถเพิ่มได้อย่างสมจริงกับ GCC Melt ดังนั้นจึงต้องมีการออกแบบใหม่ที่สมบูรณ์ กระบวนการ bismon คาดว่าจะมีอายุการใช้งานที่ค่อนข้างยาวนานเช่น-และเก็บข้อมูลส่วนใหญ่จากการวิ่งหนึ่งไปยังอีก (ใน store*.bmon ไฟล์ข้อความ) ในอนาคตกระบวนการ bismon จะสื่อสารกับกระบวนการรวบรวม gcc หรือ g++ (Cross-) (ใช้ปลั๊กอิน GCC บางตัวที่จะสร้างโดย bismon เอง)
การพิมพ์แบบไดนามิกเช่นใน Python, Scheme, Ruby, JavaScript, ... (และละลายอย่างใด)
มัลติเธรด แต่ไม่มีกิลใด ๆ พูลด้ายขนาดเล็กของด้ายคนงานมักจะมาพร้อมกันและพร้อมกันในการดึงงานจากวาระการประชุมระดับโลก แต่ละงานทำงานอย่างรวดเร็ว (มิลลิวินาที) ในบางเธรดคนงานและสามารถอัปเดตวาระการประชุม (เช่นโดยการเพิ่มตัวเองให้ดำเนินการต่อ)
สะท้อนกลับ
เกี่ยวกับ homoiconic
เก็บขยะอย่างแม่นยำ
ประกาศด้วยการจับคู่รูปแบบที่ดีและกฎระเบียบกฎระเบียบ
Bootstrapped และรวบรวมเป็น C อาจบางส่วนโดยใช้ GCCJIT
ดังนั้น metaprogrammed
การสร้างปลั๊กอิน GCC (ใน C ++) ซึ่งจะโต้ตอบกับ bismon โดยกลไก RPC บางอย่าง
ขอให้สังเกตว่าไวยากรณ์และความหมาย (ยังไม่มีเอกสาร) ของ bismon ทำงานอยู่ระหว่างดำเนินการ และอาจมีการเปลี่ยนแปลงอย่างไม่อาจ จำกัด ได้
เมื่อ bismon จะเสร็จสิ้นเพื่อให้สามารถใช้งานได้โดยทั่วไปแล้วทีมนักพัฒนาซอฟต์แวร์ขนาดเล็กที่ใช้ร่วมกันในโครงการซอฟต์แวร์ (สามัญ) ส่วนใหญ่เขียนไว้ใน C หรือ C ++ (และควรเป็นโครงการซอฟต์แวร์ฟรี)
bismon ส่วนใหญ่อยู่ใน C99 หรือ C11 (รวมถึงจำนวนรหัส C ที่สร้างขึ้น ภายใต้ modules/ ) แต่รหัสที่เขียนด้วยมือบางส่วนอยู่ใน C ++ 14 (โดยเฉพาะ misc_BM.cc และ BM_makeconst.cc Metaprogram สร้างส่วนหัว C)
บน Linux/x86-64 (เช่น Debian/ไม่เสถียรหรือบัสเตอร์หรือ Ubuntu 18 หรือ 19 ล่าสุด) เท่านั้น (โดยไม่มีแพทช์หรืองานเพิ่มเติม Bismon จะไม่ทำงานบนเครื่อง 32 บิต!)::
คุณควรจะสามารถรวบรวมแพ็คเกจซอฟต์แวร์โอเพ่นซอร์สจำนวนมากสำหรับซอร์สโค้ดของพวกเขา คุณควรมีระบบ GNU/Linux ล่าสุดที่มีรูท acesss โดยเฉพาะอย่างยิ่ง 32Gigabytes หรือมากกว่าของ RAM โปรเซสเซอร์ X86-64 บางตัวที่มีอย่างน้อย 4 คอร์และอย่างน้อย 250GBYTES ของพื้นที่ดิสก์ฟรี คุณคาดว่าจะคล่องแคล่วกับอินเทอร์เฟซบรรทัดคำสั่ง Linux และเชลล์ Unix เช่น GNU Bash หรือ ZSH คุณควรจะสามารถและได้รับอนุญาตให้รวบรวม GCC 10 หรือดีกว่าแม้กระทั่ง GCC 11 จากซอร์สโค้ดและคุ้นเคยกับบรรณาธิการซอร์สโค้ดเช่น GNU Emacs, Vim, Geany ฯลฯ ... คุณสนุกกับการอ่าน SICP
ดูเพิ่มเติมที่การพึ่งพาไดเรกทอรีและการพึ่งพาอาศัยตัวอ่าน - อาจไม่ได้รับการอัปเดต
GCC ล่าสุด (SO GCC 10 หรือ ดีกว่า GCC 11 ... ) ด้วยการรองรับ C และ C ++ และ JIT และปลั๊กอินที่เปิดใช้งาน (ตรวจสอบด้วย gcc -v ; หากระบบของคุณ gcc และ g++ ขาดการสนับสนุนปลั๊กอินและ libgccjit คุณควรสร้างและติดตั้ง GCC ล่าสุดจากซอร์สโค้ด ไม่สามารถใช้ GCC เก่า (เช่นเวอร์ชัน 9 หรือเร็วกว่า)
'/usr/src/Lang/gcc-11.1.0/configure' '-v' '--prefix=/usr/local' '--with-gcc-major-version-only' '--program-suffix=-11' '--enable-shared' '--enable-linker-build-id' '--enable-nls' '--enable-bootstrap' '--enable-clocale=gnu' '--enable-libstdcxx-debug' '--enable-libstdcxx-time=yes' '--with-default-libstdcxx-abi=new' '--enable-gnu-unique-object' '--disable-vtable-verify' '--enable-plugin' '--enable-default-pie' '--with-system-zlib' '--enable-libphobos-checking=release' '--with-target-system-zlib=auto' '--enable-objc-gc=auto' '--enable-multiarch' '--disable-werror' '--with-arch-32=i686' '--with-abi=m64' '--with-multilib-list=m32,m64,mx32' '--enable-multilib' '--with-tune=native' 'CFLAGS=-O2 -g' 'CXXFLAGS=-O2 -g' '--enable-host-shared' '--enable-languages=c,c++,d,go,jit,lto' ....Python 3 ล่าสุดที่ติดตั้ง PIP
เอกสารต้องการ A /usr/bin/mipsel-linux-gnu-gcc-8 -compiler ที่จัดทำโดยแพ็คเกจ gcc-8-mipsel-linux-gnu Debian ระวังแพ็คเกจนั้นขัดแย้งกับแพ็คเกจ gcc-multilib* บน Debian
Ninja Builder, เวอร์ชัน 1.8 หรือใหม่เป็นสิ่งจำเป็น (และเริ่มต้นโดย make ) อย่าใช้อันเก่า (ตรวจสอบกับ ninja --version ; หากไม่ได้ผล ninja ของคุณเก่าเกินไป)
จำเป็นต้องมีล่าม Guile ล่าสุดเวอร์ชัน 2 หรือดีกว่า (ควรมี Guile 2.2) ฉันไม่รู้และไม่ชอบ Python และล่าม Guile คือ GNU, LGPLV3+และคุ้นเคยกับฉันมากขึ้น นอกจากนี้แนวคิดจากภาษา Lisp เช่นโครงการ (ภาษาที่ใช้โดย Guile ) มีความเกี่ยวข้องอย่างยิ่งกับการเข้าใจ Bismon ซึ่งมีการใช้ Guile เพื่อสร้างสคริปต์ build.ninja ที่ใช้โดยผู้สร้างนินจา
mailutils ที่เพิ่มขึ้นอย่างมีเล่ห์เหลี่ยมเมื่อเร็ว ๆ นี้นั่นคือ Debian mailutils-guile ที่ให้บริการ /usr/bin/guimb
GLIB 2.58 หรือดีกว่า (ซึ่งจำเป็นต้องใช้กับ GTK ด้านบน) เนื่องจากจำเป็นต้องใช้กิจวัตรระดับต่ำในระดับต่ำซึ่งเป็นสิ่งจำเป็นที่เกี่ยวข้องกับ UTF-8
Jansson 2.12 หรือดีกว่าเป็นสิ่งจำเป็นสำหรับ JSON (ใช้กับ WebSockets)
Libonion เป็นสิ่งจำเป็นสำหรับเว็บอินเตอร์เฟส แต่ถูกลบออกในเดือนมิถุนายน, 27, 2022, Git กระทำ a943cf687c748 หรือแท็ก no-more-ibonion-tag (โดยพิมพ์ผิด: หายไป l ) ก่อนที่การกระทำนั้นจะมองหาธง preprocessor BISMON_LIBONION
gnu ทำ 4 หรือดีกว่า
CCACHE ใช้เพื่อหลีกเลี่ยงการรวมตัวกันที่ไร้ประโยชน์ หากคุณไม่มีคุณจะต้องแก้ไข Makefile ของเราสำหรับการรวบรวมโมดูลที่สร้างขึ้น
libbacktrace - บางครั้งมันเป็นส่วนหนึ่งของระบบ GCC ของคุณ แต่คุณจะติดตั้งแยกต่างหากได้ดีกว่า (เช่นใน /usr/local/ คำนำหน้า) ของคุณ
จำเป็นต้องมี markdown สำหรับเอกสารบางอย่างเช่น README.md นี้
การเยื้อง GNU (2.2.x ในที่สุด) และ Astyle (อย่างน้อย 3.1) มีประโยชน์สำหรับ make indent ตอนนี้ จำเป็นต้องมีการเยื้อง indent โมดูลที่สร้างขึ้น
tardy (ไฟล์ postprocessor tar ) ใช้เพื่อสร้างเอกสาร
LaTex - น่าจะเป็น Texlive Suite หรือ Luatex- และยูทิลิตี้ที่เกี่ยวข้อง ( pdflatex , makeidx , bibtex ... ) ด้วย Inkscape และ Hevea และ Xindy เป็นสิ่งจำเป็นสำหรับเอกสาร
บน Ubuntu Debian/ไม่แน่นอนหรือล่าสุด apt-get install build-essential make ninja-build gcc-8 g++-8 gcc-8-plugin-dev libgccjit-8-dev ccache gcc-8-mipsel-linux-gnu inkscape hevea texlive-full xindy fonts-inconsolata ttf-ubuntu-font-family fonts-ubuntu ttfautohint guile-2.2 mailutils-guile สำหรับโครงสร้างพื้นฐานอาคาร ขอให้สังเกตว่า gcc-8-mipsel-linux-gnu เป็น MIPSEL GCC Cross-Compiler-มัน ขัดแย้ง กับแพ็คเกจ gcc-multilib* ; inkscape , hevea , texlive-full (Meta-Package ขนาดใหญ่ ), xindy , fonts-inconsolata , fonts-ubuntu , ttfautohint เป็นสิ่งจำเป็นสำหรับการสร้างเอกสาร
เรายังต้อง apt-get install libgtk-3-dev สำหรับ GTK 3 นี่อาจดึงการพึ่งพาจำนวนมาก
และ apt-get install libglib2.0-dev libjansson-dev สำหรับ Glib และ Jansson ที่ต้องการการพึ่งพา
libbacktrace ไม่ได้บรรจุอย่างอิสระใน Debian ฉันขอแนะนำให้สร้างและติดตั้งจากซอร์สโค้ดหรืออื่น ๆ (ไม่แนะนำ, แต่ทำได้) แก้ไข Makefile เพื่อใช้คอมไพเลอร์ระบบ GCC ของคุณ
libonion ไม่ได้บรรจุอย่างอิสระใน Debian
apt-get install markdown indent astyle tardy และ apt-get install texlive texlive-full hevea
dependencies/ ไดเรกทอรีย่อยใช้สำหรับ git submodule -s ที่เกี่ยวข้องกับ libbacktrace และ libonion
คุณอาจต้องเพิ่ม .mjs เป็นคำต่อท้ายหรือไฟล์ที่ถูกต้องสำหรับ application/javascript ประเภท MIME ในไฟล์ระบบ /etc/mime.types ของคุณ อ่านเกี่ยวกับโมดูล JavaScript บนเว็บและดูข้อบกพร่องของ Debian#927300
Run locale เพื่อ ให้แน่ใจว่าการแปลของคุณเป็นไปตาม Posix หรือภาษาอังกฤษ (อังกฤษหรืออเมริกัน) ใน UTF-8 (ไม่สามารถเป็นเช่นอิตาลีหรือกรีกหรือฝรั่งเศส) ดังนั้นควรเป็น POSIX หรือ C หรือ en_US.UTF-8 หรือ en_GB.UTF-8 คุณอาจต้องการตั้งค่าตัวแปรสภาพแวดล้อมของคุณอย่างเหมาะสม (อย่างน้อย LANG=en_US.UTF-8 และ LANGUAGE=en_US:en และ LC_ALL=en_US.UTF-8 โดยไม่มีตัวแปร LC_* อื่น ๆ ) ดู Locale (1), locale (7), UTF-8 (7), locale (5), setlocale (3) แต่อย่าขอให้ฉันเข้าใจรายละเอียดระหว่างประเทศและการแปลที่ละเอียดอ่อนเหล่านี้มากขึ้นหัวข้อนั้นซับซ้อน มาก หากคุณยังต้องการงานที่ต้องทำโดยฉันให้ส่งอีเมลถึงฉันที่ทำงานที่ [email protected] แต่อย่าคาดหวังว่าจะทำโดยฉันก่อนปี 2024
ส่วนขยายไฟล์ .mjs ใช้สำหรับโมดูล JavaScript หากไฟล์ /etc/mime.types ของคุณ (ใช้โดย libonion ) ไม่ทราบเกี่ยวกับมันคุณต้องเพิ่มบรรทัดต่อไปนี้ (บรรทัดแรกด้านล่างด้วยแฮช # คือความคิดเห็น; สิ่งสำคัญคือบรรทัดที่กล่าวถึง mjs )
# in your /etc/mime.types for JavaScript modules
application/javascript mjs
การสร้างเอกสารต้องการ $HOME/tmp/ ไดเรกทอรีที่เขียนได้
ควรได้รับการติดต่อที่รับผิดชอบหลักของมนุษย์ในไฟล์ contact_BM (ความคิดเห็นเริ่มต้นด้วย # ได้รับการยอมรับภายใน แต่ควรมีสายที่ได้รับแรงบันดาลใจจาก John Doe <[email protected]> ) ไฟล์นั้นควรอยู่ในไดเรกทอรีปัจจุบันหรือไดเรกทอรีบ้านของคุณหรือให้อย่างชัดเจนกับ --contact-file=PATH ไฟล์ ~/contact_BM ของฉันอาจเป็น:
# file $HOME/contact_BM
Bismon master (Basile Starynkevitch) <[email protected]>
git พิเศษ คุณอาจต้องการ (ปรับข้อเสนอแนะนี้และกำหนดหัวก้อนที่กำหนดเองของคุณ) เพื่อปรับปรุงเอาต์พุตแบบโต้ตอบของ git diff บน store*.bmon ไฟล์ข้อมูลถาวร บางทีสิ่งที่ได้รับแรงบันดาลใจจาก git config diff.bismon.xfuncname '"^«_[0-9A-Za-z_]*$"' อาจใช้งานได้ แต่ไม่ได้จริงๆ
โคลนพื้นที่เก็บข้อมูล git นี้ตามปกติและสร้างจากนั้นใช้ bismon ภายในต้นไม้ต้นทางที่ได้รับ
มองเข้าไปใน Makefile และแก้ไขหากจำเป็น บางทีการอัปเดต PREPROFLAGS= และ LIBES= lines เช่นการใช้ gcc libbacktrace ของระบบของคุณโดยการเพิ่ม $(shell gcc-7 -print-file-name=include) ลงใน PREPROFLAGS= line และ $(shell gcc-7 -print-file-name=libbacktrace.a) LIBES= แน่นอนแทนที่ 7 โดย 8 ถ้าเหมาะสม บางทีคุณอาจต้องตั้งค่า GCC= และ GXX= เป็นคอมไพเลอร์ GCC C และ C ++ เฉพาะของคุณ
เรียก make หรือ make -j3
กลไกการคงอยู่ถูกทดสอบโดย make redump
โปรแกรม ./bismon คือ (ชั่วคราว) ยังคงใช้ GTK และ Libonion เราต้องการกำจัด GTK มันเป็น symlinked เป็น bismongtk และ bismonion
อย่าลืมเรียกใช้ bismon , bismongtk หรือ bismonion ด้วย --help ในตอนแรกเพื่อทำความเข้าใจกับตัวเลือกโปรแกรมที่มีอยู่
bismon (อย่างน้อยเวอร์ชันเว็บ) จำเป็นต้องรู้เกี่ยวกับคุณ ดังนั้นคุณควรลงทะเบียนตัวเอง เพียงครั้งเดียว (และนั่นจะเติบโตสถานะถาวร) และ bismon ( bismonion มากขึ้น) มีแบบฟอร์มการเข้าสู่ระบบดังนั้นคุณควรมีรหัสผ่าน (เฉพาะกับ bismon ที่ไม่เกี่ยวข้องกับรหัสผ่านอื่น ๆ ที่คุณมี)
ก่อนอื่นคุณต้องเริ่มต้นไฟล์รหัสผ่าน ที่ว่างเปล่า (ไฟล์รหัสผ่านเริ่มต้นคือ ~/passwords_BM ; คุณสามารถระบุไฟล์อื่นในบรรทัดคำสั่ง) ดังนั้นเรียกใช้คำสั่ง touch ~/passwords_BM ในเทอร์มินัล (เชลล์) เพื่อสร้างไฟล์ที่ว่างเปล่านั้น จากนั้นคุณต้อง จำกัด การอนุญาต (อ่านได้และเขียนได้โดยผู้ใช้ UNIX ของคุณเท่านั้น) ด้วย chmod u+rw,go-rwx ~/passwords_BM ในที่สุดตรวจสอบกับ ls -ls ~/passwords_BM ว่าไฟล์นี้ว่างเปล่าและอ่านง่ายและเขียนได้โดยคุณเท่านั้น
จากนั้นคุณจะลงทะเบียนด้วยตัวเอง หาก Alan Turing เป็นชื่อหรือหลอกของคุณและ [email protected] เป็นอีเมลหลักของคุณโดยมีอีเมลรองของคุณกำลัง turing@localhost คุณสามารถเพิ่มตัว --batch ลงใน bismon โดยใช้มันด้วยสิ่งที่คล้ายกับ --contributor='Alan Turing;[email protected];turing@localhost' --dump-after-load=. ตัวเลือกโปรแกรม แน่นอนคุณควรแทนที่ Alan Turing , [email protected] และ turing@localhost โดยสิ่งที่เหมาะสมสำหรับคุณ อีเมลรอง (เรียกอีกอย่างว่านามแฝง) เป็นทางเลือก หากคุณไม่ได้ใช้มัน (ดังนั้นหากคุณไม่ได้ให้นามแฝงใด ๆ ซึ่งน่าจะเป็น - แทนที่ turing@localhost ด้วยสตริงที่ว่างเปล่า) bismon จะไม่รู้จักคุณมากกว่า git (ดู git config สำหรับ user.email และ user.name ) คุณอาจเขียนโค้ดสคริปต์บางตัวเพื่อดึงข้อมูลส่วนบุคคลนั้นจาก git และนำไปไว้ใน bismon
ในที่สุดคุณต้องตั้งรหัสผ่านของคุณ (ไม่เกี่ยวข้องกับรหัสผ่านอื่น ๆ ในคอมพิวเตอร์ของคุณหรือบนเว็บ แต่ควรมีอักขระ Unicode อย่างน้อย 10 ตัวและตัวเลขตัวอักษรการเว้นวรรค) ตามที่รู้จักกันใน bismon โดยใช้ตัวเลือก --batch --add-passwords --dump-after-load=. ในการตั้งค่ารหัสผ่านเริ่มต้นของคุณเป็น mypass!123456 สร้างไฟล์ข้อความชั่วคราว (มีชื่อผู้สนับสนุนและรหัสผ่านที่ --add-passwords=/tmp/addpassbismon --batch ของพวกเขาในข้อความ ที่ชัดเจน ดังนั้นคุณไม่ควรเก็บ ไว้ ) บางที /tmp/addpassbismon ที่มีตัวอย่างเช่น Alan Turing:mypass!123456 /tmp/addpassbismon bismonion แน่นอนว่าคุณจะเขียนเชลล์สคริปต์บางอย่างให้แน่ใจว่ามีรหัสผ่านที่แข็งแรงพอที่ไม่ได้อยู่ใน README.md นี้
คุณอาจเพิ่มผู้ใช้รายอื่น (อาจน้อยกว่าหนึ่งโหล) ที่คุณไว้วางใจและสามารถทำงานร่วมกับคุณได้ ผู้ใช้ทุกคนสามารถยุ่งหรือละเมิดระบบ bismon ได้อย่างง่ายดายเท่าที่จะทำได้ โปรดแน่ใจว่าได้ปฏิบัติตาม GDPR หากผู้ใช้คนใดของคุณเป็นชาวยุโรป (และการปฏิบัติตาม GDPR นั้นเป็น ความรับผิดชอบของคุณ ) แบบฟอร์มการเข้าสู่ระบบเป็นแบบ templated (พร้อมรหัสจาก web_ONIONBM.c ) จากไฟล์ต้นฉบับไฟล์ login_ONIONBM.thtml (และคุณอาจปรับปรุงข้อความภายในไฟล์นั้นหากคุณต้องการ)
bismon มัน ยังไม่สามารถใช้งานได้จริง ยกเว้นฉัน (Basile) ในเดือนกรกฎาคม 2018 (ยังไม่มีการวิเคราะห์ซอร์สโค้ดแบบคงที่ยังไม่มีปลั๊กอิน GCC รุ่น) หากคุณต้องการเห็นบางสิ่งบางอย่างโดยใช้ GTK ให้เรียกใช้ ./bismongtk จากนั้นพิมพ์ the_system ในหน้าต่างคำสั่งที่มีป้ายกำกับ ใหม่-บิสมอน จากนั้นทั้ง Ctrl และปุ่ม ส่งคืน ที่กดด้วยกัน หากคุณต้องการเห็นบางสิ่งบางอย่างผ่านเว็บอินเตอร์เฟสให้เรียกใช้ ./bismonion จากนั้นเปิด URL (อาจจะเป็น localhost:8086/ หรืออะไรก็ตามที่ระบุไว้ด้วย --web-base ) ในเว็บเบราว์เซอร์ของคุณ
ขอแนะนำให้ทำงาน make clean เป็นครั้งคราว (เช่นรายวันหรือรายสัปดาห์) เมื่อสร้างไฟล์ bismon ทำการสำรองข้อมูลเวอร์ชันก่อนหน้าของพวกเขา
ถามฉัน (basile starynkevitch, [email protected] หรือ [email protected] ... ) สำหรับรายละเอียด
พื้นที่เก็บข้อมูล git นี้ยังมีเพื่อความสะดวกกรอบ JQueryui 1.12 (ซึ่งมีใบอนุญาต MIT ที่แตกต่างกัน) ภายใต้ webroot/jquery-ui
ใช้มัน (เป็น stopbismon ) ความเสี่ยงของคุณเองถ้า $HOME/bismon มีซอร์สโค้ด Bismon และปฏิบัติการ:
#!/bin/bash -x
# script stopbismon
if [ -f $HOME/bismon/_bismon.pid ]; then
kill -TERM $(/bin/head -1 $HOME/bismon/_bismon.pid)
else
pkill bismon
fi
นี่คือซอฟต์แวร์ฟรีที่ยังไม่เผยแพร่
ใบอนุญาต (GPLV3+) มีแนวโน้มที่จะไม่เปลี่ยนแปลง (มีการระบุตามสัญญาในการให้ทุน Chariot) ประกาศลิขสิทธิ์อาจผิด: ในไฟล์ที่สร้างขึ้นมันยังไม่สอดคล้องกับความคาดหวังของ GPL รายละเอียดเหล่านี้อยู่ระหว่างการพิจารณาข้อบกพร่อง แต่ก็มีข้อบกพร่องอื่น ๆ อีกมากมายเช่นกัน
ผู้เขียนทราบอย่างเต็มที่ - ในกลางปี 2019- ของ ข้อบกพร่องหลายอย่าง ในระบบ bismon นี้ - โครงการวิจัย - แต่การแก้ไขพวกเขา ไม่ได้ เป็นลำดับความสำคัญ (เนื่องจากการดำเนินการ bootstrap ของ บิสมอน ที่ก้าวหน้านั้นมี ความสำคัญมากกว่า และยังไม่ประสบความสำเร็จ) อินเทอร์เฟซ GTK นั้นมี การออกแบบโดยการออกแบบ และการขัดข้องบ่อยครั้ง (ที่จะไม่ได้รับการแก้ไข) และควรจะถูกแทนที่โดยเร็วที่สุดเท่าที่จะเป็นไปได้ ขอให้สังเกตว่าข้อบกพร่องชั่วคราวที่ผู้เขียนทราบนั้น ไม่ได้ ลงทะเบียนเป็นปัญหา Bismon gitlab เนื่องจากซอฟต์แวร์นี้ยังไม่เผยแพร่
ในการกระทำ 24E400E4B25EA8FBD91 เอกสารไม่สามารถสร้างได้
การลบ input{appendix-bm} จากไฟล์ bismon-doc.tex อย่าแก้ข้อผิดพลาดนั้น
วิธีที่ต้องการในการรายงานคือการเพิ่มปัญหาใหม่ใน https://github.com/bstarynk/bismon
แน่นอนปัญหาควรอยู่ในตัวเอง โปรดให้ผลลัพธ์ของ bismon --version บนคอมพิวเตอร์ของคุณ อย่างชัดเจน หากคุณสามารถสร้าง bismon ได้
หากปัญหาเกี่ยวข้องกับการสร้าง bismon Consacutable ให้คำสั่ง Linux ทั้งหมดที่คุณทำงาน อย่างชัดเจน (หลังจากตรวจสอบและ ประสบความสำเร็จ ในการเรียกใช้สคริปต์ distclean-script.bash หรือหลังจากคำสั่ง git clone ใหม่ ) พูดถึงผลลัพธ์ของ git log -3
อีกทางเลือกหนึ่ง (หากคุณไม่ต้องการเพิ่มปัญหา github ) ส่งอีเมล (UTF-8 เข้ารหัส HTML5 เป็นที่นิยม) เป็นภาษาอังกฤษหรือเป็นภาษาฝรั่งเศส (หรืออาจเป็นภาษารัสเซียเฉพาะในกรณีที่คุณไม่สามารถส่งอีเมลเป็นภาษาอังกฤษหรือฝรั่งเศส) ไปที่ [email protected] ฉันจะพยายามตอบเป็นภาษาอังกฤษหรือภาษาฝรั่งเศส (เนื่องจากภาษารัสเซียที่เขียนของฉันแย่มาก)
หากคุณต้องการส่งภาพหน้าจอให้แนบภาพบางส่วนที่เข้ารหัสเป็น JPEG หรือ PNG ไปยังอีเมลของคุณ
หากคุณต้องการหรือต้องการส่งไฟล์หลายไฟล์จัดเก็บทั้งหมดไว้ในไดเรกทอรีที่ไม่ซ้ำกัน (ซึ่งมีชื่อ basename (1) มีเพียงตัวอักษรตัวเลขและขีดล่างบางส่วน _ ) และทำ tar (1) เก็บถาวรของพวกเขา ให้คำสั่ง tar อย่างชัดเจนที่ฉันต้องเรียกใช้ (บน Linux) เพื่อแยกการเก็บถาวรของคุณ คุณอาจสมมติว่าฉันมี GNU TAR เวอร์ชัน 1.30 หรือดีกว่าบนคอมพิวเตอร์ Linux ของฉัน
หากคุณส่งรหัส C หรือ C ++ ให้ฉันเพื่อประมวลผลโดย bismon ให้ฉันรวบรวมและเพิ่มความคิดเห็น อย่างชัดเจน (เข้ารหัส UTF8) เป็นภาษาอังกฤษฝรั่งเศสหรือรัสเซีย
ถ้าเป็นไปได้ให้เพิ่มเชลล์สคริปต์ (สำหรับ GNU Bash หรือสำหรับ ZSH .... ) ซึ่งช่วยให้ฉันสามารถทำข้อผิดพลาดนั้นซ้ำและตั้งชื่อสคริปต์นั้นในอีเมลหรือรายงานข้อผิดพลาดของคุณ
นายจ้างของฉัน (ถ้าคุณอยู่นอก CEA .... ) อาจต้องการข้อมูลบางอย่างที่เกี่ยวข้องกับการระดมทุนการทำงานร่วมกันอย่างเป็นทางการ ฯลฯ ... ถ้าเป็นไปได้กล่าวถึงพวกเขาอย่างชัดเจนเป็นภาษาอังกฤษหรือภาษาฝรั่งเศสในอีเมลของคุณ