注意下面的操作仅在root用户下操作完成
wsl -u root -d Ubuntu
apt install gedit fcitx fcitx-config-gtk fcitx-sunpinyin fcitx-pinyin fcitx-googlepinyin xfonts-intl-chinese
// vim: syntax=shell | |
make ARCH=arm INSTALL_HDR_PATH=/opt/armv5-eabi/arm-buildroot-linux-gnueabi/sysroot headers_install | |
make ARCH=arm CROSS_COMPILE=arm-linux- menuconfig | |
export C_INCLUDE_PATH=$C_INCLUDE_PATH:/opt/armv5-eabi/arm-buildroot-linux-gnueabi/sysroot/usr/include:/opt/armv5-eabi/lib/gcc/arm-buildroot-linux-gnueabi/7.3.0/install-tools/include/:/opt/armv5-eabi/arm-buildroot-linux-gnueabi/include/linux/ | |
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/opt/armv5-eabi/arm-buildroot-linux-gnueabi/sysroot/usr/lib:/opt/armv5-eabi/arm-buildroot-linux-gnueabi/sysroot/usr/lib | |
export LIBRARY_PATH=$LIBRARY_PATH:/opt/armv5-eabi/arm-buildroot-linux-gnueabi/sysroot/usr/lib:/opt/armv5-eabi/arm-buildroot-linux-gnueabi/sysroot/usr/lib | |
make ARCH=arm CROSS_COMPILE=arm-linux- |
CROSS_COMPILE=arm-linux AR="arm-linux-ar" RANLIB=arm-linux-ranlib CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as CXX=arm-linux-g++ ./configure --prefix=/root/apache --host=arm-linux --with-ssl=/arm-linux --with-apr=/arm-linux --with-apr-util=/arm-linux --with-pcre=/arm-linux --enable-cgi --enable-vhost-alias --enable-ssl --enable-isapi --with-mpm=prefork CFLAGS="-DBIG_SECURITY_HOLE" LDFLAGS="-lpthread" ap_cv_void_ptr_lt_long=no | |
/arm-linux/build-1/libtool --silent --mode=link arm-linux-gcc -std=gnu99 -g -O2 -DBIG_SECURITY_HOLE -L/arm-linux/lib -lpthread -o httpd modules.lo buildmark.o -export-dynamic server/libmain.la modules/core/libmod_so.la modules/http/libmod_http.la server/mpm/event/libevent.la os/unix/libos.la -L/arm-linux/lib -lpcre /arm-linux/lib/libaprutil-1.la -lexpat /arm-linux/lib/libapr-1.la -lrt -lcrypt -ldl -lpthread | |
注意这里实际不需要指定--with-apr-util和--with-apu,因为这样做比较麻烦,需要先交叉编译好apr和apr-util。可以下载最新的apr apr-util放到httpd/srclib中,一起交叉编译即可。 |
CROSS_COMPILE=arm-linux AR="arm-linux-ar" RANLIB=arm-linux-ranlib CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as CXX=arm-linux-g++ ./configure --prefix=/root/gittools --target=arm-linux --host=arm-linux LDFLAGS="-L/arm-linux/lib" CFLAGS="-I/arm-linux/include" |
http://www.cnblogs.com/Charles-Zhang-Blog/p/3529980.html
#./configure -prefix=/usr/local/mysql
#{ac_cv_sys_restartable_syscalls+set}"
#-rpath=/arm-linux/arm-none-linux-gnueabi/lib
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/arm-linux/arm-none-linux-gnueabi/lib
export LIBRARY_PATH=$LIBRARY_PATH:/arm-linux/arm-none-linux-gnueabi/lib
参考 https://wiki.beyondlogic.org/index.php/Cross_Compiling_SAMBA_for_ARM
./configure --without-krb5 --without-ldap --without-ads --disable-cups --enable-swat=no --with-winbind=no --target=arm-linux --host=arm-linux --prefix=/root/samba --with-configdir=/etc samba_cv_CC_NEGATIVE_ENUM_VALUES=yes libreplace_cv_HAVE_GETADDRINFO=no ac_cv_file__proc_sys_kernel_core_pattern=yes
make
make install DESTDIR=/root/samba
gcc------------------------------------ tcc-0.9.27----------------------
GCC_ARCH="-m32" AR="arm-linux-ar" RANLIB=arm-linux-ranlib CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-a PROCESSOR=ARM
./configure --prefix=/arm-linux/opt/tcc \
--sysroot=/arm-linux \
--cross-prefix=arm-linux- \
--libpaths=/arm-linux/lib \
--crtprefix=/arm-linux/sysroot/usr/lib \
GCC_ARCH="-m32" AR="arm-linux-ar" RANLIB=arm-linux-ranlib CC=arm-linux-gcc LD=arm-linux-ld AS=arm-linux-as PROCESSOR=ARM ./Configure linux-armv4 no-asm shared -DL_ENDIAN -D_GNU_SOURCE --prefix=/arm-linux --openssldir=/arm-linux/etc/ssl
error: PTHREAD_MUTEX_RECURSIVE undeclared 添加 -D_GNU_SOURCE 然后删除Makefile里两处 -m64 --------------------------------完美成功 openssh --------------------------------完美成功
// vim: syntax=c++ | |
#include <windows.h> | |
#include <tchar.h> | |
#include <iostream> | |
#include <strsafe.h> | |
#include <io.h> | |
#include <list> | |
#include <algorithm> | |
#include <fcntl.h> |
1.请在 cygwin 里的/etc/profile文件的开头部位加上 export WORKDIR=$PWD ,末尾部位加上 cd $WORKDIR
因为执行类似 I:\cygwin64\bin\bash.exe --login -c "echo $PWD" 这样的命令时,工作目录才不会改变成 /home/Administrator
2.cygwin gcc 编译时可能需要配置一些环境变量等,可以在.vscode/settings.json里加上下面的配置 bash 无 --login 参数时,将执行BASH_ENV配置的文件
"terminal.integrated.env.windows": {
"Path":"",
"OSTYPE":"cygwin",