🧰 คู่มือแก้ไขปัญหา (Troubleshooting) การ Build & Launch ของ iBrowe

เอกสารนี้สรุปปัญหาที่นักพัฒนาอาจพบระหว่างการพัฒนา iBrowe พร้อมแนวทางแก้ไขอย่างมีประสิทธิภาพ ดัดแปลงมาจากเอกสารด้านวิศวกรรมของ Brave

❌ ปัญหา Startup หรือ Build ล้มเหลว

  1. Database Lock Errors ตัวอย่างข้อความ Log:

[48058:82435:0827/195241.326071:ERROR:database.cc(1821)] Web sqlite error 5, errno 0: database is locked, sql: SELECT COUNT(*) FROM sqlite_master [48058:82435:0827/195241.326160:FATAL:statement.cc(50)] Cannot call mutating statements on an invalid statement.

🛠️ วิธีแก้ไข (Solution):

ตรวจสอบว่ามีโปรแกรมเบราว์เซอร์อีกตัวที่เปิดใช้งาน โปรไฟล์เดียวกันอยู่หรือไม่ : ps aux | grep iBrowe-Browser-Development

ปิดโปรเซสที่กำลังทำงานอยู่: pkill -f iBrowe-Browser-Development

หรือ รีสตาร์ทเครื่องคอมพิวเตอร์ของคุณแล้วลองใหม่อีกครั้ง

  1. การเริ่มต้นใช้งาน Git: พบข้อผิดพลาด badTimezone ตัวอย่างข้อความ Error: error: object …: badTimezone: invalid author/committer line - bad time zone

→ เกิดข้อผิดพลาด: วัตถุ (object) …: badTimezone: บรรทัด author/committer ไม่ถูกต้อง - เขตเวลาไม่ถูกต้อง

🛠️ วิธีแก้ไข:

ตรวจสอบให้แน่ใจว่าไฟล์ ~/.gitconfig ของคุณ ไม่มีบรรทัดเหล่านี้อยู่: [transfer] fsckobjects = true [fetch] fsckobjects = true [receive] fsckobjects = true

  1. คำเตือน Proxy จาก depot_tools คำเตือน:

“แจ้งเตือน: คุณมีค่า PROXY ถูกตั้งค่าอยู่ใน Environment ของคุณ…”

🛠️ วิธีแก้ไข:

ให้เพิ่มบรรทัดนี้ในไฟล์ ~/.bashrc: export NO_AUTH_BOTO_CONFIG=“${HOME}/.boto”

จากนั้นให้สร้างไฟล์ ~/.boto โดยใส่เนื้อหาดังนี้: [Boto]

  1. รันคำสั่ง npm run sync – --all ไม่สำเร็จ 🧩 คุณลืมดึงโค้ดล่าสุดมาหรือเปล่า?

ลองรันคำสั่งนี้ก่อน: git pull origin main ถ้ายังใช้ไม่ได้ ให้ลองลบไฟล์ build output ด้วยคำสั่งนี้: rm -rf src/out

  1. ข้อผิดพลาดระหว่าง Build ด้วย Rustup (Rustup Build Error) ข้อความแสดงความล้มเหลว (Failure output): FAILED: gen/challenge_bypass_ristretto/…/libchallenge_bypass_ristretto.a python …/…/ibrowe/script/cargo.py … Traceback …

🛠️ วิธีแก้ไข:

ให้ลบไฟล์และเริ่มต้นใหม่ตามขั้นตอนนี้:

rm -rf src/out src/ibrowe/vendor src/ibrowe/build npm run init npm run build

  1. เวอร์ชันของ Rust Toolchain ไม่ตรงกัน (Rust Toolchain Mismatch) ถ้าการอัปเดตเวอร์ชันของ Rust ทำให้ Build พัง:

rm -rf src/ibrowe/build/rustup npm run sync

ปัญหา: การเชื่อมต่อ GitHub หลุด (GitHub Connection Dropped) ข้อความ Error:

Connection to github.com closed by remote host

🛠️ วิธีแก้ไข:

ให้แก้ไขไฟล์ SSH config (~/.ssh/config) โดยเพิ่มบรรทัดเหล่านี้:

Host github.com ServerAliveInterval 60 ServerAliveCountMax 100

📎 ที่มา: เรียบเรียงและปรับโครงสร้างใหม่จากคู่มือแก้ปัญหาภายในของ Brave โดยปรับให้เข้ากับขั้นตอนการพัฒนา iBrowe