Visual embedlinux Tools Update to 0.1.7

Source: Internet
Author: User

1.1.1 What is visual Embedlinux Tools

Visual Embedlinux tools, referred to as Velt, is a Visual Studio plug-in that assists in the completion of Linux development. With this plug-in, you will be able to develop Linux applications (including compilation and debugging) in the VisualStudio IDE, as well as compile and debug Uboot and Linux kernels, and correctly locate the source code based on the error information at compile time. The current version is 0.1.7 and only supports vs2013. This plugin can be downloaded from the CSDN download channel (http://download.csdn.net/detail/lights_joy/9170787). Here are the basic features:

1, support x86 Linux, HiSilicon hi3516/hi3520,mingw,marvell/xcat These platforms, provide project templates.

2, completes the compilation of the Uboot, and automatically locates the corresponding file location according to the compiled error information.

3, complete the compilation of the Linux kernel, and automatically locate the corresponding file location according to the compiled error information.

4, in VS under the use of serial port for the simple debugging of the kernel.

5. Complete the Linux kernel configuration in vs.

6, do not use Makefile for the development of Linux applications.

7, the development of Linux applications using makefile.

8, can support the application of Linux, dynamic library, Static library, Console/gui and other applications development and debugging.

9. Use SSH to connect to the target machine and debug the application with GDB.

10. Use Telnet to connect to the target machine and debug the application with GDB.

11. Integrated terminal software (Puttyx.ocx) in VS, support ssh/telnet/com.

12. For the x86 Linux kernel, you can debug directly with QEMU.

The following modifications were made in version 0.1.7:

New features:

1. Add installation and anti-installation function

2. Add a global configuration and save it to the registry in the tools-and options for VS

3, the compilation parameters of the project to add a new "Use default configuration Options" To use the global configuration

4. Add a wizard for the new project.

Modify Features:

1, delete poderosa, instead of Putty.ocx control as an integrated terminal.

2, remove the Kernelconfig kernel configuration function.

Fundamentals of 1.1.2 IntelliSense

Velt does not own the Code analysis tool, but because it uses the project is the VC + + project, therefore the VC can complete the code analysis and the intelligence prompt, visualassist x such plug-in also can work normally!

Fundamentals of 1.1.3 Compilation

Velt itself does not contain any compilation tools, it does only the work of VS2013 this front-end and the different GNU compiler connection, the real compilation and debugging is still done by the cross-compiling tool, So the Linux development under VS is the premise that the cross-compilation environment under Linux will work properly!

When compiling the code, Velt uses a method of remote compilation, when VS is compiling, Velt uses SSH to log on to the Linux host system to compile, and then analyzes the information generated during the compilation, converting it to the information that the VS can recognize. This way, VS will be able to correctly locate the file in the IDE where the error occurred! To achieve this, you need to ensure that the vs2013 also has access to the code files. Velt relies on the shared directory capabilities of the Linux samba or virtual machines to share the project files, and does not support compiling files with SCP after uploading them to Linux.


As shown in the following:

VS2013 's compilation process is controlled by MSBuild, Velt overloads the compilation task under MSBuild, and if you are developing a Linux program, Velt will call Putty to connect remotely to the Linux development machine via SSH and then invoke the GCC compiler on the development machine to compile , if the MINGW program is developed, Velt will be compiled by Cmd.exe call MinGW gcc.

During the compilation process, Velt will receive output information from the Putty.exe or Cmd.exe for analysis, converting this information to the error and warning messages that the VS can identify and output to the output Information Bar of vs.

1.1.4 Fundamentals of application debugging

In the Linux application debugging this piece, Velt not only can support the Linux under the console application debugging, after installs the Xserver on the Windows also can carry on the GUI application debugging, but only uses GDB, does not support Gdbserver, The structure of its debug engine is:


As shown, Velt runs several auxiliary programs on the Windows side.

The first is remoteconsole, the main function of this program is to display the remote program output, and accept the user input to the remote, this program is included in the Embedlinux installation package.

Next is the putty, which is used to complete the ssh/telnet/com connection and is responsible for invoking GDB on the remote Linux. , this program is included in the Embedlinux installation package.

If you want to debug a GUI program under Linux under VS, you will also need to install xming, the X server under Windows, which is not in the Embedlinux installation package and needs to download and install it yourself to mingw.org. If you do not need to debug GUI programs, you can of course ignore it.

When you press CTRL-F5 to run without debugging, the structure of the velt becomes like this:


At this point the VC debugging engine will call Remoteconsole,remoteconsole and then call Putty as needed to connect to the Linux machine and invoke the target program, if you are debugging a program under Windows, Remoteconsole will call the local Targetapp via Cmd.exe.

1.1.5 Development environment

The following is a typical embedded development environment configuration:

Host development Environment:

System: WIN8 64-bit

Development tools: vs2013 + velt-0.1.7

Virtual machine: Vmware workstation-11.0.

To compile the host development environment:

The system of virtual machines is used for the provision of various services in cross-compiling and embedded development.

Operating system: RHEL-6.3, This virtual machine is for development only, regardless of its security configuration.

Development tools: GCC, cross-compilation tool chain under different platforms.

System services: Enable TFTP, Samba, FTP, SSH

Target machine: The platform you want to use, such as a platform such as sea-think, TI, Adi, or a virtual machine's Linux.

Connection mode: telnet/ssh/com

Debug mode: Gdb/gdbserver

1.1.6 directory Sharing

First, share the Windows directory with VMware's shared directory functionality to Linux, such as F:\work, and the directory you see under Linux is/mnt/hgfs/share/work.

Next, the directory under Linux is shared with the Samba service to Windows, such as/work, mapped to z:\ under Windows, and it's important to note that Samba 's account number and SSH login account should be consistent, to avoid due to the problem of permissions caused unnecessary interference .

When developing Uboot and Linux kernels, the code can only be placed on Linux virtual hard disks, not on Windows systems, because they need to use symbolic links and are case sensitive.

In general application development, if you do not use symbolic links, you only need to put the code in the Windows directory, which can speed up the code analysis of vs.

1.1.7 SDF File location

Because VS2013 browsing information is placed in an SDF file, and the project file may be placed in the shared directory of the virtual machine, the path to the SDF file needs to be changed, and it must be guaranteed to be on a hard disk that is directly managed by Windows, or it will slow down when compiling large projects.


1.1.8 Velt Installation

Start installing the Velt plugin below:

1. Uninstall the old version of the plugin before starting the installation.

2. Running Veltsetup-0.1.7.exe:


Install it all the way down, note that during the installation there will be a VSIX installation window, which may be hidden behind the main installation window:


You should be able to see this plugin in the VS Help message after the installation is complete:


You can also see it in extensions and updates in tools, such as:



3. Open the New Project window of VS to see the newly added Embedlinux platform:


The installation is complete!

1.1.9 Velt Uninstall

The uninstallation of the velt can be done through the uninstall function of the Control Panel:















Copyright NOTICE: This article for Bo Master original article, without Bo Master permission not reproduced.

Visual embedlinux Tools Update to 0.1.7

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.