Try   HackMD

GUIslice 與 GUIslice-Builder 編譯準備

https://github.com/ImpulseAdventure/GUIslice-Builder
https://github.com/ImpulseAdventure/GUIslice

GUIslice-Builder

GUIslice-Builder 的編譯環境準備

  1. Eclipse https://www.eclipse.org/downloads/
  2. adoptium https://adoptium.net/temurin/releases/?version=18
    2.1 記得載18 版本 因為GUIslice-Builder 使用第18 版本

GUIslice-Builder 的編譯環境建立步驟

  1. 使用Eclipse Import Proejct 選擇在GUIslice-Builder 資料夾裡面的Builder 的 build.
  2. 根據 https://github.com/ImpulseAdventure/GUIslice-Builder 裡面的BUILD.txt 修改Eclpise Project
    2.1 靈感 https://stackoverflow.com/questions/58446696/passing-arguments-to-gradle-run-in-intellij-idea
    2.2 結果因為很奇特所以一定要寫下來

    2.3 在Run ->Run Configuration -> builder-run -> Project Settings -> Program Aruments =
    ​​​​run
    ​​​​--args="insideIDE"
    
  3. 根據以上設定按下Gradle Tasks 當中的Application -Run 就可以看到GUIslice-Builder 跑起來不會跳出錯誤
  4. 在資料夾GUIslice-Builder/builder 底下建立logs 資料夾

GUIslice

安裝與編譯測試 GUIslice

https://github.com/ImpulseAdventure/GUIslice/wiki/Installing-GUIslice-on-Raspberry-Pi
GUIslice/src/GUIslice_config.h 當中我只有把這個拿掉註解就可以使用make 編譯與測試

使用cmake 搭配VScode 來編譯

https://github.com/ImpulseAdventure/GUIslice/wiki/Compiling-under-LINUX

https://easylearnai.com/cmake-vscode/
https://zhuanlan.zhihu.com/p/52874931 cmake.environment 有點厲害

cmake_minimum_required(VERSION 3.0.0)
project(GUIsliceExamples VERSION 0.1.0)

include(CTest)
enable_testing()

include_directories(/usr/local/include ../../src .)

#link_directories(/usr/local/lib)

set(GSLC_SRCS ../../src/GUIslice_drv_sdl.c ../../src/GUIslice.c)
set(LIBRARY lGUIslice SDL SDL_ttf m)

aux_source_directory(../../src/elem/ GUIsliceElem)

set(CPACK_PROJECT_NAME ${PROJECT_NAME})
set(CPACK_PROJECT_VERSION ${PROJECT_VERSION})
include(CPack)

add_library(lGUIslice ${GUIsliceElem} ${GSLC_SRCS})

set(EXECUTABLE_NAME ex01_lnx_basic)
add_executable(${EXECUTABLE_NAME} ${EXECUTABLE_NAME}.c)
target_link_libraries(${EXECUTABLE_NAME} ${LIBRARY})

使用GUIslice-Builder 產生的檔案搭配 cmake 來編譯測試

因為只是為了快速實驗與測試整合
直接把程式碼放到GUIslice/examples/linux 裡面
cmake 檔案裡面新增產生的.c 就好了