Subscribe to RSS Subscribe to Comments
devkitPro
SourceForge.net Logo

Why does the installer tell me “your internet connection seems to not be permitted or dropped out”?

The download plugin used by the devkitPro NSIS installer/updater reads your proxy settings from the Internet Explorer configuration. If you’re using an alternative browser you may not have set up IE or you may be using an out of date configuration.

In some cases this has been caused by a firewall blocking the installer - in this case you should check your firewall settings and manually allow the installer to access the internet.

How do I use devkitPro toolchains with UltraEdit?

Click on Advanced->Tool Configuration and edit the dialog box as shown here. Type ‘make -r’ as the command line, ‘%rp’ as the working directory and ‘make’ as the menu item name. Tick the boxes as shown and click insert, you should see the item appear in the bottom list. The ‘clean’ item has ‘make clean’ as the command line and ‘clean’ as the item name. Similarly ‘all’ is ‘make all’ and ‘all’.

UltraEdit (7K)

You can also set up your own keyboard shortcuts from the Advanced->Configuration->Key Mapping dialogue. The default keys are [CTRL]+[SHIFT]+1 for the first tool, [CTRL]+[SHIFT]+2 for the second, and so on.

UltraEdit Keys (10K)

 

When UltraEdit is set up in this way you must have a project file in order to build, this is the simplest way to ensure that make is given the proper directory to run from and so find the makefile.The makefiles provided with the devkitPro example projects are designed to make life as easy as possible for the programmer. In most cases all you need to do is copy the contents of one of the template projects to the folder where you have created the .prj file. The makefile expects to find .c or .cpp files in the source folder and sets the include path to the include folder.

How do I use devkitPro toolchains with Visual Studio 6?

Start a new project and select Makefile.

Visual Studio 6 new project

In both the following dialogs type

make -r 2>&1 | sed -e 's/(.[a-zA-Z]+):([0-9]+):/1(2):/'

in the command line box. There doesn’t appear to be a way to get clean to work with Visual Studio so the rebuild all switch is used here. The sed part of this command is used to parse the output from gcc and translate the error messages so Visual Studio understands them.

Visual Studio 6 makefile project

If you have a makefile project already set up you can also set the make command line through the Project Settings dialog.

Visual Studio 6 settings

The makefiles provided with the devkitPro example projects are designed to make life as easy as possible for the programmer. In most cases all you need to do is copy the contents of one of the template projects to the folder where the dsp/dsw files are. The makefile expects to find .c or .cpp files in the source folder and sets the include path to the include folder. In some cases you may need to add the path to make in the Executable file paths in Visual Studio’s options. To do this click on Tools->Options and select the Directories tab. Use the drop down to select Executable files and add the path to the msys bin folder which will be c:\devkitPro\msys\bin if you left the default path in the installer.

Visual Studio 6 directories

How do I use devkitPro toolchains with Visual C++ Express?

Start a new project and select makefile, on the general tab. Enter the name of the project and the folder where it will be located, leaving the ‘Create directory for solution’ box unchecked. Click OK.

MSVC++ Express new project

In the following dialog type

make -r 2>&1 | sed -e 's/\(.[a-zA-Z]\+\):\([0-9]\+\):/\1(\2):/'

in the ‘Build command line:’ box. Under ‘Clean commands:’ type “make clean”. The sed part of this command is used to parse the output from gcc and translate the error messages so Visual C++ Express understands them and allows clicking on the errors to take you to the relevant file.

MSVC++ Express config settings

The makefiles provided with the devkitPro example projects are designed to make life as easy as possible for the programmer. In most cases all you need to do is copy the contents of one of the template projects to the folder where the solution files are. The makefile expects to find .c or .cpp files in the source folder and sets the include path to the include folder. In some cases you may need to add the path to make in the Executable file paths in the Visual C++ Express options.

How do I use devkitPro toolchains with Programmer’s Notepad 2?

Programmer’s Notepad is installed and configured by the devkitPro installer and most of the example code provided contains a .pnproj file. Double clicking this file should load the relevant project complete with file tree view. Some tools are configured already - make and clean, these may be accessed by pressing ALT 1 for make and ALT 2 for clean or alternatively from the tools menu. The project files are designed so that .h files saved in the include folder and .c/.cpp files saved in the source folder are automatically added to the tree view. To get files which have just been added to show up you need to toggle the relevant folder in the tree view.

In order to set these functions up manually first click Tools->options then move to the Tools pane in the options dialog. In this section you want to modify the global tools.

PN2 Options

Click the add button and set up make as shown here. The command is the actual command line used to run the tool, in this case simply make. The Folder box denotes the working directory for the tool, in this case we’ve set it to $(ProjectPath) which is the directory where the PN2 project file is stored. All the devkitPro example code is arranged so the makefile is there. Set the tool to save all files before running so you don’t have to save your modifications manually. To set the keyboard shortcut for the tool simply click in the Shortcut box and press your desired key combination.

PN2 Tool Properties

Click the Console I/O tab and tick the Capture Output box, the default error parser is fine for gcc tools.

PN2 Tool Properties

Setting up clean is identical, just set the name of the tool as ‘clean’ and the command as ‘make clean’.

Why should I upgrade from devkit advance?

Devkit Advance has not been updated in a number of years, devkitARM is based on much newer versions of the FSF sources. There have been many improvements along the way, these are just a few of the reasons you should use devkitARM instead

  • More compact toolchain, around 30MB instead of 100.
  • Updated more frequently.
  • Easy installer for windows, including web update.
  • Produces smaller code.
  • Compiles faster.
  • Built in support for Nintendo DS and Gamepark GP32.

There are some minor differences you should be aware of when compiling code written using the older toolchain. devkitARM uses the standard main function in preference to AgbMain since the reasons for that were based on a misunderstanding of elf targeted compilers. Providing a crt0 and linkscript with each project is no longer necessary, nor is editing the crt0 source. The toolchain provides a crt0 and linkscript for each target it supports and these are switchable using the -specs parameter when linking.

Unfortunately most of the tutorials you’ll find on the web are based on the old toolchain and are not usually suitable for use with devkitARM. Example code which uses libgba is provided which will help the would be programmer in their quest.

devkitARM is the natural successor to Devkit Advance and is now being used by more homebrew programmers than the earlier toolchains. While Devkit Advance was a great starting point for Gameboy Advance programming in its day it was difficult to use for other ARM platforms such as the GP32 and the new DS due to some gba specific patches. This is no reflection on Jason Wilkins who did sterling work on providing a toolchain for homebrew GBA programming where none existed. Devkit Advance was the best choice in its day but is now quite outdated.

Why does make often crash creating a sh.exe.stackdump file when I try to compile my source code?

If you experience random crashes with make as well as with the msysinfo command (i.e., repeating the command often allows to compile the source code succesfully), the issue might be caused by the Logitech QuickCam software. Here is a solution to this issue:

  • type the command services.msc from a command prompt (you will need administrator privileges to do this), then find the “Logitech Process Monitor” service, and change the “Startup type” from “Auto” to “Manual”. Do the same with the “LVSrvLauncher” service.
  • type the command regedit from the command prompt (you will need administrator privileges to do this), then find the key HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run. Among the other REG_SZ keys, there should be three of them related to the Logitech QuickCam, namely: “LogitechCommunicationsManager”, “LogitechQuickCamRibbon”, “LVCOMSX”. Make a backup of the registry, then remove them.
  • Reboot your PC.

In this way the Logitech QuickCam daemon will be no longer available but the camera will keep working just fine with 3rd party software (e.g., Skype). If you want a less drastic solution, just kill the lvprcsrv.exe process whenever you want to use MSYS by typing at the command prompt: pskill -t lvprcsrv.exe (you will need PsTools and administrator privileges to do this). However, as soon as you will plug in the USB cable of your Logitech QuickCam, the daemon will be restarted, while with the first procedure it won’t.

This FAQ entry has been reproduced from the MinGW FAQ

Wordpress theme based on Fluidity redesign by Kaushal Sheth