最近把乙個群暉的nas放在校園網裡的時候遇到了銳捷認證的問題,找了一下沒有現成的程式可以拿來用,然後自己交叉編譯乙個mentohust來用。
# uname -a
linux my-nas 3.10.105 #25426 smp wed jul 8 03:19:42 cst 2020 x86_64 gnu/linux synology_broadwell_rs3618xs
這樣基本環境就弄好了,剩下的就是編譯你需要的程式。# wget
# tar -jvxf broadwell-gcc493_glibc220_linaro_x86_64-gpl.txz
# cd x86_64-pc-linux-gnu/bin
# ls
x86_64-pc-linux-gnu-addr2line x86_64-pc-linux-gnu-cc x86_64-pc-linux-gnu-elfedit x86_64-pc-linux-gnu-gcc-ar x86_64-pc-linux-gnu-gprof x86_64-pc-linux-gnu-nm x86_64-pc-linux-gnu-ranlib x86_64-pc-linux-gnu-strip
x86_64-pc-linux-gnu-ar x86_64-pc-linux-gnu-c++filt x86_64-pc-linux-gnu-g++ x86_64-pc-linux-gnu-gcc-nm x86_64-pc-linux-gnu-ld x86_64-pc-linux-gnu-objcopy x86_64-pc-linux-gnu-readelf
x86_64-pc-linux-gnu-as x86_64-pc-linux-gnu-cpp x86_64-pc-linux-gnu-gcc x86_64-pc-linux-gnu-gcc-ranlib x86_64-pc-linux-gnu-ld.bfd x86_64-pc-linux-gnu-objdump x86_64-pc-linux-gnu-size
x86_64-pc-linux-gnu-c++ x86_64-pc-linux-gnu-ct-ng.config x86_64-pc-linux-gnu-gcc-4.9.3 x86_64-pc-linux-gnu-gcov x86_64-pc-linux-gnu-ldd x86_64-pc-linux-gnu-populate x86_64-pc-linux-gnu-strings
可以看到gcc相關的可執行程式,這時候可以驗證一下下的程式對不對,執行乙個試試。
然後把bin目錄新增到path讓系統能夠找到你的工具鏈
# export path=$path:你的工具包的目錄/x86_64-pc-linux-gnu/bin
# apt-get install autoconf automake libtool
帶引數執行configure生成makefile
# ./configure --host=x86_64-pc-linux-gnu [這裡可能還有你的程式的其他配置引數]
其中host就是目標機器平台了,這個對應著工具鏈bin目錄下檔案共有的字首,比如前面ls命令輸出的那些gcc之類的,x86_64-pc-linux-gnu
是它們的字首。
configure不出錯的話下一步就是執行make
進行編譯,編譯的輸出自己去找一下。有些也可以在configure裡設定安裝目錄,然後make
完再make install
就會安裝到設定的目錄了。
編譯**現的其他問題,請在google\stackoverflow\github的issues裡面找解決辦法。
完工
更新
# make cross_compile=x86_64-pc-linux-gnu
或者在你的makefile裡面新增,不熟,自己去查。
或者更簡單的要直接編譯原始檔:
# x86_64-pc-linux-gcc main.c
另外,如果目標平台儲存空間有限,需要壓縮編譯出的可執行檔案的的大小的話,用x86_64-pc-linux-gnu-strip:
這玩意在嵌入式的交叉編譯中有奇效。
群暉登入位址 開啟群暉系統的root許可權
在控制面板中開啟ssh 開啟瀏覽器,輸入群暉web管理位址,登入群暉之後開啟控制面板。從控制面板中開啟終端機和snmp介面,在終端機選項卡中,啟動ssh功能。群暉的ssh功能每次重啟nas後會自動關閉,如果以前開啟了但是重啟過nas仍然需要再開啟一次 用ssh連線nas 然後將會開啟乙個終端視窗,熟...
量子互聯 群暉NAS的遠端對映配置
使用者訪問量子互聯控制台 註冊帳號並登入。控制台後台隧道列表右上角選擇開通隧道,進入開通隧道設定頁面 群暉預設http管理埠5000,https管理埠5001,這裡以5000埠為例 在控制台開通隧道,內網ip 127.0.0.1,內網埠 5000 s1.nsloop.com 13210為對映後的公網...
用crosstool ng構建自己的交叉編譯工具鏈
交叉編譯器是編譯器的一種,它執行在一種平台下卻生成另一種平台執行的二進位制檔案。當前構建交叉編譯器的方法有很多,這裡介紹一種方便快捷的方式 使用crosstool ng 1.從crosstool ng cd crosstool ng 1.21.0 3.執行編譯三步曲 configure prefix...