Can someone help me out with a makefile for raspbian gcc ?

May 11, 2008
22,233
1,419
126
I am reading through all my own information resources and several web sites.
It is difficult to digest.
All that substituting and cryptic way of writing does not make it easy to understand what happens.
Anybody have some more information ?

I adapted my W-ARM program manager to support raspberry pi B+, 2 and 3 as well.
Now i am in the process of automating the creation of the make file.
My old template is optimized for embedded mcu's. As expected, it does not work with the way gcc compiles for raspbian. I am used of using a linker file, but i assume that this is not necessary for creating a program that runs under raspbian. But how do i get the gcc compiler to compile several modules with several object files and produce a single executable ?
Can someone explain this to me ?

Here are some screenshots of the W-ARM program manager :
It is still a work in progress, and i will add features as i get more confident under linux programming.
Sorry for the bad pictures, photobucket is at it again with downscaling the images to lower resolutions.
w-armV200A.jpg~original


w-armV200B.jpg~original
 
May 11, 2008
22,233
1,419
126
Yahoo.

Doing groceries for supper, and going to the local cafe for a cappuccino and a few strong drinks helped out.
I just reread the information i have and now it is all a lot clearer.
But some handy tips offered, i never turn down. :)
 
May 11, 2008
22,233
1,419
126
Well, i am getting there. This code compiles several modules into separate object files.
And then it combines all object files into a single executable.
I am not sure if all dependencies are checked correctly.
For safety i perform a clean project before i build a project.

It sure does not help that several examples on the internet have errors in them.

Does anybody know how i can get separate list files for each module ?
And if there is still some errors in it, please let me know.
The "hoppa" are there for sanity checks while creating the make file.
Make does not execute the make file instructions from top to bottom.

MCU flags is not working yet. I am working on it because the compiler does not understand the flag : -mcpu=arm1176jzf-s

And the pattern rule below :
% : %.o does not work and is ignored.


Code:
# Automatically generated by W-ARM for RPI !
# Do not edit this file with an editor that replaces tabs with spaces !
################################################################################

ECHO = echo.exe
CP = cp.exe
CC = arm-linux-gnueabihf-g++.exe
AS = arm-linux-gnueabihf-g++.exe -x assembler-with-cpp
CREATE_OUTPUT_FILE = arm-linux-gnueabihf-g++ -o RPITEST.exe

SRC = ./src/main.c ./src/file2.c
ASRC =
USR_INC_DIR = ./inc
USR_LIB_DIR =
################################################################################

INC_DIR  = $(patsubst %,-I%, $(USR_INC_DIR))
LIB_DIR  = $(patsubst %,-L%, $(USR_LIB_DIR))

# substitution reference OBJS = every module name, replace s with o and every c with o. .
OBJS = $(ASRC:.s=.o) $(SRC:.c=.o)

MCU_FLAGS = -mcpu=arm1176jzf-s
# optimisation level
OPT = -O1

# Eye candy.
begin:
    @$(ECHO)
    @$(ECHO) ---------------- begin ----------------
    @$(ECHO)

finished:
    @$(ECHO)
    @$(ECHO) Errors none.
    @$(ECHO)
    @$(ECHO) Output format =    executable
    @$(ECHO)
    @$(ECHO) Project name = RPITEST
    @$(ECHO)

end:
    @$(ECHO)
    @$(ECHO) ---------------- end ----------------
    @$(ECHO)

clean_message:
    @$(ECHO)
    @$(ECHO) Cleaning directories of current project : RPITEST
    @$(ECHO)

# Display compiler version information.
gccversion:
    @$(CC) --version

#Excute from here.
all: begin gccversion create move_files finished end

#copy files to new destination.
move_files:
#    @$(CP) ./src/*.lst ./list/
    @$(CP) ./src/*.o  ./object/
    @$(CP) *.exe ./output/
#    @-rm -f ./src/*.lst
    @-rm -f ./src/*.o
    @-rm -f *.exe

# create output file.
create: $(OBJS)
    @$(ECHO) hoppa5
    $(CREATE_OUTPUT_FILE) $(OBJS)
    @$(ECHO) hoppa1
# This pattern rule is performed for every single module. Separate object files are created for every c module.
%.o : %.c
    @$(ECHO) hoppa2
    $(CC) $(OPT) -c -I $(USR_INC_DIR) $< -o $@
    @$(ECHO) hoppa3

% : %.o
    $(CREATE_OUTPUT_FILE) $< $@
    @$(ECHO) hoppa4

clean: begin gccversion deletefiles clean_message end

deletefiles:
    @-rm -f $(OBJS)
    @-rm -f $(SRC:.c=.c.bak)
    @-rm -f $(SRC:.c=.lst)
    @-rm -f $(ASRC:.s=.s.bak)
    @-rm -f $(ASRC:.s=.lst)
    @-rm -fR .dep
    @-rm -f ./output/RPITEST.elf
    @-rm -f ./output/RPITEST.map
    @-rm -f ./output/RPITEST.
    @-rm -f ./list/*.lst
    @-rm -f ./object/*.o
    @-rm -f *.exe


# Listing of phony targets.
.PHONY : all begin finish end move_files clean_message sizebefore sizeafter gccversion build elf hex lss sym clean clean_list program

# *** EOF ***
 
May 11, 2008
22,233
1,419
126
Yahooo. The compiled exe file runs fine in the terminal in raspbian.

That part of the ideal makefile quest i seem to have solved. :)
 
May 11, 2008
22,233
1,419
126
This should be sufficient to start with.
If there is any error that i have not encounter yet, please let me know.
This will work with the gnutools cross compiler that lets a programmer write and compile under windows and the produced program will run under raspbian.
Now i can write a makefile generator that creates this file for my W-ARM project manager and adds options and source files depending on the project i am working on. :)
I do still have to add options for gdb.


Code:
# Automatically generated by W-ARM for RPI !
# Do not edit this file with an editor that replaces tabs with spaces !
################################################################################

ECHO = echo.exe
CP = cp.exe
CC = arm-linux-gnueabihf-g++.exe
AS = arm-linux-gnueabihf-g++.exe -x assembler-with-cpp
CREATE_OUTPUT_FILE = arm-linux-gnueabihf-g++ -o RPITEST.exe

SRC = ./src/main.c ./src/file2.c
ASRC =
USR_INC_DIR = ./inc
USR_LIB_DIR =
################################################################################

# substitution reference OBJS = every module name, replace s with o and every c with o. .
OBJS = $(ASRC:.s=.o) $(SRC:.c=.o)

### compiler flags.
# architecture optimizations
MCU_FLAGS = -mcpu=arm1176jzf-s
# compiler optimisation level
OPT = -O1

# compiler flags combined into a single variable.
CP_FLAGS = $(OPT) $(MCU_FLAGS) -Wall

# assembler flags combined into a single variable.
AS_FLAGS = $(OPT) $(MCU_FLAGS) -Wa

# Eye candy.
begin:
    @$(ECHO)
    @$(ECHO) ---------------- begin ----------------
    @$(ECHO)

finished:
    @$(ECHO)
    @$(ECHO) Errors none.
    @$(ECHO)
    @$(ECHO) Output format =    Raspbian executable
    @$(ECHO)
    @$(ECHO) Project name = RPITEST
    @$(ECHO)

end:
    @$(ECHO)
    @$(ECHO) ---------------- end ----------------
    @$(ECHO)

clean_message:
    @$(ECHO)
    @$(ECHO) Cleaning directories of current project : RPITEST
    @$(ECHO)

# Display compiler version information.
gccversion:
    @$(CC) --version

#Execute from here.
all: begin gccversion create move_files finished end

#copy files to new destination.
move_files:
#    @$(CP) ./src/*.lst ./list/
    @$(CP) ./src/*.o  ./object/
    @$(CP) *.exe ./output/
#    @-rm -f ./src/*.lst
    @-rm -f ./src/*.o
    @-rm -f *.exe

# create output file.
#Make searches for pattern rules first.
create: $(OBJS)
    $(CREATE_OUTPUT_FILE) $(OBJS)

# This pattern rule is performed for every single c module. One object file for every c module.
%.o : %.c
    $(CC) -c $(CP_FLAGS) -I $(USR_INC_DIR) $< -o $@

# This pattern rule is performed for every single assembly module. One object file for every assembly module.
%.o : %.s
    $(AS) -c $(AS_FLAGS) -I $(USR_INC_DIR) $< -o $@

clean: begin gccversion deletefiles clean_message end

deletefiles:
    @-rm -f $(OBJS)
    @-rm -f $(SRC:.c=.c.bak)
    @-rm -f $(SRC:.c=.lst)
    @-rm -f $(ASRC:.s=.s.bak)
    @-rm -f $(ASRC:.s=.lst)
    @-rm -fR .dep
    @-rm -f ./output/*.elf
    @-rm -f ./output/*.map
    @-rm -f ./output/*.exe
    @-rm -f ./list/*.lst
    @-rm -f ./object/*.o
    @-rm -f *.exe


# Listing of phony targets.
.PHONY : all begin finish end move_files clean_message sizebefore sizeafter gccversion build elf hex lss sym clean clean_list program

# *** EOF ***
 
Last edited:
May 11, 2008
22,233
1,419
126
The latest iteration, now it also produces list files for every module.
My W-ARM program manager, now generates this file automatically.
Of course, it adjusts the project name, compiler and assembler options and source files when needed.

.

Code:
# Automatically generated by W-ARM for RPI !
# Do not edit this file with an editor that replaces tabs with spaces !
################################################################################

ECHO = echo.exe
CP = cp.exe
CC = arm-linux-gnueabihf-g++.exe
AS = arm-linux-gnueabihf-g++.exe -x assembler-with-cpp
CREATE_OUTPUT_FILE = arm-linux-gnueabihf-g++ -o RPITEST.exe

SRC = ./src/file2.c ./src/main.c
ASRC =

USR_INC_DIR = ./inc
USR_LIB_DIR =
################################################################################

# substitution reference OBJS = every module name, replace s with o and every c with o.
OBJS = $(ASRC:.s=.o) $(SRC:.c=.o)

### compiler flags.
# architecture optimizations
MCU_FLAGS = -mcpu=arm1176jzf-s
# compiler optimisation level
OPT =-O1

# compiler flags combined into a single variable.
CP_FLAGS = $(OPT) $(MCU_FLAGS) -Wall -g -Wa,-adhln=$(<:.c=.lst)

# assembler flags combined into a single variable.
AS_FLAGS = $(OPT) $(MCU_FLAGS) -Wa

# Eye candy.
begin:
    @$(ECHO)
    @$(ECHO) ---------------- begin ----------------
    @$(ECHO)

finished:
    @$(ECHO)
    @$(ECHO) Errors none.
    @$(ECHO)
    @$(ECHO) Output format = Raspbian executable
    @$(ECHO)
    @$(ECHO) Project name = RPITEST
    @$(ECHO)

end:
    @$(ECHO)
    @$(ECHO) ---------------- end ----------------
    @$(ECHO)

clean_message:
    @$(ECHO)
    @$(ECHO) Cleaning directories of current project : RPITEST
    @$(ECHO)

# Display compiler version information.
gccversion:
    @$(CC) --version

#Execute from here.
all: begin gccversion create move_files finished end

#copy files to new destination.
move_files:
    @$(CP) ./src/*.lst ./list/
    @$(CP) ./src/*.o  ./object/
    @$(CP) *.exe ./output/
    @-rm -f ./src/*.lst
    @-rm -f ./src/*.o
    @-rm -f *.exe

# create output file.
#Make searches for pattern rules first.
create: $(OBJS)
    $(CREATE_OUTPUT_FILE) $(OBJS)

# This pattern rule is performed for every single c module. One object file for every c module.
%.o : %.c
    $(CC) -c $(CP_FLAGS) -I $(USR_INC_DIR) $< -o $@

# This pattern rule is performed for every single assembly module. One object file for every assembly module.
%.o : %.s
    $(AS) -c $(AS_FLAGS) -I $(USR_INC_DIR) $< -o $@

clean: begin gccversion deletefiles clean_message end

deletefiles:
    @-rm -f $(OBJS)
    @-rm -f $(SRC:.c=.c.bak)
    @-rm -f $(SRC:.c=.lst)
    @-rm -f $(ASRC:.s=.s.bak)
    @-rm -f $(ASRC:.s=.lst)
    @-rm -fR .dep
    @-rm -f ./output/*.map
    @-rm -f ./output/*.exe
    @-rm -f ./list/*.lst
    @-rm -f ./object/*.o


# Listing of phony targets.
.PHONY : all begin finish end move_files clean_message sizebefore sizeafter gccversion build elf hex lss sym clean clean_list program

# *** EOF ***
 
May 11, 2008
22,233
1,419
126
Added debugger options and i can now select depending on the arm architecture between floating point units : VFP, VFPv4 or NEON.
My W-ARM program manager is almost good enough to start some programming on the raspberry pi.
The debugger is enabled and the floating point unit.
I do not select an architecture because according to gcc documentation, selecting a cpu (-mcpu) makes the gcc compiler select the right architecture and optimizations.

One more tip, do not uses spaces " " or 0x20 in path names or project names, because make does not like that.

Code:
# Automatically generated by W-ARM for RPI !
# Do not edit this file with an editor that replaces tabs with spaces !
################################################################################

ECHO = echo.exe
CP = cp.exe
CC = arm-linux-gnueabihf-g++.exe
AS = arm-linux-gnueabihf-g++.exe -x assembler-with-cpp
CREATE_OUTPUT_FILE = arm-linux-gnueabihf-g++ -o RPITEST.exe

SRC = ./src/file2.c ./src/main.c
ASRC =

USR_INC_DIR = ./inc
USR_LIB_DIR =
################################################################################

# substitution reference OBJS = every module name, replace s with o and every c with o.
OBJS = $(ASRC:.s=.o) $(SRC:.c=.o)

### compiler flags.
# architecture optimizations
MCU_FLAGS = -mcpu=arm1176jzf-s
# compiler optimisation level
OPT =-O1

# debugger
DBGGR =-ggdb
# floating point unit
FLPU =-mfpu=vfp
# compiler flags combined into a single variable.
CP_FLAGS = $(DBGGR) $(FLPU) $(OPT) $(MCU_FLAGS) -Wall -g -Wa,-adhln=$(<:.c=.lst)

# assembler flags combined into a single variable.
AS_FLAGS = $(OPT) $(MCU_FLAGS) -Wa

# Eye candy.
begin:
    @$(ECHO)
    @$(ECHO) ---------------- begin ----------------
    @$(ECHO)

finished:
    @$(ECHO)
    @$(ECHO) Errors none.
    @$(ECHO)
    @$(ECHO) Output format = Raspbian executable
    @$(ECHO)
    @$(ECHO) Project name = RPITEST
    @$(ECHO)

end:
    @$(ECHO)
    @$(ECHO) ---------------- end ----------------
    @$(ECHO)

clean_message:
    @$(ECHO)
    @$(ECHO) Cleaning directories of current project : RPITEST
    @$(ECHO)

# Display compiler version information.
gccversion:
    @$(CC) --version

#Execute from here.
all: begin gccversion create move_files finished end

#copy files to new destination.
move_files:
    @$(CP) ./src/*.lst ./list/
    @$(CP) ./src/*.o  ./object/
    @$(CP) *.exe ./output/
    @-rm -f ./src/*.lst
    @-rm -f ./src/*.o
    @-rm -f *.exe

# create output file.
#Make searches for pattern rules first.
create: $(OBJS)
    $(CREATE_OUTPUT_FILE) $(OBJS)

# This pattern rule is performed for every single c module. One object file for every c module.
%.o : %.c
    $(CC) -c $(CP_FLAGS) -I $(USR_INC_DIR) $< -o $@

# This pattern rule is performed for every single assembly module. One object file for every assembly module.
%.o : %.s
    $(AS) -c $(AS_FLAGS) -I $(USR_INC_DIR) $< -o $@

clean: begin gccversion deletefiles clean_message end

deletefiles:
    @-rm -f $(OBJS)
    @-rm -f $(SRC:.c=.c.bak)
    @-rm -f $(SRC:.c=.lst)
    @-rm -f $(ASRC:.s=.s.bak)
    @-rm -f $(ASRC:.s=.lst)
    @-rm -fR .dep
    @-rm -f ./output/*.map
    @-rm -f ./output/*.exe
    @-rm -f ./list/*.lst
    @-rm -f ./object/*.o


# Listing of phony targets.
.PHONY : all begin finish end move_files clean_message sizebefore sizeafter gccversion build elf hex lss sym clean clean_list program

# *** EOF ***
 
May 11, 2008
22,233
1,419
126
Well, i added some visual eye candy.
I made it so, that the VFPv4 has a higher precendence than the NEON unit.
When selecting both, the VFPv4 is added to the make file. Because the NEON SIMD unit has less precision.

Now i have to figure out how to use external libraries, add that functionality to the W-ARM program manager to generate the proper make file.
And i will probably will have to use the linker for that. :grinning:
So generating a linkerfile aspecially for a raspberry pi program i will have to do too.

w-armV205B.jpg~original
 

SOFTengCOMPelec

Platinum Member
May 9, 2013
2,417
75
91
I've used GCC on Raspbian, and the Raspberry PI. But I was just doing some initial messing around, to help me see how good or bad, the Raspberry PI is. Overall I was impressed, and managed to get it to work, fairly easily and reliably.

I have NOT done any large projects on Raspbian, so I have not looked into doing make files on it, sorry.

I'm crossing my fingers and hoping that there is going to be a Raspberry PI 4, with a better/faster processor/(more)RAM and maybe better I/O, at the same/similar price. Hopefully coming out in the next 6/12 months.
But this is wild thoughts or wishful thinking on my part, and I DON'T have any specific information or rumors.

Apparently the development team, create new Raspberries, in secret, and try to keep quiet about what they are releasing, until the last second. I.e. No News until release of the new version(s). So a Raspberry PI 4 could suddenly pop up, with a number of improvements. Hence my crossed fingers.

EDIT:
Sorry about the HUGE font. I'm NOT getting on well with the new forum look/interface etc. I DON'T know why it came out like this. I also can't seem to easily fix it.
Presumably it remembered a font size increase, done a while ago.
tl;dr
I don't especially like the new forum look/feel etc, and it has effectively made me have little presence in this forum, these days. Sorry.

EDIT2:
I've made it less bad, now. I can't find where you change the font size, and return it back to normal. But at least I've managed to turn BOLD off.
 
Last edited:
May 11, 2008
22,233
1,419
126
Hi,

I have my RBPI-B3 ordered. It should arrive tomorrow.
I still have a few of the tiny zalman memory heatsinks laying around.

heatsinks_zalman_passive_vga.gif


I placed one onto the broadcom chip of my raspberry PI B+.
Tomorrow i will do the same for the B3. :grin:

We will have to see what happens if a RBPI 4 comes out. I am sure it will have another solid bump in speed.

Maybe later on i am going to make some more test programs to check it all out.
A floating point calculation in a loop should show the difference when disabling and enabling use of the floating point unit VFP.
It will also make me more aware of the unix programming environment.
I do feel sad that python and not c is the main programming language for the raspberry pi.
It means i will have to learn yet another language. Sigh...:cry:

The text editor where you can paste messages, also uses/copies additional data like font choice and bold.
I have the same problem, my solution is to just copy/paste all text into notepad, then copy/paste it again in the forum message editor to remove the additional features.
 

SOFTengCOMPelec

Platinum Member
May 9, 2013
2,417
75
91
Hi,

I have my RBPI-B3 ordered. It should arrive tomorrow.
I still have a few of the tiny zalman memory heatsinks laying around.

heatsinks_zalman_passive_vga.gif


I placed one onto the broadcom chip of my raspberry PI B+.
Tomorrow i will do the same for the B3. :grin:

We will have to see what happens if a RBPI 4 comes out. I am sure it will have another solid bump in speed.

Maybe later on i am going to make some more test programs to check it all out.
A floating point calculation in a loop should show the difference when disabling and enabling use of the floating point unit VFP.
It will also make me more aware of the unix programming environment.
I do feel sad that python and not c is the main programming language for the raspberry pi.
It means i will have to learn yet another language. Sigh...:cry:

The text editor where you can paste messages, also uses/copies additional data like font choice and bold.
I have the same problem, my solution is to just copy/paste all text into notepad, then copy/paste it again in the forum message editor to remove the additional features.

I had a look into Python, a long while ago. Once I found out that white space, can change what code it executes. I decided I hate that way of doing things, and abandoned learning the language. But if I ever need to or become interested again, I may have another bash at learning it.

Hopefully you can do most/all of what you want to do, in C/C++, and not need to learn other languages.

What you say about the floating point makes sense. Because the Neon is a SIMD type, which tend to skimp a bit on the finer accuracy. Which helps the SIMD achieve the highest throughput. The Intel is just the same.

I've not got any RPI 3's. Because I don't think it was available when I got mine (or the RPI3 was very new), and it is not better enough, to push me and go out and get RPI 3's.

I'm just hoping the RPI 4 will be more than a bit of a speed boost, which I can just ignore. E.g. More extensive/better I/O, better documented I/O with more MCU like features and bigger RAM size, and maybe extra I/O devices, such as Sata etc. (Maybe Sata as an expansion option).

Somehow it let me post this time, with the font etc, remaining ok. I'm somewhat disappointed with the forum software upgrade.

Compared to a PC, the RPI3's, low purchase cost, tiny size, very low power consumption, silence (no fans), love of Linux (it readily runs on RPI's), and I/O pins, which are sadly missing from most/all PCs. Makes it an attractive platform.

I haven't needed to heatsink any/my RPI(s) yet. But that is probably because I have only run stuff on one of the four cores. If I need to run on all four cores, for any length of time. I will also need to heatsink, which is probably a good idea anyway.

Digikey/Farnell etc only seem to sell MCUs which go up to about 216MHz/250MHz, ignoring some strange mass core cpus, which are probably problematic and rarely used in electronics projects. So the quad cores, 1.2 GHz is amazing, as you can't even (easily), buy raw mainstream MCU's from the big electronics suppliers, that do that kind of speed. The RPI3's I/O, small size and reasonable cost £30, means that one can consider putting it into electronics projects which need lots of MCU processing power.
 
Last edited:
May 11, 2008
22,233
1,419
126
Well, with the raspberry pi 3, some nice things should be possible.
Easiest thing is that it has bluetooth and wifi. The wifi capability allows for no longer having to plug in a cable. Which i like.

My raspberry pi 3 did not boot up with the jessie image from gnu tools. It did 4 short green flashes. To rule out that the rbpi 3 is defective i installed noobs on the 16GB sd card i have.
And the RBPI3 boots up. Thus it earned its little heatsink. :smile:
But NOOBS hangs forever on resizing the sd card. And the winflashtool from gnutools also reported errors while resizing the sd card.
I have mixed feelings at the moment. The SD HC [1] 16GB micro sd card i bought this weekend, seems to be fine under windows. But the noobs setup and the winflash tool both have problems resizing the sd card properly. Giving errors about the amount of space . The sd card is reporting 433915 clusters free and not 450299 clusters. Maybe a bad sd card. I do notice that windows 10 has this annoying feature of adding a system volume information folder on it. I wish i found a way to turn that off.

I still have to figure out what is wrong. I am going to format the sd card fully and see what happens, i hope the sd card formatter programs detects bad memory blocks if present.
I really can not imagine that the raspberry pi cannot handle 16GB sd cards.
 
May 11, 2008
22,233
1,419
126
Removing the system information folder is easy :
From the command wiundow cmd, go to the sd card. For example F: in my case.
type rmdir "System Volume Information" /s /q
And it is removed. :grin:
 
May 11, 2008
22,233
1,419
126
Interesting. Restarting my pc while logged in to the forum keeps me logged in. The old vbulletin forum would log me out as soon as i would close the browser. CUrrent forum setupt is not very safe.

Well, i found a n old class 4 sd card and now it all works. It is installing but extremely slow
The sd card i bought is broken. If only i can still find the receipt.
 
May 11, 2008
22,233
1,419
126
Yahooo. It is slow booting because the class 4 sd card, but rbpi 3 is up and running, and the "hello William" program i just compiled for the rbpi3 was executed fine.
SSH works. Tomorrow i will figure out how to use the wifi.
 

sdifox

No Lifer
Sep 30, 2005
99,387
17,556
126
I have a 32gb card on my rpi3. I did not use noob. Playing with python opencv and tesseract
 
May 11, 2008
22,233
1,419
126
I am sure, that there is something wrong with the sd card i bought.
And i am also sure that the raspberry pi 3 is not limited to 8GB sd cards.
I will order tonight a new one.
I am planning to play with opencv too.:grinning:
 

sdifox

No Lifer
Sep 30, 2005
99,387
17,556
126
I am sure, that there is something wrong with the sd card i bought.
And i am also sure that the raspberry pi 3 is not limited to 8GB sd cards.
I will order tonight a new one.
I am planning to play with opencv too.:grinning:

Dont write off your microsd yet. I imaged jessie using a windows sd imager. I forget the name, I'll update this post when I get on my machine. Noob has issues. I just did extend after installation of jessie finished.


EDIT: Etcher is the software I use https://www.etcher.io/

and I made an image of my rpi3 sd card after a very long and frustrating opencv installation.
 
Last edited:

SOFTengCOMPelec

Platinum Member
May 9, 2013
2,417
75
91
I am sure, that there is something wrong with the sd card i bought.
And i am also sure that the raspberry pi 3 is not limited to 8GB sd cards.
I will order tonight a new one.
I am planning to play with opencv too.:grinning:
My understanding is that you have to make sure that any SD cards you buy for the RPi, are suitable/compatible with it. Apparently, many are NOT.
I was very careful when I bought SD cards, for my RPi things.

I.e. A number of SD cards are known to have compatibility problems, so it is best to buy ones which are known to work with RPi's.

tl;dr
I don't think there is necessarily anything wrong with your SD card. Except that you need to use it with other things, as it might not be suitable for RPi's.
 
May 11, 2008
22,233
1,419
126
Interesting.
Thank you for the program.
I used winflashtool from this site : http://winflashtool.sysprogs.com/ to write the jessie image from gnutools.com.

I will have a try with etcher.io .


I was kind of wondering, my old class 4 is a standard sd card and the RBPI3 works fine with it albeit a bit slow. The card that the RBPI3 has problems with, is a 16GB SDHC I [1] card.
Can there be the issue ?
I ordered another from kingston : microSDHC Class 10 UHS-I Card 16GB.
Tomorrow it will be delivered at my work, tomorrow night i will know if it works.
I sure hope so. The write speed is 10MB/s and the maximum read speed is 45MB/s. I will have fast loading times if the kingston sd cards and the RBPI 3 get along with each other. :grinning:
 
May 11, 2008
22,233
1,419
126
Can it be that the cause is windows which constantly adds a system volume information folder ?
WIndows 10 starts to become annoying.
 
May 11, 2008
22,233
1,419
126
Well, what i read is that windows 7 does not create system volume information folder on external media. This behavior started since windows 8.1
I will fire up my vmware VM and see if what happens if i write the image from my vmware VM.
 
May 11, 2008
22,233
1,419
126
Too bad. The winflashtool does not run in my W XP Virtual machine.
I am thinking of installing a virtual machine with ubuntu. To test it out.
I will wait until tomorrow. If i have the same issue with the new sd card as well, i am suspecting windows 10 corrupting the sd card when adding the system volume information folder.
I will have to find out if that is really the case.