How to use C file in Ubuntu - c

I'm trying to get this https://github.com/TheCacophonyProject/voice_scrubbing working on my ubuntu. I've managed to 'make' the thing using
make
Go me!
But I don't know how to insert any files into it.
I'm pretty sure the app takes a .wav file and edits that file inplace.
So could I get some help with doing this?
All the best
Edit:
Here's my directory contents. I want to find a way of using that mute_low(.exe) file:
notebook#heyfinn:~/Cacophony/voice_scrubbing$ ls
Makefile mute_low.c README.md wavefile.h
mute_low mute_low.o wavefile.c wavefile.o
And here's the file contents on Jupyter notebooks to explain why I think there is an .exe file there:

On Linux you do not have .exe files. But instead files are marked with execute permission.
If you look at your Makefile, you can see it defines the TARGET=mute_low.
This is your executable.
You can run it as
./mute_low # in the same directory where you did make
If for some reason it doesn't execute and you get errors like
./mute_low - Not an executable
you can make it an executable as
chmod +x mute_low
Finally it would need the file name of the .wav file and you can provide that as
./mute_low filename.wav

Related

How to Use make to compile c file on codespace

make CLI keyword is failing to compile my c programming file.
There seems to be 2 different issues there:
1- make seems to not be present in your workspace. Please try running rebuild50 to rebuild it. You'll not lose your files.
2- You're issueing the command from outside the correct folder.
Please note that in hello folder there are two distinct files (hello and hello.c), but the output from your ls command shows only one result (which is the folder, not the files).
Please run cd hello first to get into the folder containing the file to make.

Cannot access header files in separate folders

I'm pretty new to coding in c, but I have sample code that I imported into the eclipse console. However, when I go to build the project I run into various errors. All of these errors are because a code that I have in one folder is not able to access code in another folder. For example my main function is located in project>src>main.c but is not able to access the project.h file located in project>headers>project.h. I am also no able to access code directly above in the hierarchy either. For example, my project>src>compiler>comp.h is not able to access project>src>calc.h file. Is there a way I can instruct the code to find it? I have tried using #include "../src/calc.h" in my comp.h file but I still get the error message "No such file or directory." Any suggestions would be very helpful.
Header files can be tricky to include, it depends where you are compiling.
Try to compile like this :
gcc -o myBinary <your .c files> -I./your/path/to.h (it will link your .h files at the compilation state)
The best idea would be to create a Makefile and configure it to make your header files works in every files of your project, have a look at How to create a Makefile.

how to run existing C file onto Xcode have

I'm new on Xcode.
I need to make some files run:
they are the implementation of a model that I'd like to apply on my dataset, but at the moment I cannot use them.
Inside the folder there are:
main.cc, Makefile, README
and other files with extentions
.cc,
.c,
.h,
.yld,
.lt
How do I put them on Xcode? And how can I run them from the Terminal?
I have:
OS X El Capitan;
Xcode Version 7.3.1 (7D1014)
Thank you in advance for your help! :)
You can set your build target to be the makefile, but, this will not give you all of Xcode's benifits as an IDE. As far as I know, importing a Makefile based project into Xcode is not easy.
Here is a blog post detailing one example.
You could create a new project with your desired language, and add files to it.
As for how to run from terminal, you cd to project directory, and then you type make. Then you find name of the program created, and you type ./[PROGRAM] to execute it.

Running an executable file through Cygwin

I've recently opened up Head First C and I was having an issue with one of the programs. (I'm using Windows)
I saved a cards.c file in my Documents folder under a folder named Practice and navigated to that folder within Cygwin
I compiled using gcc cards.c -o cards and it compiled with no errors, so I tried to type cards to run the exe file but I got -bash: cards: command not found.
I read through several stackoverflow answers and tried multiple suggestions such as ./a exe, /a exe, cards.exe, a cards, etc/bin/cards and more, but I could only run the file with /cygdrive/c/Me/Documents/Practice/cards.exe
I'm somewhat new with Cygwin so I'm wondering if there is something I missed or a better way to go about this? I'm really looking to learn. On a side note I'm wondering if copying cygwin1.dll from the cygwin bin file to the folder containing the exe file will help, but I don't know how to access the bin file to copy it.
the output file will be named cards, not cards.exe
there are a few different ways to execute that file, here are some of those ways.
a) . cards <-- notice the leading '. '
b) at the cygwin command line in the directory where 'cards' is located:
chmod cards 777
cards
c) from the directory where cards is located:
./cards
Suggest the b) method since it is a permanent fix

Help with C Program Executable - Linux

I just recently made the move to Linux, and now looking to program on it as well.
However, for some reason I cannot get an executable to work.
Here's what I've done:
Downloaded Code::Blocks
Made a new Console Project in Workspace 1 with C source.
Added a getchar() before return(0);
Ran and Compiled - Which works perfectly INSIDE Code::Blocks
Went to the bin/release folder in which the file is saved, tried double clicking, right clicking and selecting: open, open with, tried using terminal to run the name of my program. I copied the folder URL, and then name of the file.. I just can't seem to get the created file to execute!
In windows it made a .exe, I know there is no ending (?) in linux. (Could be wrong).
I'm currently running Ubuntu 11.04.
Most Linux distributions don't include the current directory in the PATH variable that determines where to search for executables. Try opening a terminal, changing to the bin/release directory and explicitly qualifying your executable for the current directory:
./myprogram
This is in contrast to Windows, where you can simply type "myprogram.exe".
You might need to grant your program permission to run as an executable:
sudo chmod +x yourProgram
In the terminal emulator, go to (cd) the folder where the executable is created.
Type ./programname
Where programname is the name of the executable file
(./ tells the shell to look in the current directory for the program to run)

Resources