| |||||||
adm | Find | login register |
想請教各位高手一些問題 : 小弟在使用Fedora 14 中的GTK3來編譯我的GTK程式,結果發現會有error產生,以下是我用gcc來編譯的方式 :
但會產生出錯誤,已下為我的錯誤訊息 : /usr/include/gtk-3.0/gtk/gtkapplication.h:57:3: error:expected specified-qualifier-list before 'GApplication' /usr/include/gtk-3.0/gtk/gtkapplication.h:66:3: error:expected specified-qualifier-list before 'GApplicationClass'
不知道是fedora 14本身再編譯GTK3的時候就會有Bug出來還是小弟在使用gcc有問題,不過我用fedora 14中提供的GTK2 就能夠成功編譯我的程式,所以應該不是我GCC下錯了,想請問有使用過fedora 14中gtk3 的lib 編譯程式的高手們,能夠跟小弟說如何編議成功。
萬分感謝~~~ | |||||||||||||
用 gcc -E 看 preprocess 出來的 output 或許有幫助。 | |||||||||||||
| |||||||||||||
eliu : 昨天有依照您給我的意見去試過,可以看到錯誤訊息,訊息好像跟我的程式沒什麼關係了,但是小弟功力不夠沒辦法解,不過還是謝謝你 ^^
zerngo07 : 今天剛試了您給我的修正版本,我用rpm -i gcin-debuginfo-1.6.1.pre13-1.fc15.i686.rpm 的方式 然後reboot 再編譯一次我的程式,不過好像還是有一樣的問題產生,因為怕我的方式錯誤,最後小弟有再用yum 直接升級 gcin 因為看您給我的修正版好像跟gcin有關,所以我想直接升級看看會不會成功,我用 yum insatll gcin 得到了 gcin-1.5.5-3.fc14.i686的版本升級,然後再reboot後重新編譯我的gtk程式,結果好像還是有相同的問題,不知道小弟是否有哪個部份有做錯??再請各位高手指導一下。非常感謝 ~~ | |||||||||||||
把錯誤的部份貼出來,如果有完整的 file 更好。 這邊有 gtk3 高手就是 caleb,我還沒用過 gtk3 | |||||||||||||
Hi eliu, 小弟用GCC編譯,編譯的方式如下 : gcc image.c -E -g -o image 'pkg-config --cflags --lids gtk+-3.0' 編譯後再執行 ./image,會出現以下的錯誤 : image : line 34 : typedef : command not found image : line 36~38 : typedef : command not found image : line 112 : _extension_ : command not found image : line 132 : syntax error near unexpected token 'static _mutex' image : line 132 : } static_mutex
假如是 : gcc image.c -g -o image 'pkg-config --cflags --lids gtk+-3.0' (沒有-E) 那錯誤是跟之前的是一樣的。
以下的GTK code 是我從GTK 3.0 官網抓下來作測試的程式 : (只是一個WINDOW的建立) #include<gtk/gtk.h> int main(int argc, char*argv[]) { GtkWidget*window; gtk_init(&argc,&argv); window =gtk_window_new(GTK_WINDOW_TOPLEVEL); g_signal_connect(window,"destroy",G_CALLBACK(gtk_main_quit), NULL); gtk_widget_show(window); gtk_main(); return 0; } 程式部份大概是這樣了,再麻煩各位高手給小地指點一下。 P.S. 此外想請問這邊有沒有人玩過Gtk openGL~~ 最近我也在碰這塊,雖然有將它附給我的範例程式跑起來,不過要拿自己的程式來建置卻有一些問題 @@ 想問問看有沒有人碰過這塊。 = = 總歸一句話,就是我的Linux 還太嫩了。
| |||||||||||||
gcc -E 弄出來的 file 不是 executable,是一個 text file,先看看內容吧 | |||||||||||||
程式碼本身沒問題,用 GTK+ 3.0.9 編譯使用一切正常。不過原 po 從前後文看來,完全是 linux 新手,這才是問題無法解決的根源。 建議: 1. 就我所知 Fedora 14 沒有官方支援 GTK+ 3.x final,backport 也很麻煩,建議改用 Fedora 15 或其它有完整 GTK+ 3.x final 的 distro 2. 先把 linux 基礎摸熟 | |||||||||||||
Hi calab, 主要想用gtk3的原因是它再widget好像有加入新的特性"透明特性",而gtk2只有RGB,在gtk2中我怎麼試還是無法讓widget背景變透明,所以才上網看有沒有改善方式,也發現gtk3有支援RGBA才會想要試試看。 也感謝您給我提供的意見,但我看fedora 15好像還沒有release說,所以才改用fedora 14的,不過我會去試試看的,並且再把我的破Linux基礎變好,非常感謝這位高手給我的建議。 | |||||||||||||
Fedora 15 正式版預定 5/24 釋出,目前官網已經有 Fedora 15 beta,建議您可以下載來試試看。我讀了 Fedora 15 Release Note,確定它是以 GNOME 3 作為預定的桌面環境。 |
| |||||||
adm | Find | login register |