<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://wiki.haidhi.my.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Compile_Troubleshoot</id>
	<title>Compile Troubleshoot - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://wiki.haidhi.my.id/wiki/index.php?action=history&amp;feed=atom&amp;title=Compile_Troubleshoot"/>
	<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Compile_Troubleshoot&amp;action=history"/>
	<updated>2026-11-01T23:39:29Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.0</generator>
	<entry>
		<id>https://wiki.haidhi.my.id/wiki/index.php?title=Compile_Troubleshoot&amp;diff=217&amp;oldid=prev</id>
		<title>SanzSkuy at 02:17, 13 April 2025</title>
		<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Compile_Troubleshoot&amp;diff=217&amp;oldid=prev"/>
		<updated>2025-04-13T02:17:43Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 02:17, 13 April 2025&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot; id=&quot;mw-diff-left-l107&quot;&gt;Line 107:&lt;/td&gt;
&lt;td colspan=&quot;2&quot; class=&quot;diff-lineno&quot;&gt;Line 107:&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;make&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;make&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot;&gt;&lt;/td&gt;&lt;td style=&quot;background-color: #f8f9fa; color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #eaecf0; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;= Reference =&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td colspan=&quot;2&quot; class=&quot;diff-side-deleted&quot;&gt;&lt;/td&gt;&lt;td class=&quot;diff-marker&quot; data-marker=&quot;+&quot;&gt;&lt;/td&gt;&lt;td style=&quot;color: #202122; font-size: 88%; border-style: solid; border-width: 1px 1px 1px 4px; border-radius: 0.33em; border-color: #a3d3ff; vertical-align: top; white-space: pre-wrap;&quot;&gt;&lt;div&gt;&lt;ins style=&quot;font-weight: bold; text-decoration: none;&quot;&gt;https://tldp.org/HOWTO/Software-Building-HOWTO-7.html&lt;/ins&gt;&lt;/div&gt;&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;</summary>
		<author><name>SanzSkuy</name></author>
	</entry>
	<entry>
		<id>https://wiki.haidhi.my.id/wiki/index.php?title=Compile_Troubleshoot&amp;diff=216&amp;oldid=prev</id>
		<title>SanzSkuy: Created page with &quot;Beberapa troubleshooting yang bisa dicoba ketika meng-compile sebuah source code   = Link Errors =  == Error: -lX11: No such file or directory ==  Masalah: Error ini muncul ketika linker tidak dapat menemukan library X11, yang biasanya digunakan untuk aplikasi grafis berbasis X Window. Penyebab: Library X11 atau file header-nya tidak ditemukan di lokasi yang tepat. Solusi: *Periksa bagian pertama dari Makefile yang mendefinisikan LIB, INCLUDE, dan LIBS. Misalnya: &lt;syntax...&quot;</title>
		<link rel="alternate" type="text/html" href="https://wiki.haidhi.my.id/wiki/index.php?title=Compile_Troubleshoot&amp;diff=216&amp;oldid=prev"/>
		<updated>2025-04-13T02:14:58Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;Beberapa troubleshooting yang bisa dicoba ketika meng-compile sebuah source code   = Link Errors =  == Error: -lX11: No such file or directory ==  Masalah: Error ini muncul ketika linker tidak dapat menemukan library X11, yang biasanya digunakan untuk aplikasi grafis berbasis X Window. Penyebab: Library X11 atau file header-nya tidak ditemukan di lokasi yang tepat. Solusi: *Periksa bagian pertama dari Makefile yang mendefinisikan LIB, INCLUDE, dan LIBS. Misalnya: &amp;lt;syntax...&amp;quot;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;Beberapa troubleshooting yang bisa dicoba ketika meng-compile sebuah source code &lt;br /&gt;
&lt;br /&gt;
= Link Errors = &lt;br /&gt;
== Error: -lX11: No such file or directory == &lt;br /&gt;
Masalah: Error ini muncul ketika linker tidak dapat menemukan library X11, yang biasanya digunakan untuk aplikasi grafis berbasis X Window.&lt;br /&gt;
Penyebab: Library X11 atau file header-nya tidak ditemukan di lokasi yang tepat.&lt;br /&gt;
Solusi:&lt;br /&gt;
*Periksa bagian pertama dari Makefile yang mendefinisikan LIB, INCLUDE, dan LIBS. Misalnya:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=makefile&amp;gt;&lt;br /&gt;
LIB=            -L/usr/X11/lib&lt;br /&gt;
INCLUDE=        -I/usr/X11/include/X11&lt;br /&gt;
LIBS=           -lX11 -lc -lm&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Jika path yang ada tidak sesuai dengan sistem, ubah path tersebut di Makefile.&lt;br /&gt;
*Pastikan file header dan library X11 ada di direktori yang benar, seperti &amp;lt;code&amp;gt;/usr/X11/lib&amp;lt;/code&amp;gt; dan &amp;lt;code&amp;gt;/usr/X11/include/X11&amp;lt;/code&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Error: Undefined reference to math library functions (e.g., cos) == &lt;br /&gt;
Masalah: Program membutuhkan library matematika, tetapi library tersebut tidak terlink.&lt;br /&gt;
Solusi: Tambahkan flag -lm pada bagian LIB atau LIBS di Makefile, agar program dapat menemukan dan menglink library matematika.&lt;br /&gt;
&lt;br /&gt;
== Alternatif Jika xmkmf Gagal == &lt;br /&gt;
Jika xmkmf tidak bekerja dengan baik, coba jalankan perintah berikut:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
make -DUseInstalled -I/usr/X386/lib/X11/config&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Menjalankan ldconfig == &lt;br /&gt;
Masalah: Beberapa kali, library yang diperlukan tidak ditemukan karena symbolic links tidak diperbarui.&lt;br /&gt;
Solusi: Jalankan perintah ldconfig sebagai root untuk memperbarui link library yang dibutuhkan.&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
# ldconfig&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Masalah dengan Versi Library == &lt;br /&gt;
Masalah: Kadang-kadang, sistem membutuhkan versi library yang lebih lama (misalnya, X11R5) untuk membangun aplikasi.&lt;br /&gt;
Solusi: Jika menggunakan versi X11R5, pastikan ada symbolic links yang tepat, seperti:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
ln -s /usr/X11R6/lib/libX11.so.3.1.0 /usr/X11R6/lib/libX11.so.3&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
&lt;br /&gt;
== Install dan Perbarui Library == &lt;br /&gt;
Masalah: Beberapa paket mungkin memerlukan versi library yang lebih baru atau berbeda untuk berfungsi dengan baik.&lt;br /&gt;
Solusi: Jika menggunakan aplikasi seperti StarOffice yang membutuhkan versi libc tertentu, pastikan untuk menginstal versi yang diperlukan dan memperbarui symbolic links sesuai instruksi. Hati-hati saat mengubah library, karena kesalahan dalam proses ini bisa merusak sistem.&lt;br /&gt;
&lt;br /&gt;
= Masalah Lain = &lt;br /&gt;
== Error: No such file or directory pada Skrip Perl atau Shell == &lt;br /&gt;
Masalah: Ketika menjalankan skrip Perl atau shell, kamu mendapat pesan error No such file or directory. Ini biasanya terjadi ketika file skrip tidak dapat dieksekusi atau program yang dipanggil dalam skrip tidak ditemukan di lokasi yang ditentukan.&lt;br /&gt;
Penyebab:&lt;br /&gt;
*Skrip mungkin memerlukan izin eksekusi.&lt;br /&gt;
*Lokasi interpreter yang disebutkan dalam header skrip tidak sesuai dengan lokasi yang benar di sistem.&lt;br /&gt;
&lt;br /&gt;
Solusi:&lt;br /&gt;
*Periksa izin file: Pastikan file skrip memiliki izin eksekusi. Untuk memberi izin eksekusi, gunakan perintah:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
chmod +x nama_skrip.sh&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Periksa header skrip: Periksa bagian pertama dari skrip yang menunjukkan lokasi interpreter. Misalnya, skrip dapat dimulai dengan:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
#!/usr/local/bin/perl&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Jika Perl diinstal di &amp;lt;code&amp;gt;/usr/bin/perl&amp;lt;/code&amp;gt; dan bukan di &amp;lt;code&amp;gt;/usr/local/bin/perl&amp;lt;/code&amp;gt;, maka kita bisa:&lt;br /&gt;
**Mengubah header skrip untuk menunjuk ke lokasi yang benar:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
#!/usr/bin/perl&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
**Atau buat symbolic link agar skrip dapat menemukan Perl di lokasi yang benar:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
ln -s /usr/bin/perl /usr/local/bin/perl&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
Ini akan membuat link simbolik di /usr/local/bin/perl yang mengarah ke lokasi /usr/bin/perl.&lt;br /&gt;
&lt;br /&gt;
== Kebutuhan Motif Libraries untuk Software X11 ==&lt;br /&gt;
Masalah: Beberapa software X11 memerlukan pustaka Motif untuk dibangun. Namun, distribusi Linux standar biasanya tidak menyertakan pustaka Motif, dan Motif dapat berharga sekitar $100-$200. Meskipun ada alternatif gratis seperti Lesstif yang kompatibel dengan banyak aplikasi, masalah ini tetap muncul jika aplikasi membutuhkan pustaka Motif untuk dibangun.&lt;br /&gt;
Solusi:&lt;br /&gt;
*Jika kita tidak memiliki pustaka Motif: Kamu bisa mencoba menggunakan Lesstif, yang merupakan implementasi open-source dari Motif. Instal Lesstif menggunakan perintah:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
sudo apt-get install lesstif2&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Atau menggunakan binary statis: Beberapa paket dapat disediakan dalam bentuk binary statis yang sudah mengandung pustaka yang diperlukan. Ini memungkinkan kamu menjalankan program tanpa memerlukan pustaka eksternal, meskipun file binary-nya lebih besar. Jika kamu menggunakan distribusi seperti Ubuntu atau Debian, kamu dapat mencari versi statis dari paket yang diperlukan atau mencari di situs web resmi proyek untuk mendapatkan versi statis.&lt;br /&gt;
&lt;br /&gt;
== Skrip Configure Membuat Makefile Aneh == &lt;br /&gt;
Masalah: Jika menjalankan skrip configure dan hasilnya adalah Makefile yang tampaknya tidak berhubungan dengan paket yang sedang kamu coba bangun, ini bisa berarti skrip configure yang salah telah dijalankan. Skrip configure yang dijalankan mungkin ditemukan di direktori lain yang ada dalam path, bukan dari direktori sumber aplikasi yang sebenarnya.&lt;br /&gt;
Solusi:&lt;br /&gt;
*Gunakan &amp;lt;code&amp;gt;./configure&amp;lt;/code&amp;gt; Untuk memastikan kamu menjalankan skrip configure yang benar, selalu jalankan skrip tersebut dengan perintah: &lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
./configure&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;br /&gt;
*Ini akan memastikan bahwa skrip configure yang benar dijalankan dari direktori tempat paket yang sedang dibangun berada, dan bukan yang ada di direktori lain dalam path sistem.&lt;br /&gt;
&lt;br /&gt;
== Masalah dengan Perpustakaan libc 6 / glibc 2 Setelah Pembaruan == &lt;br /&gt;
Masalah: Banyak distribusi Linux yang telah beralih ke libc 6 atau glibc 2 dari versi yang lebih lama, yaitu libc 5. Biner yang telah dikompilasi untuk libc 5 mungkin gagal jika kamu telah memperbarui pustaka sistem ke versi yang lebih baru. Misalnya, aplikasi yang dibangun dengan glibc 2.0 mungkin tidak bekerja pada sistem dengan glibc 2.1.&lt;br /&gt;
Solusi:&lt;br /&gt;
*Rekompilasi dari Sumber: Jika aplikasi yang  dijalankan tidak berfungsi setelah upgrade pustaka, solusinya adalah dengan mengompilasi ulang aplikasi tersebut dari sumbernya dengan pustaka glibc yang baru.&lt;br /&gt;
*Dapatkan Biner Terbaru: Jika tidak ingin mengompilasi ulang aplikasi, kita bisa mencari biner yang telah dikompilasi ulang untuk versi glibc yang lebih baru.&lt;br /&gt;
*Referensi untuk Upgrade Sistem: Jika kamu sedang dalam proses upgrade sistem ke glibc 6, dan mengalami masalah, kamu bisa merujuk ke Glibc 2 HOWTO oleh Eric Green untuk petunjuk lebih lanjut.&lt;br /&gt;
&lt;br /&gt;
== Inkompatibilitas antara Versi glibc == &lt;br /&gt;
Masalah: Ada beberapa inkompatibilitas kecil antara versi glibc. Biner yang dibangun dengan glibc 2.1 mungkin tidak dapat dijalankan pada sistem yang hanya memiliki glibc 2.0, dan sebaliknya.&lt;br /&gt;
Solusi: Untuk menghindari masalah ini, pastikan kita menggunakan versi glibc yang kompatibel dengan aplikasi yang sedang kamu jalankan. Jika aplikasi membutuhkan versi tertentu dari glibc, pertimbangkan untuk meng-upgrade atau meng-install versi glibc yang sesuai.&lt;br /&gt;
&lt;br /&gt;
== Menghapus Opsi -ansi pada Flag Kompilasi ==&lt;br /&gt;
Masalah: Terkadang, saat mengompilasi aplikasi, file Makefile memiliki opsi -ansi yang diaktifkan dalam flag kompilasi. Opsi ini membatasi penggunaan fitur-fitur tambahan yang tidak standar (non-ANSI) dari GCC. Beberapa aplikasi mungkin memerlukan fitur tambahan ini untuk dibangun dengan benar.&lt;br /&gt;
Solusi:&lt;br /&gt;
*Hapus Opsi -ansi: Jika aplikasi yang sedang dibangun membutuhkan fitur non-ANSI dari GCC, kamu bisa menghapus opsi -ansi dari flag kompilasi di Makefile. Setelah menghapusnya, coba kompilasi ulang aplikasi:&lt;br /&gt;
&amp;lt;syntaxhighlight lang=bash&amp;gt;&lt;br /&gt;
sed -i &amp;#039;s/-ansi//g&amp;#039; Makefile&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/syntaxhighlight&amp;gt;&lt;/div&gt;</summary>
		<author><name>SanzSkuy</name></author>
	</entry>
</feed>