Embedding SpiderMonkey in a portable C app - c

I'd like to embed Mozilla's SpiderMonkey in one of my C apps. On linux, I don't think it'll be a problem (I'm a linux user) but I must confess that I'm afraid that I have no clue on how to do it on windows using MINGW (I want the app to be portable)
Is it possible to, say, just use the dll that comes with firefox? (I, honnestly, don't even know how to use dlls with MINGW)
Do you have any tips, hints, tutorials on how to build (or just embed spidermonkey) on windows using MINGW (I refuse to use Visual Studio :) )
Or do you have an alternative solution other than SpiderMonkey that's easy to use, and can do some basic javascript stuff (I don't need DOM for eg.) ?
Thanks a LOT!

As far as I know Mozilla build it's software on Windows using MSVC.
https://developer.mozilla.org/En/Developer_Guide/Build_Instructions/Windows_Prerequisites
You may be on your own if building with Mingw32 is a must.

Related

Dos.h + Pc.h in C and Windows Vista

I am currently looking to work with Mesa3D to create a software rendered graphic application with OpenGL.
I am looking a a few tutorials right now on how to use it, and many are written with DOS or older versions of Windows in mind. As I run Vista I don't seem to have the right files I need.
The Mesa3D tutorial I am using uses outportb() and a few other commands which I can't seem to get working. After looking around I have found you require the 2 include files:
dos.h
pc.h
These do not seem to be found within the Window's SDK that comes with Visual Studio 2010 (Express) or even the older version of 2005 (Professional) which I currently have.
They seem to be found with the DJGPP compiler that only works under DOS and is not supported in Vista, even with compatability mode. Running DosBox still does not get this to work.
I am wondering - is there perhaps a new functions replacing outportb or can I use these DJGPP files with my C/C++ complier with VS or PellesC (which I find better for C-only programs)?
In addition the conio.h include file I have with both VS and PellesC doesn't have the textmode() function, but the DJGPP version does.
If anyone could help either getting DJGPP working on Vista or allowing me to use the dos,pc and conio.h files from DJGPP with either VS or PellesC that'd be a great help!
Port-manipulating functions will simply not work in Win32 programs. Either use Win32 APIs to do I/O (rendering included) or stick to DOS and run your program in DOS or whatever DOS emulator you can find that works. Vista and later Windows won't run most DOS programs directly as the support for DOS is either severely reduced or removed altogether (e.g. in 64-bit Windows).
The low-level hardware access that functions like outportb give you is not available to programs in modern Windows environments. Such capabilities are reserved for specially-trusted code (OS internals and drivers). You need to go through higher-level APIs or drivers in order to access the same functionality.
The Mesa3D website has a readme for Windows developers that has information about what you need to install and configure. It also references some official demo code that you can use as the basis for your project. The Mesa3D website also has a repository full of demo programs that will probably serve as better examples than the out-of-date tutorials that you mentioned.
Do not use 16bit compilers on vista and higher.. instead use DOSBOX to run your programs.

Is there an IDE that works with CUDA on mac osx lion?

I'm trying to learn Cuda and its very interesting but I'm having problems creating code without a bit of help from an IDE. I know Java/Python but I'm unfamiliar with C/C++ so I have been using eclipse and Xcode to help me with commands and finding things(via code code completion). I can't seem to get these options for CUDA?
I have seen examples and can build them find(nvcc is working) but without the IDE to help catch some of my mistakes I'm a bit lost editing the code in just a text editor. I found a toolkit plugin for eclipse but although it seems to install I think its for a older build of eclipse because most of the options in the instructions do not match my version(Indigo). Nvidia has a plugin for Visual studio only on their site(I'd rather not install windows on my mac to use Cuda).
I'm sorry if this sounds bad but I'm curious to how people are developing cuda on Mac's. I don't care what IDE I use as long as it helps me see the options and warn me if I have syntax issues,etc..(I'm not the best programmer but switching IDE's for me has just been a matter of finding out where things are so I'm really fine with any solution as long as it helps me as I'm learning).
Nsight Eclipse Edition is available as a part of the CUDA Toolkit 5.0 (no additional download required).
Qt Creator!
You can read Qt Creator + CUDA + Linux for inspiration on how to setup the build environment on Mac OS X.
You could think about using JCuda:
http://www.jcuda.de/
There is XCode plug-in for CUDA development. I found it there. There is the main discussion on nvidia.com
Visual Studio Code + this extension:
https://github.com/gangliao/VS-Code-Cuda.
For me, Visual Studio Code is my favorite IDE for every language I found out there

How do I install Eclipse for C

How do I install Eclipse for C
Please send links and helpful tips.
Thanks
Need an easy install
• Steps involved
• SDK with all the libraries and stuff I'll need
• Variable path setup
• Anything else that may surprise a noob
I use the following plug-in which allows me to develop in both C and C++
Eclipse CDT
There are tutorials and instructions on how to download on the website, so if you have any other questions, let me know!
I've never used Eclipse for C or C++ (I have only used it for Java) and I'm guessing its just a simple install: http://www.eclipse.org/downloads/packages/eclipse-ide-cc-developers/heliosr
As far as I know, everything you'll need comes pre-packaged and configures itself as part of the installation. You'll need the JRE if you don't have it though.
I suggest going with MS Visual C++ express instead especially if you are on Windows. The reason is that getting the GNU C compiler installed with Eclipse on Windows is a real pain.
I did it once and don't even remember since it's a bit of work to get Cygwin — which provides a Linux®-like environment on Windows installed. Not as easy and clear as it should be i.e. not just a point and click install like Eclipse with Java. I have a feeling not many people try installing it on Windows since the install documentation seems more geared towards the Linux where with many distro's gcc is already installed or a simple install.

IDE for embedded development

I do a lot of embedded development work in C. I'm looking for an IDE that can give me the same kind of features as Eclipse or Visual Studio. In the past I've used Vim, but I'm just not happy with the amount of work it is to use. Right now I'm trying to use Eclipse, but I can't get it to tag my code correctly. I also have access to Visual Studio and I might be able to get a SlickEdit license.
Can anyone recommend an editor? I'm looking for something that has
Some type of code completion
SVN support
Indexing/tagging of variable, function names etc
Support for interpreting code that may be #ifed out
Third party compiler support
Is there a way to generate tags on the code without having a make file or building the code with gcc?
I think you are going in the right direction (with Eclipse).
I think your question is why you can't tag you code,
however I know that Eclipse supports ctags (so it is not in any way impossible).
Eclipse is used as the basis for Embedded development IDEs from QNX Software Systems (who are also the primary contributors to the CDT), WindRiver, Mentor Graphic, and others, so it has some weight behind it. Green-Hills have an Eclipse plug-in for their toolchain.
Getting a seamless development environment from integrating your own tools is hard work however, but more viable than with other Text Editors because of the open plug-in architecture. It depends on the level of integration you want. Edit and build are straight-forward in most editors. Getting all of, edit, build, build/dependency-management (makefile generation), version control, source browsing and remote source level debug, is a bit of a task outside of an off-the-shelf suite from someone like one of the above vendors.
Many of the proprietary non-Eclipse based IDE's from the likes of Keil or IAR are looking a little old fashioned, and are seldom satisfactory as editors, although they often offer a lot of low level functionality in terms of target hardware and RTOS awareness and simulation.
I widely used Code::Blocks
code::blocks
This thing is so amazing,
If you have any binutils arm-elf, avr-elf, VC, mingw, installed You could use whatever you want, just chose toolset in properties of project, add some libraries etc...
I've used to add other tools like flash2000 for LPC processors, objdump etc. as an external command.
There are plenty of tools for this IDE which makes your cross compilation faster & easier.
And it's much better (read faster, smaller) than Eclipse + CDT and other stuff.
http://mbeddr.com/
Just released an IDE for embedded systems
I think if the question is about the choice of IDE, then the answer is Eclipse with CDT. Seasoned guys like the author of "TDD with Embedded C", James Grenning likes and uses it. See appendix of the mentioned book for more.
I have been working on embedded products for quite some time, mostly I use emacs with ctags (etags) and cscope. I have, of late, started using SlickEdit, it works just fine. However, I personally recommend you to get familiar with Vim/Emacs whatever editor you feel comfortable. The best thing about emacs/vim is that the flexibility to extend the functionality through plugin / whatever you call it. There are lot of third party plugins available to extend these editors. Of course, you need to invest some time to get started.
I'm currently using IAR's Workbench which is nice enough. I've used Eclipse with the CDT plug-in before (and probably will again at some point) and its code navigation worked just fine. I don't recall having to futz around too much to get it to index the code, but I was using GCC (which might be a factor) and I do recall having to restart Eclipse and/or manually tell it to reindex at times when it would seem to have some trouble navigating.
However, even though IAR's Workbench works well enough for most things, when I really want to have nice code navigation at my fingertips, I just load up Visual Studio with a makefile project that includes the source tree. The makefile commands simply call out to IAR's command line utilities to perform the build. This works fantastically well except for the debugging - I have to go to IAR Workbench for that. And when I'm in a debugging mode it's just easier to stay in IAR. But if I'm analyzing or cutting code, I'll move to VS for that.
So basically, you can generally use whatever IDE you prefer for much of your development as long as your toolchain for the target provides for being driven by the command line.
I've used Microscope (Vex Platform), EVC++, and the Maemo compilers+Nano for embedded programming. Most of the other tools you request are often found outside the IDE.
However, Netbeans can be configured to compile non-Java code. Its not just not as convenient. If you are developping with C++ you might be able to change the compiler used and you would be able to use the C++ plugin with ease.
Unless you're developing on the device, why not just use the IDE you usually use? You're gonna be cross-compiling anyway.
I used vim especially working with Linux/unix systems with cscope (for source cross-reference). Vim is nifty with latest versions supporting code-completion. Lot of plugins available.
Emacs is a power-horse, lot of customizing support.It support CVS/Clearcase AFAIK.
If you are willing to compromise on in-built compiler and SVN support, then I would say Source Insight is the best tool for your all other requirement.

Good IDE/compiler for simple C dll's

I'm trying to disassemble a C/C++ DLL, and have made some progress, but I would like to create my own C DLL with the same function the original exports, and compare disassemblies.
Visual Studio adds to much crap, and when I remove the crap and build my project, the expected DLL is missing.
I need a lightweight, preferably IDE, tool to edit and build very simple C libraries.
Take a look at Code::Blocks
I need a lightweight, preferably IDE, tool to edit and build very simple C libraries.
I have found that one of the best ways to do integrated C-only Win32 development is using the freely available Lcc Win32 Compiler which comes with a built-in IDE, including resource editor.
In fact, it is really very lightweight and can be run from a USB stick with some manual tweaking.
It's indeed a really small download of just 6 mb and you can even download an optional Win32 API help file which is really useful while doing development.
The compiler also comes with a C tutorial, as well as good user documentation detailing how to use the integrated Win32 resource editor "wedit", there's also an advanced manual about more complex development tasks.
Dev-C++ is a nice and fast IDE which works well with MingW.
But it's all been asked and answered before ...
MinGW adds its own crap. Install your VC express properly and save yourself a lifetime of trouble.
Btw, you don't need to use Visual Studio for its compiler or vice versa. The oddity of missing a build dll is probably because you are not looking at the right path.
If you are building C DLLs you really would benefit from its command line toolset and utilities, sdks, easy config etc. MS lock-in proprietary extensions are widely used (in context of you trying to emulate another dll), and last thing you need is chasing cross compiler issues..
GCC + any text editor such as VIM is a very light alternative.
For Windows Development, all you need is inside MinGW
Edit: If you are in dire need of an IDE you can also use the MinGW tools from Eclipse with the CDT plugin. Although it adds weight to the solution because of the installation of Eclipse, this is what I really use to build my small DLLs (JNI wrappers in my case).
You can setup your small and direct makefiles or let Eclipse do it automatically for you and concentrate only on the source files (*.h, *.c).
The best part of using this approach instead other IDE is that you do not need Eclipse to further build the DLL, since the underlying project files generated are standard ones directly usable by integrated dev inside MinGW (or any Unix distro) such as make, configure, automake, and so on.
I'll second the vote for Code::Blocks, it's what I use (despite having VS 2008 installed as well). It is very simple and lightweight but has basically all the features you'd expect out of an IDE. It comes with several predefined project templates for all kinds of C and C++ development, including templates for DLLs.
Download the version that includes MinGW and you get a complete lightweight IDE ready to start compiling. You can also easily configure it to use the Visual Studio compiler instead of gcc if you prefer.
try Open Watcom. A cross-platform product, well-supported by the community, lets you develop in DOS, Windows, OS/2 etc for a lot of platforms. Version 1.8 was released recently. Has a light-weight IDE indeed

Resources