tuxboot develop log

tuxboot

Created 週三 13 十月 2010 03/09/2012 TODO @Tuxboot

  • cache 抓過的版本資訊
  • 編譯static standalone,放到sf.net上

  • 把預設的版本統統拿掉 只留下 current,直接按確定就會跑了

新增更新的按鈕,可以抓最新的三個版本,讓使用者選擇

  • 刪除tmp檔(原先的iso會保留)
  • ui, 翻譯, 尺寸微調
  • remove Unetbootin de
  • sc ription
  • add p7zip-plugins for fedora
  • "UNetbootin"字眼要改成Tuxboot

UNetbootin must be run as root. Close it, and re-run using either: sudo /home/steven/tmp/wz/tuxboot-linux-8 or: su -c '/home/steven/tmp/wz/tuxboot-linux-8'

  • Fedora 14上要裝的packages:

p7zip-plugins p7zip (原本是p7zip-plugins.i686, p7zip.i686 \<- 把i686拿掉)

  • develop environment rebuild
  • 在Linux上應該改成如我們剛剛討論的,預設不需要p7zip,因為都是用iso的,除 非使用者有pre-downloaded的clonezilla/drbl/gparted zip檔。
  • 另外,GUI的部份,也建議可以改成明顯一點,第一個選項就是去下載的,第二 個選項是"pre-downloaded"的檔案。
  • gparted live要放testing的選單,這樣比較完整一點
  • 打包成rpm與deb,放到sf.net上
  • 加上md5sum或者sha1sum的檢查機制

UbuntuPPA

zim archive:blog:2012-05-03-嘗試用launchpad sudo apt-get install sshfs git ctags devscripts vim screen vim build-essential qt4-dev-tools debhelper sudo apt-get build-dep unetbootin mkdir package mkdir ubuntu sudo adduser thomas fuse sudo reboot sudo update-alternatives --config editor git clone ssh://thomas@free.nchc.org.tw:3322/home/thomas/develop_setting scp -r thomas@140.110.240.51:\~/.gnupg ./ /home/thomas/package/tuxboot/auto-build-tuxboot-linux.sh /home/thomas/ubuntu/

about dch tuxboot (0.4ppa1\~oneiric) oneiric; urgency=low

dput \~/.dput.cf [thomas-ppa] fqdn = ppa.launchpad.net method = ftp incoming = \~thomas.tsai/ubuntu-tuxboot/ login = thomas.tsai

dput thomas-ppa:thomas.tsai/ubuntu-tuxboot tuxboot_0.3ppa1\~precise_source.changes

Windows7

open git git pull git archive 0.4 > ../tuxboot-0.4.tar close

7zip uncompress tuxboot-0.4.tag to C:\develop\tuxboot-0.4

open qt open project -> tuxboot.pro target setup old convert log: ../../../../SparkleShare/sync/tmp_doc/tuxboot-win7-32bit%20%40%202012-08-14%2014%3A19%3A33.png) click build

copy develop\tuxboot\release\tuxboot c:\develop\tuxboot-0.4.exe

cmd cd develop upx tuxboot-0.4.exe

open http://www.virustotal.com to test tuxboot

old

Change to SDK 4.7.1 Fail 直接用Windows的SDK 會遇到symbols問題 __gxx_personality_v0 _Unwind_Resume 解決方式: http://sandundhammika.wordpress.com/2010/03/20/qt-mingw-gcc-3-4-2-problem/ http://stackoverflow.com/questions/329059/what-is-gxx-personality-v0-for

最後build好的exe會缺少dll檔案,可能需要先cross compile windows qtsdk on linux http://silmor.de/38 http://www.richelbilderbeek.nl/CppQtCrosscompileToWindowsExample4.htm http://stackoverflow.com/questions/1947229/how-to-deploy-my-application-using-qt-creator http://doc.qt.nokia.com/4.6/deployment-windows.html#static-linking http://divided-mind.blogspot.com/2007/09/cross-compiling-qt4win-on-linux.html http://developer.qt.nokia.com/wiki/How_to_build_a_static_Qt_version_for_Windows_with_gcc

下次建議完全依照此blog作法! http://webkit.sed.hu/blog/20100716/cross-compiling-qtwebkit-windows-linux-using-mingw http://qt.gitorious.org/qt/qt/trees/4.7

md5sum: thomas@T17:\~/source\$ dpkg -S /usr/bin/md5sum coreutils: /usr/bin/md5sum thomas@T17:\~/source\$ apt-get source coreutils Reading package lists... Done

http://www.libthomas.org/\~thomas/wp/?p=774 http://www.libthomas.org/\~thomas/tuxboot/

windows: gcc-mingw32 mingw32-binutils Linux: /usr/bin/ld: cannot find -lpng /usr/bin/ld: cannot find -lfreetype /usr/bin/ld: cannot find -lSM /usr/bin/ld: cannot find -lICE /usr/bin/ld: cannot find -lXrender /usr/bin/ld: cannot find -lfontconfig /usr/bin/ld: cannot find -lXext /usr/bin/ld: cannot find -lz /usr/bin/ld: cannot find -lgthread-2.0 /usr/bin/ld: cannot find -lglib-2.0 collect2: ld returned 1 exit status thomas@T52 \~/work_house/tuxboot \$ sudo apt-get build-dep unetbootin 正在讀取套件清單... 完成 正在重建相依關係 正在讀取狀態資料... 完成 下列【新】套件將會被安裝: debhelper html2text libdrm-dev libgl1-mesa-dev libglu1-mesa-dev libkms1 libmail-sendmail-perl libphonon4 libqt4-declarative libqt4-dev libqt4-help libqt4-opengl libqt4-opengl-dev libqt4-scripttools libqt4-svg libqt4-test libqt4-xmlpatterns libqtwebkit-dev libqtwebkit4 libsys-hostname-long-perl libxext-dev mesa-common-dev phonon phonon-backend-gstreamer po-debconf qt4-qmake x11proto-xext-dev

libpng++-dev libpng12-dev zlib1g-dev libfreetype6-dev libsm-dev libxrender-dev libfontconfig1-dev libglib2.0-dev

09/22/2011 Linux git clone ssh://thomas_tsai@git.code.sf.net/p/tuxboot/git.git tuxboot just install qt4-dev-tools qmake make

Windows Instructions (Manual)

​1) Build a statically linked Qt4 for Windows (instructions from http://doc.trolltech.com/4.3/deployment-windows.html#static-linking and http://qtnode.net/wiki?title=Building_static )

cd C:\Qt4 configure -static make sub-src

​2) Set up cross-compile environment (instructions from http://gentoo-wiki.com/HOWTO_MinGW_and_Qt4 )

If cross-compiling on Ubuntu, simply copy the file qmake-qt4.conf to /usr/share/qt4/mkspecs/win32-g++/qmake-qt4.conf

​3) Copy over your statically linked Windows qt4 install directory to /usr/\$(ls /usr/ | grep mingw32 | head --lines 1)/Qt/

​4) Go to the directory containing the source files (tuxboot.cpp, main.cpp, tuxboot.pro, etc.), and run "./build" to automate steps 4 and 5, or to do it manually, run the following commands:

qmake -spec win32-g++ "RESOURCES += tuxboot-windows.qrc" "RC_FILE += ubnembed.rc" "QMAKE_LFLAGS += -Wl,-subsystem,windows"

make

​5) You should now have a Windows .exe file at release/tuxboot.exe

To reduce file size, compress the executable using upx ( http://upx.sourceforge.net/ )

./upx --lzma ./tuxboot.exe

Build Qt Windows 7 static library 4.7.7 Windows 7 其剪版 下載 Qt for Open Source C++ development on Windows http://get.qt.nokia.com/qt/source/qt-win-opensource-4.7.4-mingw.exe http://get.qt.nokia.com/misc/MinGW-gcc440_1.zip from http://qt.nokia.com/downloads/windows-cpp

解壓縮 MinGW-gcc440_1.zip 到 C:/ 安裝 qt-win-opensource-4.7.4-mingw.exe 並指定正確的 mingcc目錄

執行 qt 4.7.4 command prompt cd C:\Qt\4.7.4 configure -static make sub-src

copy C:\Qt\4.7.4 to linux

Create Windows ico

http://www.winterdrache.de/freeware/png2ico/ convert -resize 32x32 tuxboot.png tuxboot-32.png convert -resize 16x16 tuxboot.png tuxboot-16.png png2ico tuxboot.ico tuxboot-16.png tuxboot-32.png

Pre Release update main function git status ...makr sure repository clean git pull perl gitlog-to-changelog > ChangLog dch -i git add -u git commit -m 'update log for new release' git push

Release cd /qt tuxboot //git repository tuxboot-release //source package //build package

ex: drwxrwxr-x 4 thomas thomas 4096 2012-01-31 23:27 package/ drwxr-xr-x 9 thomas thomas 4096 2012-01-31 23:23 tuxboot/ drwxrwxr-x 3 thomas thomas 4096 2012-01-31 23:19 tuxboot-release/ thomas@ubuntu:/qt\$ ls -l package/ total 4120 drwxrwxr-x 8 thomas thomas 4096 2011-12-27 19:46 tuxboot-0.1 -rw-rw-r-- 1 thomas thomas 1249 2012-01-31 23:27 tuxboot_0.1ubuntu1_amd64.changes -rw-r--r-- 1 thomas thomas 366324 2012-01-31 23:27 tuxboot_0.1ubuntu1_amd64.deb -rw-rw-r-- 1 thomas thomas 532 2012-01-31 23:26 tuxboot_0.1ubuntu1.dsc -rw-rw-r-- 1 thomas thomas 3831699 2012-01-31 23:26 tuxboot_0.1ubuntu1.tar.gz drwxrwxr-x 8 thomas thomas 4096 2012-01-31 23:27 tuxboot-0.2 thomas@ubuntu:/qt\$ ls -l tuxboot-release/0.2/ total 3772 -rw-rw-r-- 1 thomas thomas 3860723 2012-01-31 23:25 tuxboot-0.2.src.tar.gz

edit tuxboot/release-src //update version ./tuxboot/release-src tar -xvf tuxboot-release/\$ver/tuxboot-0.2.src.tar.gz -C package/ cd package/tuxboot-0.2 build-package upload to source forge old convert log: ./tuxboot/tag%3E%20develop)

Comments