Tag Info

Hot answers tagged

12

My personal flavor for Linux Kernel development is Debian. Now for your points: As you probably guessed Ubuntu doesn't bring nothing new to kernel ease kernel development afaik, apart from what's already available in Debian. For e.g. make_kpkg is a Debian feat. and not Ubuntu. Here are some links to get you started on common Linux Kernel development tasks ...


11

Some points to keep in mind when developing, Use a standard build system Avoid hard coding library paths use tools like pkg-config to find the external packages instead. If your application has a GUI, use some frameworks like wxWidgets which can render native UI elements depending on where you run. Avoid creating dependencies with packages which won't ...


11

Unix is actually a trademarked name for that operating system and the core specification is here: http://www.unix.org/ . Linux is not Unix but only modeled after it in part. FreeBSD is a direct descendent of Unix though a lot has been changed since its inception. In order to be called Unix, you must apply for certification. Apple's OSX is certified Unix.


9

By lines of code, the answer is unequivocally Red Hat, as shown in last summer's Gnome code census. That means Red Hat Enterprise Linux, or else Fedora. But, that metric isn't necessarily completely fair. Other companies like Canonical contribute in other ways that are also valuable. There was a huge controversy with much yelling and flaming, and good and ...


8

I would suggest filing the bug report with the distribution's bug tracking system, if you are using their build. They can then escalate the bug report to the upstream maintainer, should it turn out that it exists in a vanilla build as well. The rationale behind this is simply that since many distributions apply patches of their own, unless you are certain ...


7

The two most common suggestions you will hear are vim and emacs. Both are good programmable text-editors that are used by many developers. I am an occasional, amature programmer and an emacs user so here are some of the pros of using emacs: Syntax Highlighting Smart Code Navigation & Editing: c-mode allows you to quickly move between various sections ...


7

Ok, turns out the answer was staring me in the face. Firstly, whether using our custom driver, or using the generic one that normally takes over the device, it's still all ultimately controlled by HID, and not USB. Previously I tried to unbind it from HID, which is not the way to go. HID has sub-drivers, the one that takes over devices that have no ...


7

Alternatively you can try to discuss your idea on IRC first: http://userbase.kde.org/IRC_Channels https://live.gnome.org/GnomeIrcChannels But for a broader audience you might really be better off to post on the mailinglists first: http://www.kde.org/support/mailinglists/ https://mail.gnome.org/ If you have a specific idea and are able to contribute ...


7

Linux is the kernel. You can download it at kernel.org. There are several boot loaders, but the best known one is Grub. To clarify the confusion, Mint is a Linux-based distribution. It is Linux, plus the GNU Compiler Collection, the X Window System, and 1,000s of other programs all rolled together into an operating system. Perhaps before developing your ...


6

I'm a pretty hard-core Emacs user but still, for developing C++ I prefer Qt-Creator (don't be afraid because of the name, it works well for non-QT-projects) as Emacs lacks good project support and stable code completion The pros: Can import CMakeFiles.txt into an automatically created project Best code completion you'll find on Linux, sometimes even ...


6

You want to start with FUSE -- all it requires is your implementation of system calls like open and unlink. A tutorial, written using the Python bindings, is available at the FUSE Wiki.


6

I think you are looking for Ksplice. I haven't really followed the technology so I'm not sure how freely available the how-to information is but they certainly have freely available support for some Fedora and Ubuntu versions.


5

As mentioned, Red Hat develops more of GNOME than any other company. Since Fedora is a bleeding edge sort of distribution, it happens a lot that it receives GNOME updates real fast, many times even before tarball releases (priorities). So if you are a GNOME developer, chances are you want to be running the development branch of Fedora. Alternatively, and if ...


5

I know you said you don't want funky hotkeys, but from what you want it really sounds like a feature list of GVIM. Maybe it's worth using vimtutor to learn why (G)vim works like it does. I was scared too at first but now I wouldn't wanna go back.


5

I don't know about all of your requirements, but two projects you should check out and try is Geany and SciTE. Both of these projects sports lightweight, yet functional, editors that keep things simple.


5

A unified SDK implies a single source for all the core libraries. That just isn't the way open source operating systems work. Bits and pieces come from all over, and they're all separately documented. EDIT: If paper's not a problem for you, the closest thing to what you're asking for is Advanced Programming in the Unix Environment 2/e by Stevens and Rago. ...


5

For GNOME, you can check out devhelp or help.gnome.org. But as everyone has already stated, there is no single SDK for "Linux". You need to have some idea of what you want before we can recommend specific developer resources.


5

There seems to be some activity on http://lists.gnu.org/archive/html/pdf-devel/. Also, see http://gnupdf.org/manuals/gnupdf-hg-manual/html_node/Information-for-Newcomers.html#Information-for-Newcomers for information about cloning their repository. Specifically do $ bzr branch bzr://bzr.savannah.gnu.org/pdf/libgnupdf/trunk libgnupdf Bazaar is a ...


5

The process is clearly defined in the kernel source code. system1:/usr/src/linux/Documentation # ll SubmittingPatches -rw-r--r-- 1 root root 28473 Dec 2 2009 SubmittingPatches They go over every step you have to take. It looks like email is the only way. I would recommend getting another free account or simply mail it from your laptop using nail | mail ...


5

If learning, then I wouldn't start with a modern/complete/working/real-world OS like Linux. Bookmark that, though & come back to it in a second pass. To begin with, there's too much going on there to for learning kernel internals. (There's a reason we begin C programming with "helloworld.c" and not "gcc.c"). Rather, start with a for-educational-purposes ...


5

On the architecture side, you need more than an instruction set and a computer architecture. You also need to have: A CPU in some form (emulator, FPGA, silicon…). A way of booting that processor: a way of getting the operating system into the memory that the processor runs at boot time. Most processors boot to code stored in ROM which either switches on ...


5

If you want lock stats on your kernel, you have to recompile with CONFIG_LOCK_STATS enabled. Look into Documentation/lockstat.txt in the kernel tree for more documentation.


4

In addition to mentioned by others I would advice to look at: Anjuta - Gnome IDE KDevelop - KDE IDE


4

Before reading the other responses, my guess was that pid_t exists for portability reasons. In the Good Ol' Days, some Unixes had short PIDs, others had int PIDs, so you define a system-specific type for PID. I can't recall any pain involved in using int for a file descriptor, even in the very early days of 64-bitness.


4

If you're trying to accomplish a user-space task by directly modifying the operating system's kernel, you're doing something wrong 99.999% of the times. For cases where a direct interaction with kernel's subsystems and data structures is required, people invented the loadable kernel modules. I think you have a misunderstood the terms kernel and shell. To ...


4

Update 1 I believe the feature you are looking for is actually X Window multi-pointer. From ArchLinux Multi-Pointer X Introduction: Xorg servers starting from version 1.7 have a feature called "multi-pointer". Basically it allows to have multiple mouse cursors (each with its own keyboard focus) on the screen and control them with separate ...


4

Yes you should be safe to remove any *-dev packages, since these are typically the header files needed when compiling against a give packaged library. Remember you can always list the contents of a given package using dpkg -L <pkg> if you have any doubts as to what's inside it. Example $ dpkg -L libgdbm-dev | head -10 /. /usr /usr/include ...


3

Currently there are 3 modulesets for GNOME 3: GNOME Core dependencies (e.g GLib, GTK+, D-Bus); In a sense, this can can be called GNOME platform. GNOME Core (e.g. Nautilus, gnome-power-manager, gnome-session) GNOME Featured Apps (e.g. Anjuta, Evolution, gedit) Here's modules that depend on Python, directly or not: EOG, the image viewer is part of GNOME ...


3

Just my 2c, but I have had less headaches with applications that either come with packages in the official repositories or that are compiled from source. Applications that are distributed as 3rd party binaries tend to suffer from some dependency issues. I will usually need to track these down and resolve them manually. So, if I were to release a Linux app, ...


3

Eclipse is a good choice, because one IDE to many language. In addition you can install vim plugin, etc. How to install c/c++: Menu: Help->Install New Software->Add http://download.eclipse.org/tools/cdt/releases/galileo http://www.eclipse.org/cdt/ In addition, you should see: http://www.eclipse.org/linuxtools/downloads.php



Only top voted, non community-wiki answers of a minimum length are eligible