Package Details: f2c 20230428-1

Git Clone URL: https://aur.archlinux.org/f2c.git (read-only, click to copy)
Package Base: f2c
Description: Fortran to C code translator
Upstream URL: https://www.netlib.org/f2c
Keywords: transpiler
Licenses: custom
Submitter: None
Maintainer: a.kudelin
Last Packager: a.kudelin
Votes: 65
Popularity: 0.001027
First Submitted: 2009-10-11 19:13 (UTC)
Last Updated: 2023-07-23 15:13 (UTC)

Latest Comments

« First ‹ Previous 1 2 3 4 5 6 7 .. 9 Next › Last »

a.kudelin commented on 2020-07-22 20:26 (UTC)

Developers don't distinguish between versions, so you have to remove old files before running makepkg.

snostorm commented on 2020-07-22 10:34 (UTC)

Just FYI I was getting this Error but manual download of src.tgz worked???

~/Development/Arch-SRCpackages/f2c]makepkg -si ==> Making package: f2c 20200425-2 (Wed 22 Jul 2020 11:25:44 AM BST) ==> Checking runtime dependencies... ==> Checking buildtime dependencies... ==> Retrieving sources... -> Found src.tgz -> Found libf2c.zip ==> Validating source files with sha256sums... src.tgz ... FAILED libf2c.zip ... Passed

bartus commented on 2020-05-26 19:41 (UTC)

Add manual page for f2c

git am < <(curl -s http://ix.io/2nr2)

DasMoeh commented on 2019-12-23 16:09 (UTC)

Thank you! I'll try that.

a.kudelin commented on 2019-12-22 15:15 (UTC) (edited on 2019-12-22 15:33 (UTC) by a.kudelin)

The best solution I found is to create a dummy .c file, call it test.c, for example.

$ cat test.c
#include "f2c.h"

int MAIN__(void) { return 0; }

Linking it along with your main.cpp gives the desired result:

$ ld -o program main.o test.o -llevmar

Another solution is to remove all MAIN__ instances from main.c file of libf2c, adding following line to prepare() section of PKGBUILD: sed -i "/MAIN__/d" libf2c/main.c, but I actually don't know if such a dirty hack can break something...

DasMoeh commented on 2019-12-22 03:10 (UTC) (edited on 2019-12-22 03:11 (UTC) by DasMoeh)

My code is not (yet) open source but maybe this small example will help:

$cat main.cpp

int main ( int argc, char *argv[] ) { return(0); }

$g++ main.cpp -llevmar

/usr/bin/ld: /usr/lib/libf2c.so: undefined reference to `MAIN__'

$ g++ main.cpp -llapack

$

What am i missing?

a.kudelin commented on 2019-12-21 15:41 (UTC) (edited on 2019-12-22 15:19 (UTC) by a.kudelin)

Could you give a link if we're talking about some sort of open source project? In the case of your own code, consider addition of int main(), it's mandatory for C/C++.
UPD. The above statement is wrong, because libf2c requires MAIN__ function, not main.

DasMoeh commented on 2019-12-20 20:27 (UTC)

My code links against levmar (https://aur.archlinux.org/packages/levmar/) which has f2c as dependency.

a.kudelin commented on 2019-12-20 19:58 (UTC)

Your code lacks the entry point, you must define main function to link the program successfully. Please, give me more details to look into.