[Others] 新版deepin-unioncode编译失败
Tofloor
poster avatar
秋胜春朝
deepin
2024-02-24 15:23
Author

系统环境:ubuntu22.04,之前刚发布deepin-unioncode就编译安装上了,现在想编译安装最新版本,但是到44%的时候报错,编译失败,详细信息如下:

目前所有需要的依赖已安装:

jason@jason-Haier-DT-Computer:~/deepin-unioncode/debian$ sudo apt list --installed debhelper cmake qt5-qmake qtbase5-dev qttools5-dev qttools5-dev-tools lxqt-build-tools libssl-dev llvm llvm-dev libclang-dev libutf8proc-dev libmicrohttpd-dev libjsoncpp-dev libargtable2-dev libhiredis-dev catch libzstd-dev libjson-c-dev libelf-dev libcapstone-dev libunwind-dev libelfin-dev libdbus-1-dev libxi-dev qtscript5-dev libqt5scripttools5 clang doxygen qtbase5-dev qtdeclarative5-dev qtscript5-dev qttools5-dev libqt5svg5-dev libqt5opengl5-dev libqt5sql5-mysql libqt5sql5-sqlite libqt5quick5-dev libqt5websockets5-dev qtcreator
正在列表... 完成
catch/jammy,now 1.12.1-1.1ubuntu1 amd64 [已安装]
clang/jammy,now 1:14.0-55~exp2 amd64 [已安装]
cmake/now 3.22.1-1ubuntu1.22.04.1 amd64 [已安装,可升级至:3.22.1-1ubuntu1.22.04.2]
debhelper/jammy,jammy,now 13.6ubuntu1 all [已安装]
doxygen/jammy,now 1.9.1-2ubuntu2 amd64 [已安装]
libargtable2-dev/jammy,now 13-1.1 amd64 [已安装]
libcapstone-dev/jammy,now 4.0.2-5 amd64 [已安装]
libclang-dev/jammy,now 1:14.0-55~exp2 amd64 [已安装]
libdbus-1-dev/jammy-updates,jammy-security,now 1.12.20-2ubuntu4.1 amd64 [已安装]
libelf-dev/jammy,now 0.186-1build1 amd64 [已安装]
libelfin-dev/jammy,now 0.3-2.1 amd64 [已安装]
libhiredis-dev/jammy,now 0.14.1-2 amd64 [已安装]
libjson-c-dev/jammy-updates,jammy-security,now 0.15-3~ubuntu1.22.04.2 amd64 [已安装]
libjsoncpp-dev/jammy,now 1.9.5-3 amd64 [已安装]
libmicrohttpd-dev/jammy,now 0.9.75-3ubuntu1 amd64 [已安装]
libqt5opengl5-dev/jammy-updates,now 5.15.3+dfsg-2ubuntu0.2 amd64 [已安装,自动]
libqt5scripttools5/jammy,now 5.15.3+dfsg-1 amd64 [已安装]
libqt5sql5-sqlite/jammy-updates,now 5.15.3+dfsg-2ubuntu0.2 amd64 [已安装,自动]
libqt5svg5-dev/jammy,now 5.15.3-1 amd64 [已安装,自动]
libssl-dev/jammy-updates,jammy-security,now 3.0.2-0ubuntu1.14 amd64 [已安装]
libunwind-dev/jammy-updates,now 1.3.2-2build2.1 amd64 [已安装]
libutf8proc-dev/jammy,now 2.7.0-3 amd64 [已安装]
libxi-dev/jammy,now 2:1.8-1build1 amd64 [已安装]
libzstd-dev/jammy,now 1.4.8+dfsg-3build1 amd64 [已安装]
llvm-dev/jammy,now 1:14.0-55~exp2 amd64 [已安装]
llvm/jammy,now 1:14.0-55~exp2 amd64 [已安装]
lxqt-build-tools/jammy,jammy,now 0.10.0-1ubuntu1 all [已安装]
qt5-qmake/jammy-updates,now 5.15.3+dfsg-2ubuntu0.2 amd64 [已安装]
qtbase5-dev/jammy-updates,now 5.15.3+dfsg-2ubuntu0.2 amd64 [已安装]
qtscript5-dev/jammy,now 5.15.3+dfsg-1 amd64 [已安装]
qttools5-dev-tools/jammy,now 5.15.3-1 amd64 [已安装]
qttools5-dev/jammy,now 5.15.3-1 amd64 [已安装]

执行cmake --build build,但是到44%的时候就报错:

/home/jason/deepin-unioncode/src/framework/backtrace/backtrace.cpp:5:10: fatal error: dfm-framework/backtrace/backtrace.h: 没有那个文件或目录
    5 | #include 
      |          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
compilation terminated.
gmake[2]: *** [src/framework/CMakeFiles/framework.dir/build.make:303:src/framework/CMakeFiles/framework.dir/backtrace/backtrace.cpp.o] 错误 1
gmake[2]: 离开目录“/home/jason/deepin-unioncode/build”
gmake[1]: *** [CMakeFiles/Makefile2:1432:src/framework/CMakeFiles/framework.dir/all] 错误 2
gmake[1]: 离开目录“/home/jason/deepin-unioncode/build”
gmake: *** [Makefile:139:all] 错误 2

请问如何解决这个问题,谢谢!

Reply Favorite View the author
All Replies
wlly-lzh
deepin
2024-02-24 17:16
#1

这么巧,你最近也在编译这个?

我刚好和你遇见一样的问题,都是找不到这个头文件。

只不过我是在deepin上面编译的。

Reply View the author
wlly-lzh
deepin
2024-02-24 17:20
#2
wlly-lzh

这么巧,你最近也在编译这个?

我刚好和你遇见一样的问题,都是找不到这个头文件。

只不过我是在deepin上面编译的。

我是用git clone的源文件。

解决办法是回到之前的一个版本。

我现在只记得那个版本更好更新了版本号(最后一个数字好像是9)。

等有时间我把具体的git命令和git版本ID发给你。

Reply View the author
wlly-lzh
deepin
2024-02-24 18:12
#3

下载源码

git clone https://gitee.com/deepin-community/deepin-unioncode.git

进入目录

cd deepin-unioncode

退回到1.2.9版本

git reset --hard 01b17f8a2b9faceae0012794a6a601149ad666f7

开始编译

cmake -B build -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_BUILD_TYPE=Release
cmake --build build

Reply View the author
魔法师
deepin
2024-02-24 18:27
#4

https://gitee.com/spark-buildx/deepin-unioncode

image.png

乐了,我就知道有很多人会这样(


image.png

Reply View the author
raspbian
deepin
2024-02-24 20:27
#5

跌跌撞撞编译了一天

终于成功了

说一下难点(不止这些)

  1. 找一个合适的linux发行版
  2. 找一个合适的tag
  3. 手动安装qt5完整版
  4. 编译到44% 左右会报错找不到头文件,需要手动编辑 deepin-unioncode-1.2.11/src/plugins/core/gui/pluginitemdelegate.cpp 添加 #include
  5. 使用无GUI服务器版编译会有一个函数报错
  6. 编译成功后安装会报错没有图标包和矢量图标文件,手动 mkdir -p然后 touch这个文件就行

现在的问题是编译安装成功了 谁有什么方法把安装好的全部文件打包成一个deb包

Reply View the author