簡體   English   中英

編譯QTermWidget

[英]Compiling QTermWidget

我嘗試編譯此自定義QT小部件,以提供可以嵌入到我的應用程序中的終端。 我已經 Cmake完成之前需要的程序編譯/安裝了構建工具 ,但是make步驟拋出的錯誤是google不太有用:

[ 50%] Building CXX object CMakeFiles/qtermwidget5.dir/lib/kpty.cpp.o
/Users/a7c/qtermwidget/qtermwidget-master/lib/kpty.cpp:506:26: error: no member named 'ut_name' in 'utmpx'
        strncpy(l_struct.ut_name, user, sizeof(l_struct.ut_name));
                ~~~~~~~~ ^
/Users/a7c/qtermwidget/qtermwidget-master/lib/kpty.cpp:506:57: error: no member named 'ut_name' in 'utmpx'
        strncpy(l_struct.ut_name, user, sizeof(l_struct.ut_name));
                                               ~~~~~~~~ ^
/Users/a7c/qtermwidget/qtermwidget-master/lib/kpty.cpp:617:20: error: no member named 'ut_name' in 'utmpx'
        memset(ut->ut_name, 0, sizeof(*ut->ut_name));
               ~~  ^
/Users/a7c/qtermwidget/qtermwidget-master/lib/kpty.cpp:617:44: error: no member named 'ut_name' in 'utmpx'
        memset(ut->ut_name, 0, sizeof(*ut->ut_name));
                                       ~~  ^
4 errors generated.
make[2]: *** [CMakeFiles/qtermwidget5.dir/lib/kpty.cpp.o] Error 1
make[1]: *** [CMakeFiles/qtermwidget5.dir/all] Error 2
make: *** [all] Error 2

有誰能解決這個問題?

作為擴展,如何有效地包含一個自定義小部件以在QT Creator中使用?

http://pubs.opengroup.org/onlinepubs/7908799/xsh/utmpx.h.html

看起來ut_name的普通版本中不包含ut_name。

如果您查看此版本:

https://code.woboq.org/kde/include/bits/utmp.h.html

他們那里有一個“向后兼容性黑客”:

87  /* Backwards compatibility hacks.  */
88  #define ut_name     ut_user

您可能要升級包含該標頭的庫。 或者只是在您的代碼中插入#define 作為一個優秀的github公民,如果可行,您應該提出拉取請求和/或提交有關此問題的信息,以便下一個使用該庫的人員不會遇到相同的問題。

希望能有所幫助。

我不知道為什么會發生此問題,因為根據我檢查的所有文件,所有內容均已正確命名。

#define ut_user ut_name添加到kpty.h可以解決此問題。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM