我已经在这里找到并阅读了这个问题,也在这里和这里提出了问题,不幸的是它仍然没有得到解决.(虽然我使用了该线程中的所有提示尽可能多地提供信息)
有几天我一直试图找到一种能够交叉编译Qt的方法,因为我最近有一个,现在想学习如何编写一些基本的嵌入式应用程序.
我在这里关注教程: http ://visualgdb.com/tutorials/raspberry/qt/embedded/
apt-get install libudev-dev libinput-dev libts-dev libxcb*第一次运行它,configure说是缺少libs)2015-11-21-raspbian-jessie与raspberry-gcc-4.9.2-r2.exeqt-everywhere-opensource-src-5.5.0.tar.xz)../qt-everywhere-opensource-src-5.5.0/configure -platform win32-g++ -xplatform linux-arm-gnueabi-g++ -release -opengl es2 -device linux-rasp-pi2-g++ -sysroot C:/SysGCC/Raspberry/arm-linux-gnueabihf/sysroot -prefix /usr/local/qt5 -device-option CROSS_COMPILE=C:/SysGCC/Raspberry/bin/arm-linux-gnueabihf- -qt-xcb几个小时后,一切都建好了,大概没有错误.(我的输出与教程中的屏幕截图相同)
但是,尝试运行任何构建的示例,只会产生一行: Illegal instruction
按照我在开头提到的主题,这是file输出:
root@raspberrypi:/usr/local/qt5/examples/opengl/cube# file cube
cube: ELF 32-bit LSB executable, ARM, EABI5 version 1 …Run Code Online (Sandbox Code Playgroud)我安装了Visual Studio 2017 Build Tools.安装后,在导航开始→程序→Visual Studio 2017→Visual Studio工具时,只有一个x86开发人员命令提示符.没有x64和ARM的提示.(通常有大约6个开发人员提示可供选择).
x64和ARM的构建工具位于何处?
更新(JAN-18-2017)
安装整个Windows 10 SDK,根据@ magicandre1981指令构建15003后,我找不到Developer Prompts.我在"开始"菜单中找不到它们; 并放入Git Bash shell并搜索它们返回0结果.
在下面的名称中,vsdevcmd.bat是VC++ Build Tools for 2017 vcbuildtools.bat安装的内容.是VC++ Build Tools for 2015安装的内容.
MINGW64 /c/Program Files (x86)/Windows Kits/10
$ find . -iname 'vsdevcmd.*'
$ find . -iname 'vcbuildtools.*'
$ find . -iname '*.bat'
$ find . -iname '*.cmd'
./bin/10.0.15003.0/arm/SecureBoot/DeleteKitsPolicy.cmd
./bin/10.0.15003.0/arm/SecureBoot/InstallKitsPolicy.cmd
./bin/10.0.15003.0/arm64/install-sampleprovider.cmd
./bin/10.0.15003.0/arm64/uninstall-sampleprovider.cmd
./bin/10.0.15003.0/x64/install-sampleprovider.cmd
./bin/10.0.15003.0/x64/uninstall-sampleprovider.cmd
./bin/10.0.15003.0/x86/DismFoDInstall.cmd
./bin/10.0.15003.0/x86/GenerateUnionWinMD.cmd
./bin/10.0.15003.0/x86/install-sampleprovider.cmd
./bin/10.0.15003.0/x86/uninstall-sampleprovider.cmd
./bin/arm/SecureBoot/DeleteKitsPolicy.cmd
./bin/arm/SecureBoot/InstallKitsPolicy.cmd
./bin/arm64/install-sampleprovider.cmd
./bin/arm64/uninstall-sampleprovider.cmd
./bin/x64/install-sampleprovider.cmd
./bin/x64/uninstall-sampleprovider.cmd
./bin/x86/DismFoDInstall.cmd
./bin/x86/GenerateUnionWinMD.cmd
./bin/x86/install-sampleprovider.cmd
./bin/x86/uninstall-sampleprovider.cmd
./Debuggers/x64/srcsrv/cv2http.cmd
./Debuggers/x64/srcsrv/cvsindex.cmd …Run Code Online (Sandbox Code Playgroud) 我正在尝试创建一个 CMakeLists.txt,它可以为该项目生成 VS 解决方案,并使用便携式 Visual Studio 工具包中的构建工具对其进行编译。不幸的是,每次我尝试运行 cmake 时仍然检测到已安装的 MSVC 编译器。
CMakeLists.txt:
cmake_minimum_required(VERSION 3.10)
project(app C)
add_executable(app main.c)
Run Code Online (Sandbox Code Playgroud)
我尝试过的:
vcvarsall.bat这个套件。例子:
SET CC=path/vs/build/tools/cl.exe
SET CMAKE_LINKER=path/vs/build/tools/link.exe
SET CMAKE_RC_COMPILER=path/vs/build/tools/rc.exe
SET PATH=path/vs/build/tools/;%PATH%
SET INCLUDES=path/vs/build/tools/includes
SET LIBPATH=path/vs/build/tools/libs
...
Run Code Online (Sandbox Code Playgroud)
然后我尝试运行:
cmake.exe -Bbuild .cmake.exe -Bbuild -G "Visual Studio 16" .
SET(CMAKE_C_COMPILER "path/vs/build/tools/cl.exe")
SET(CMAKE_LINKER "path/vs/build/tools/link.exe")
SET(CMAKE_RC_COMPILER "path/vs/build/tools/rc.exe")
...
Run Code Online (Sandbox Code Playgroud)
然后我尝试运行:
cmake.exe -Bbuild -DCMAKE_TOOLCHAIN_FILE=vs.cmake .cmake.exe -Bbuild -DCMAKE_TOOLCHAIN_FILE=vs.cmake -G "Visual Studio 16" .在这两种情况下,它都无法将 CMAKE_C_COMPILER 设置为可移植 VS,但仍然检测已安装的 MSVC 编译器。仅更改了链接器和 …
由于无关紧要的原因,我希望能够将多个文件包含到工具链文件中。假设我的工具链包含以下内容:
消息(状态“文件 1 没问题”) 包括(./build/file2)
file2 包含标识行:
消息(状态“文件 2 正常”)
CMakeLists.txt 包含:
cmake_minimum_required(版本 2.8.8) 项目(亲) 消息(状态“cmakelists.txt 没问题”)
我使用以下命令调用它:
cmake -DCMAKE_TOOLCHAIN_FILE=../../build/file1 ../../
现在,我希望得到以下输出:
-- 文件 1 没问题 --file2 没问题 -- cmakelists.txt 没问题
然而我明白了:
-- 文件 1 没问题
--file2 没问题
-- 文件 1 没问题
--file2 没问题
-- C 编译器标识为 Clang 5.0.0
-- CXX 编译器标识为 Clang 5.0.0
-- 检查工作的 C 编译器:/usr/bin/cc
/fullpath/build/file1:2 处的 CMake 错误(包括):
包含找不到加载文件:
./build/file2
调用堆栈(最近调用优先):
/fullpath/build/Mac/CMakeFiles/2.8.12/CMakeSystem.cmake:6(包括)
CMakeLists.txt:2(项目)
CMake 错误:内部 CMake 错误,TryCompile 配置 cmake 失败
-- 检查工作的 C 编译器:/usr/bin/cc -- 损坏 … 我已经有一个工具链来跨平台构建我的 C++ 应用程序,但是调试起来很麻烦。将 Visual Studio 附加到设备上正在运行的应用程序会很好。无论如何,是否可以将 Visual Studio 2015 的调试器附加到正在运行的应用程序,例如 Windows 进程?
亲切的,马丁
我是新来的,所以也许我没有得到什么.我知道npm可以npm_modules在项目本地的目录中安装模块,或者使用--global它可以在机器范围的位置安装它.
除了一些临时的便利,为什么你会在全球安装任何包?例如,我看到各种npm配置/设置执行全局安装的打字稿.但是如果我的机器上有5个项目,其中3个使用不同版本的打字稿,那就不好了......对吧?
我对包管理的经验来自Java/Maven世界,其中所有模块都安装在全局位置(〜/ .m2/repository),但要引用ANYTHING(作为cmd/tool/plugin或作为依赖项),您需要指定版本号.因此,您可以获得两全其美的效果 - 消除重复的软件包安装和完全可重复的构建.我本以为npm会以自己的方式完成同样的事情.
我错过了什么?
我为 Java 安装了 Eclipse Neon.2,但是,我正在处理一个涉及 JNI 的项目,所以我不得不为 C++ 设置 Eclipse。要做到这一点,我下载了Development Tools for C++下Help -> Install New Software。我的问题是没有toolchains可用于我的 C++ 项目。
一些网站和 YouTube 视频表明有一个 Microsoft Visual C++ 工具链可用,例如这个SO 问题和这个视频,但我没有成功。
是否有我可能错过的设置阶段或插件导致它未列出?
设置
Windows 10
Eclipse Neon.2
Microsoft Visual Studio Enterprise 2017 RC
我需要使用较小版本的软件包来构建我的工具链。有没有办法通过禁用 mpc、mpfr 和 gmp 包来构建 gcc?
我相信我正在从命令行运行 Swift 5.7,并且 Swift 5.7 应该具有新的 Regex 类和 /.../ 语法。但似乎并非如此。
我有以下 Swift 源代码“parse.swift”。但 Swift 似乎不理解 Swift 5.7 /.../ 语法来指示 Regex (生成的错误不应该用于合法的 regex 模式),所以我尝试了一种不同的方法,发现它无法识别新的 Regex 类本身。
let pattern = #"^ ,([A-Z][A-Z])([0-9][0-9]),(.*?),(.*?) "#
let regex = try! Regex(pattern)
Run Code Online (Sandbox Code Playgroud)
$ swift parse.swift < somefile
parse.swift:3:18:错误:在范围内找不到“Regex”
让正则表达式 = 尝试!正则表达式(模式)
^~~~~
有什么我需要导入或做不同的事情吗?
这是它说我正在运行的版本:
$ swift --version
Apple Swift 版本 5.7-dev(LLVM eecf02df5133efe、Swift ad06e7d7251311a) 目标:arm64-apple-macosx12.0
我通过从 ~/.zshrc 导出以下内容来选择 5.7 版本的 Swift
export TOOLCHAINS=org.swift.57202206261a
export TOOLCHAIN_DIR=/Library/Developer/Toolchains/swift-5.7-DEVELOPMENT-SNAPSHOT-2022-06-26-a.xctoolchain
Run Code Online (Sandbox Code Playgroud) toolchain ×10
c++ ×2
cmake ×2
android ×1
build-tools ×1
c ×1
debugging ×1
eclipse ×1
gcc ×1
npm ×1
npm-install ×1
qt ×1
raspberry-pi ×1
regex ×1
swift5.7 ×1
windows-8.1 ×1